aboutsummaryrefslogtreecommitdiff
path: root/src/include/utils/array.h
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2015-12-22 21:05:16 -0500
committerTom Lane <tgl@sss.pgh.pa.us>2015-12-22 21:05:29 -0500
commit6efbded6e4672c597a6f0dc0f09263e7db7369ff (patch)
tree2ee78e250058cdbc4021f24c6ae0bf4e92098c4b /src/include/utils/array.h
parent0ba3f3bc65f1176250b942e14fd9e4975a5d3913 (diff)
downloadpostgresql-6efbded6e4672c597a6f0dc0f09263e7db7369ff.tar.gz
postgresql-6efbded6e4672c597a6f0dc0f09263e7db7369ff.zip
Allow omitting one or both boundaries in an array slice specifier.
Omitted boundaries represent the upper or lower limit of the corresponding array subscript. This allows simpler specification of many common use-cases. (Revised version of commit 9246af6799819847faa33baf441251003acbb8fe) YUriy Zhuravlev
Diffstat (limited to 'src/include/utils/array.h')
-rw-r--r--src/include/utils/array.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/include/utils/array.h b/src/include/utils/array.h
index c25b80d272a..716e75637b0 100644
--- a/src/include/utils/array.h
+++ b/src/include/utils/array.h
@@ -377,9 +377,11 @@ extern Datum array_set_element(Datum arraydatum, int nSubscripts, int *indx,
int arraytyplen, int elmlen, bool elmbyval, char elmalign);
extern Datum array_get_slice(Datum arraydatum, int nSubscripts,
int *upperIndx, int *lowerIndx,
+ bool *upperProvided, bool *lowerProvided,
int arraytyplen, int elmlen, bool elmbyval, char elmalign);
extern Datum array_set_slice(Datum arraydatum, int nSubscripts,
int *upperIndx, int *lowerIndx,
+ bool *upperProvided, bool *lowerProvided,
Datum srcArrayDatum, bool isNull,
int arraytyplen, int elmlen, bool elmbyval, char elmalign);