1 /*------------------------------------------------------------------------- 2 * 3 * bytea.h 4 * Declarations for BYTEA data type support. 5 * 6 * 7 * Portions Copyright (c) 1996-2016, PostgreSQL Global Development Group 8 * Portions Copyright (c) 1994, Regents of the University of California 9 * 10 * src/include/utils/bytea.h 11 * 12 *------------------------------------------------------------------------- 13 */ 14 #ifndef BYTEA_H 15 #define BYTEA_H 16 17 #include "fmgr.h" 18 19 20 typedef enum 21 { 22 BYTEA_OUTPUT_ESCAPE, 23 BYTEA_OUTPUT_HEX 24 } ByteaOutputType; 25 26 extern int bytea_output; /* ByteaOutputType, but int for GUC enum */ 27 28 /* functions are in utils/adt/varlena.c */ 29 extern Datum byteain(PG_FUNCTION_ARGS); 30 extern Datum byteaout(PG_FUNCTION_ARGS); 31 extern Datum bytearecv(PG_FUNCTION_ARGS); 32 extern Datum byteasend(PG_FUNCTION_ARGS); 33 extern Datum byteaoctetlen(PG_FUNCTION_ARGS); 34 extern Datum byteaGetByte(PG_FUNCTION_ARGS); 35 extern Datum byteaGetBit(PG_FUNCTION_ARGS); 36 extern Datum byteaSetByte(PG_FUNCTION_ARGS); 37 extern Datum byteaSetBit(PG_FUNCTION_ARGS); 38 extern Datum byteaeq(PG_FUNCTION_ARGS); 39 extern Datum byteane(PG_FUNCTION_ARGS); 40 extern Datum bytealt(PG_FUNCTION_ARGS); 41 extern Datum byteale(PG_FUNCTION_ARGS); 42 extern Datum byteagt(PG_FUNCTION_ARGS); 43 extern Datum byteage(PG_FUNCTION_ARGS); 44 extern Datum byteacmp(PG_FUNCTION_ARGS); 45 extern Datum bytea_sortsupport(PG_FUNCTION_ARGS); 46 extern Datum byteacat(PG_FUNCTION_ARGS); 47 extern Datum byteapos(PG_FUNCTION_ARGS); 48 extern Datum bytea_substr(PG_FUNCTION_ARGS); 49 extern Datum bytea_substr_no_len(PG_FUNCTION_ARGS); 50 extern Datum byteaoverlay(PG_FUNCTION_ARGS); 51 extern Datum byteaoverlay_no_len(PG_FUNCTION_ARGS); 52 53 #endif /* BYTEA_H */ 54