1
0
mirror of https://github.com/postgres/postgres.git synced 2025-06-14 18:42:34 +03:00

Convert array_map to use new fmgr interface.

This commit is contained in:
Tom Lane
2000-05-29 21:02:32 +00:00
parent 747527e545
commit 6ed00fee53
3 changed files with 101 additions and 64 deletions

View File

@ -1,7 +1,7 @@
/*-------------------------------------------------------------------------
*
* array.h
* Utilities for the new array code. Contain prototypes from the
* Utilities for the new array code. Contains prototypes from the
* following files:
* utils/adt/arrayfuncs.c
* utils/adt/arrayutils.c
@ -11,18 +11,19 @@
* Portions Copyright (c) 1996-2000, PostgreSQL, Inc
* Portions Copyright (c) 1994, Regents of the University of California
*
* $Id: array.h,v 1.23 2000/04/12 17:16:54 momjian Exp $
* $Id: array.h,v 1.24 2000/05/29 21:02:32 tgl Exp $
*
* NOTES
* XXX the data array should be LONGALIGN'd -- notice that the array
* XXX the data array should be MAXALIGN'd -- notice that the array
* allocation code does not allocate the extra space required for this,
* even though the array-packing code does the LONGALIGNs.
* even though the array-packing code does the MAXALIGNs.
*
*-------------------------------------------------------------------------
*/
#ifndef ARRAY_H
#define ARRAY_H
#include "fmgr.h"
#include "utils/memutils.h"
typedef struct
@ -123,9 +124,7 @@ extern char *array_set(ArrayType *array, int n, int *indx, char *dataPtr,
extern char *array_assgn(ArrayType *array, int n, int *upperIndx,
int *lowerIndx, ArrayType *newArr, int reftype,
int len, bool *isNull);
extern ArrayType *array_map(ArrayType *v, Oid type,
char *(*fn) (),
Oid retType, int nargs,...);
extern Datum array_map(FunctionCallInfo fcinfo, Oid inpType, Oid retType);
extern int array_eq(ArrayType *array1, ArrayType *array2);
extern int _LOtransfer(char **destfd, int size, int nitems, char **srcfd,
int isSrcLO, int isDestLO);