/* See the copyright notice (COPYRIGHT) in this directory. */

/*
 * NAME
 *	pg_types.h
 *
 * DESCRIPTION
 * 	Postgres builtin data types; see the Postgres reference 
 *	for specific descriptions.
 *
 *	Get a list of all types with this query:
 *	retrieve (pg_type.oid, pg_type.typname)
 *
 * SccsID @(#)pg_types.h	16.1 8/3/93
 */

typedef int pgType;

		/* Postgres types are > 10, right? live dangerously .... */
#define	PG_CHAR2			1	/* s2k type */
#define	PG_CHAR2_ARRAY			2	/* s2k type */
#define	PG_CHAR4			3	/* s2k type */
#define	PG_CHAR4_ARRAY			4	/* s2k type */
#define	PG_CHAR8			5	/* s2k type */
#define	PG_CHAR8_ARRAY			6	/* s2k type */
#define	PG_BOOL				16	/* bool   */
#define	PG_BOOL_ARRAY			1000
#define	PG_BYTEA			17	/* bytea  */
#define	PG_BYTEA_ARRAY			1001	
#define	PG_CHAR				18	/* char    */
#define	PG_CHAR_ARRAY			1002
#define	PG_CHAR16			19	/* char16  */
#define	PG_CHAR16_ARRAY			1003
#define	PG_DT				20	/* dt */
#define	PG_DT_ARRAY			1004
#define	PG_INT2				21	/* int2     */
#define	PG_INT2_ARRAY			1005
#define	PG_INT28			22	/* int28    */
#define	PG_INT28_ARRAY			1006
#define	PG_INT4				23	/* int4     */
#define	PG_INT4_ARRAY			1007
#define	PG_REGPROC			24	/* regproc  */
#define	PG_REGPROC_ARRAY		1008
#define	PG_TEXT				25	/* text     */
#define	PG_TEXT_ARRAY			1009
#define	PG_OID				26	/* oid      */
#define	PG_OID_ARRAY			1028
#define	PG_TID				27	/* tid      */
#define	PG_TID_ARRAY			1010
#define	PG_XID				28	/* xid      */
#define	PG_XID_ARRAY			1011
#define	PG_CID				29	/* cid      */
#define	PG_CID_ARRAY			1012
#define	PG_OID8				30	/* oid8     */
#define	PG_OID8_ARRAY			1013
#define	PG_SMGR				210	/* smgr     */
#define	PG_POINT			600	/* point    */
#define	PG_POINT_ARRAY			1017
#define	PG_LSEG				601	/* lseg     */
#define	PG_LSEG_ARRAY			1018
#define	PG_PATH				602	/* path     */
#define	PG_PATH_ARRAY			1019
#define	PG_BOX				603	/* box      */
#define	PG_BOX_ARRAY			1020
#define	PG_POLYGON			604	/* polygon  */
#define	PG_POLYGON_ARRAY		1027
#define	PG_FILENAME			605	/* filename (lo) */
#define	PG_FILENAME_ARRAY		1026
#define	PG_FLOAT4			700	/* float4   */
#define	PG_FLOAT4_ARRAY			1021
#define	PG_FLOAT8			701	/* float8   */
#define	PG_FLOAT8_ARRAY			1022
#define	PG_ABSTIME			702	/* abstime  */
#define	PG_ABSTIME_ARRAY		1023
#define	PG_RELTIME			703	/* reltime  */
#define	PG_RELTIME_ARRAY		1024
#define	PG_TINTERVAL			704	/* tinterval*/
#define	PG_TINTERVAL_ARRAY		1025
#define	PG_UNKNOWN			705	/* unknown  */
#define	PG_OIDINT4			910	/* oidint4  */
#define	PG_OIDCHAR16			911	/* oidchar16*/
#define	PG_ACLITEM			1033	/* aclitem */
#define	PG_ACLITEM_ARRAY		1034

	/* System Catalogs */

#define	PG_ATTRIBUTE			16384
#define	PG_CLASS			16385
#define	PG_DATABASE			16386
#define	PG_DEFAULTS			16387
#define	PG_DEMON			16388
#define	PG_GROUP			16389
#define	PG_LOG				16390
#define	PG_MAGIC			16391
#define	PG_PROC				16392
#define	PG_SERVER			16393
#define	PG_TIME				16394
#define	PG_TYPE				16395
#define	PG_USER				16396
#define	PG_VARIABLE			16397
#define	PG_INHERITS			16618
#define	PG_INDEX			16635
#define	PG_VERSION			16657
#define	PG_STATISTIC			16674
#define	PG_OPERATOR			16693
#define	PG_OPCLASS			16728
#define	PG_AM				16743
#define	PG_AMOP				16779
#define	PG_AMPROC			16888
#define	PG_LANGUAGE			16928
#define	PG_PARG				16944
#define	PG_AGGREGATE			17014
#define	PG_IPL				17054
#define	PG_INHERITPROC			17071
#define	PG_PLATTER			17089
#define	PG_PLMAP			17105
#define	PG_PRS2plans			17146
#define	PG_PRS2STUB			17163
#define	PG_REWRITE			17181
#define	PG_LISTENER			17202
#define	PG_NAMING			17219
#define	PG_LARGE_OBJECT			17236
