diff options
Diffstat (limited to 'contrib/bit/postgres.h')
-rw-r--r-- | contrib/bit/postgres.h | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/contrib/bit/postgres.h b/contrib/bit/postgres.h new file mode 100644 index 00000000000..44da5d7ac61 --- /dev/null +++ b/contrib/bit/postgres.h @@ -0,0 +1,74 @@ +#ifndef POSTGRES_H +#define POSTGRES_H + +#include <stdio.h> + +typedef char bool; +typedef signed char int8; +typedef signed short int16; +typedef signed int int32; + +/*#define NULL ((void *) 0)*/ +#define Min(x, y) ((x) < (y) ? (x) : (y)) +#define Max(x, y) ((x) > (y) ? (x) : (y)) +#define PointerIsValid(pointer) (bool)((void*)(pointer) != NULL) + + +typedef unsigned int Oid; +typedef int16 int2; +typedef int32 int4; +typedef float float4; +typedef double float8; +typedef unsigned char uint8; /* == 8 bits */ +typedef unsigned short uint16; /* == 16 bits */ +typedef unsigned int uint32; /* == 32 bits */ +typedef uint8 bits8; /* >= 8 bits */ +typedef uint16 bits16; /* >= 16 bits */ +typedef uint32 bits32; /* >= 32 bits */ + + +typedef int4 aclitem; + +#define InvalidOid 0 +#define OidIsValid(objectId) ((bool) (objectId != InvalidOid)) + +/* unfortunately, both regproc and RegProcedure are used */ +typedef Oid regproc; +typedef Oid RegProcedure; + +typedef char *((*func_ptr) ()); + + +#define RegProcedureIsValid(p) OidIsValid(p) + +/* ---------------------------------------------------------------- + * Section 2: variable length and array types + * ---------------------------------------------------------------- + */ +/* ---------------- + * struct varlena + * ---------------- + */ +struct varlena +{ + int32 vl_len; + char vl_dat[1]; +}; + +#define VARSIZE(PTR) (((struct varlena *)(PTR))->vl_len) +#define VARDATA(PTR) (((struct varlena *)(PTR))->vl_dat) +#define VARHDRSZ sizeof(int32) + +typedef struct varlena bytea; +typedef struct varlena text; + +typedef int2 int28[8]; +typedef Oid oid8[8]; + +#define ERROR stderr +#define elog fprintf + +#define MaxAttrSize 10000 + +#define palloc malloc +#endif |