Header And Logo

PostgreSQL
| The world's most advanced open source database.

pg_language.h

Go to the documentation of this file.
00001 /*-------------------------------------------------------------------------
00002  *
00003  * pg_language.h
00004  *    definition of the system "language" relation (pg_language)
00005  *    along with the relation's initial contents.
00006  *
00007  *
00008  * Portions Copyright (c) 1996-2013, PostgreSQL Global Development Group
00009  * Portions Copyright (c) 1994, Regents of the University of California
00010  *
00011  * src/include/catalog/pg_language.h
00012  *
00013  * NOTES
00014  *    the genbki.pl script reads this file and generates .bki
00015  *    information from the DATA() statements.
00016  *
00017  *-------------------------------------------------------------------------
00018  */
00019 #ifndef PG_LANGUAGE_H
00020 #define PG_LANGUAGE_H
00021 
00022 #include "catalog/genbki.h"
00023 
00024 /* ----------------
00025  *      pg_language definition.  cpp turns this into
00026  *      typedef struct FormData_pg_language
00027  * ----------------
00028  */
00029 #define LanguageRelationId  2612
00030 
00031 CATALOG(pg_language,2612)
00032 {
00033     NameData    lanname;        /* Language name */
00034     Oid         lanowner;       /* Language's owner */
00035     bool        lanispl;        /* Is a procedural language */
00036     bool        lanpltrusted;   /* PL is trusted */
00037     Oid         lanplcallfoid;  /* Call handler for PL */
00038     Oid         laninline;      /* Optional anonymous-block handler function */
00039     Oid         lanvalidator;   /* Optional validation function */
00040 
00041 #ifdef CATALOG_VARLEN           /* variable-length fields start here */
00042     aclitem     lanacl[1];      /* Access privileges */
00043 #endif
00044 } FormData_pg_language;
00045 
00046 /* ----------------
00047  *      Form_pg_language corresponds to a pointer to a tuple with
00048  *      the format of pg_language relation.
00049  * ----------------
00050  */
00051 typedef FormData_pg_language *Form_pg_language;
00052 
00053 /* ----------------
00054  *      compiler constants for pg_language
00055  * ----------------
00056  */
00057 #define Natts_pg_language               8
00058 #define Anum_pg_language_lanname        1
00059 #define Anum_pg_language_lanowner       2
00060 #define Anum_pg_language_lanispl        3
00061 #define Anum_pg_language_lanpltrusted   4
00062 #define Anum_pg_language_lanplcallfoid  5
00063 #define Anum_pg_language_laninline      6
00064 #define Anum_pg_language_lanvalidator   7
00065 #define Anum_pg_language_lanacl         8
00066 
00067 /* ----------------
00068  *      initial contents of pg_language
00069  * ----------------
00070  */
00071 
00072 DATA(insert OID = 12 ( "internal"   PGUID f f 0 0 2246 _null_ ));
00073 DESCR("built-in functions");
00074 #define INTERNALlanguageId 12
00075 DATA(insert OID = 13 ( "c"          PGUID f f 0 0 2247 _null_ ));
00076 DESCR("dynamically-loaded C functions");
00077 #define ClanguageId 13
00078 DATA(insert OID = 14 ( "sql"        PGUID f t 0 0 2248 _null_ ));
00079 DESCR("SQL-language functions");
00080 #define SQLlanguageId 14
00081 
00082 #endif   /* PG_LANGUAGE_H */