Eneboo - Documentación para desarrolladores
|
00001 /*------------------------------------------------------------------------- 00002 * 00003 * postgres_ext.h 00004 * 00005 * This file contains declarations of things that are visible everywhere 00006 * in PostgreSQL *and* are visible to clients of frontend interface libraries. 00007 * For example, the Oid type is part of the API of libpq and other libraries. 00008 * 00009 * Declarations which are specific to a particular interface should 00010 * go in the header file for that interface (such as libpq-fe.h). This 00011 * file is only for fundamental Postgres declarations. 00012 * 00013 * User-written C functions don't count as "external to Postgres." 00014 * Those function much as local modifications to the backend itself, and 00015 * use header files that are otherwise internal to Postgres to interface 00016 * with the backend. 00017 * 00018 * $PostgreSQL: pgsql/src/include/postgres_ext.h,v 1.16 2004/08/29 05:06:55 momjian Exp $ 00019 * 00020 *------------------------------------------------------------------------- 00021 */ 00022 00023 #ifndef POSTGRES_EXT_H 00024 #define POSTGRES_EXT_H 00025 00026 /* 00027 * Object ID is a fundamental type in Postgres. 00028 */ 00029 typedef unsigned int Oid; 00030 00031 #ifdef __cplusplus 00032 #define InvalidOid (Oid(0)) 00033 #else 00034 #define InvalidOid ((Oid) 0) 00035 #endif 00036 00037 #define OID_MAX UINT_MAX 00038 /* you will need to include <limits.h> to use the above #define */ 00039 00040 00041 /* 00042 * NAMEDATALEN is the max length for system identifiers (e.g. table names, 00043 * attribute names, function names, etc). It must be a multiple of 00044 * sizeof(int) (typically 4). 00045 * 00046 * NOTE that databases with different NAMEDATALEN's cannot interoperate! 00047 */ 00048 #define NAMEDATALEN 64 00049 00050 00051 /* 00052 * Identifiers of error message fields. Kept here to keep common 00053 * between frontend and backend, and also to export them to libpq 00054 * applications. 00055 */ 00056 #define PG_DIAG_SEVERITY 'S' 00057 #define PG_DIAG_SQLSTATE 'C' 00058 #define PG_DIAG_MESSAGE_PRIMARY 'M' 00059 #define PG_DIAG_MESSAGE_DETAIL 'D' 00060 #define PG_DIAG_MESSAGE_HINT 'H' 00061 #define PG_DIAG_STATEMENT_POSITION 'P' 00062 #define PG_DIAG_INTERNAL_POSITION 'p' 00063 #define PG_DIAG_INTERNAL_QUERY 'q' 00064 #define PG_DIAG_CONTEXT 'W' 00065 #define PG_DIAG_SOURCE_FILE 'F' 00066 #define PG_DIAG_SOURCE_LINE 'L' 00067 #define PG_DIAG_SOURCE_FUNCTION 'R' 00068 00069 #endif