aboutsummaryrefslogtreecommitdiff
path: root/src/include/utils/array.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/include/utils/array.h')
-rw-r--r--src/include/utils/array.h14
1 files changed, 12 insertions, 2 deletions
diff --git a/src/include/utils/array.h b/src/include/utils/array.h
index f37a8e117e7..1c0f1090214 100644
--- a/src/include/utils/array.h
+++ b/src/include/utils/array.h
@@ -10,7 +10,7 @@
* Portions Copyright (c) 1996-2003, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: array.h,v 1.45 2003/08/08 21:42:55 momjian Exp $
+ * $Id: array.h,v 1.45.4.1 2005/03/24 21:51:04 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -65,6 +65,15 @@ typedef struct ArrayMetaState
} ArrayMetaState;
/*
+ * private state needed by array_map (here because caller must provide it)
+ */
+typedef struct ArrayMapState
+{
+ ArrayMetaState inp_extra;
+ ArrayMetaState ret_extra;
+} ArrayMapState;
+
+/*
* fmgr macros for array objects
*/
#define DatumGetArrayTypeP(X) ((ArrayType *) PG_DETOAST_DATUM(X))
@@ -146,7 +155,8 @@ extern ArrayType *array_set_slice(ArrayType *array, int nSubscripts,
int arraylen, int elmlen, bool elmbyval, char elmalign,
bool *isNull);
-extern Datum array_map(FunctionCallInfo fcinfo, Oid inpType, Oid retType);
+extern Datum array_map(FunctionCallInfo fcinfo, Oid inpType, Oid retType,
+ ArrayMapState *amstate);
extern ArrayType *construct_array(Datum *elems, int nelems,
Oid elmtype,