]> granicus.if.org Git - postgresql/blob - src/include/catalog/pg_pltemplate.h
Phase 2 of pgindent updates.
[postgresql] / src / include / catalog / pg_pltemplate.h
1 /*-------------------------------------------------------------------------
2  *
3  * pg_pltemplate.h
4  *        definition of the system "PL template" relation (pg_pltemplate)
5  *        along with the relation's initial contents.
6  *
7  *
8  * Portions Copyright (c) 1996-2017, PostgreSQL Global Development Group
9  * Portions Copyright (c) 1994, Regents of the University of California
10  *
11  * src/include/catalog/pg_pltemplate.h
12  *
13  * NOTES
14  *        the genbki.pl script reads this file and generates .bki
15  *        information from the DATA() statements.
16  *
17  *-------------------------------------------------------------------------
18  */
19 #ifndef PG_PLTEMPLATE_H
20 #define PG_PLTEMPLATE_H
21
22 #include "catalog/genbki.h"
23
24 /* ----------------
25  *              pg_pltemplate definition.  cpp turns this into
26  *              typedef struct FormData_pg_pltemplate
27  * ----------------
28  */
29 #define PLTemplateRelationId    1136
30
31 CATALOG(pg_pltemplate,1136) BKI_SHARED_RELATION BKI_WITHOUT_OIDS
32 {
33         NameData        tmplname;               /* name of PL */
34         bool            tmpltrusted;    /* PL is trusted? */
35         bool            tmpldbacreate;  /* PL is installable by db owner? */
36
37 #ifdef CATALOG_VARLEN                   /* variable-length fields start here */
38         text            tmplhandler BKI_FORCE_NOT_NULL; /* name of call handler
39                                                                                                  * function */
40         text            tmplinline;             /* name of anonymous-block handler, or NULL */
41         text            tmplvalidator;  /* name of validator function, or NULL */
42         text            tmpllibrary BKI_FORCE_NOT_NULL; /* path of shared library */
43         aclitem         tmplacl[1];             /* access privileges for template */
44 #endif
45 } FormData_pg_pltemplate;
46
47 /* ----------------
48  *              Form_pg_pltemplate corresponds to a pointer to a row with
49  *              the format of pg_pltemplate relation.
50  * ----------------
51  */
52 typedef FormData_pg_pltemplate *Form_pg_pltemplate;
53
54 /* ----------------
55  *              compiler constants for pg_pltemplate
56  * ----------------
57  */
58 #define Natts_pg_pltemplate                                     8
59 #define Anum_pg_pltemplate_tmplname                     1
60 #define Anum_pg_pltemplate_tmpltrusted          2
61 #define Anum_pg_pltemplate_tmpldbacreate        3
62 #define Anum_pg_pltemplate_tmplhandler          4
63 #define Anum_pg_pltemplate_tmplinline           5
64 #define Anum_pg_pltemplate_tmplvalidator        6
65 #define Anum_pg_pltemplate_tmpllibrary          7
66 #define Anum_pg_pltemplate_tmplacl                      8
67
68
69 /* ----------------
70  *              initial contents of pg_pltemplate
71  * ----------------
72  */
73
74 DATA(insert ( "plpgsql"         t t "plpgsql_call_handler" "plpgsql_inline_handler" "plpgsql_validator" "$libdir/plpgsql" _null_ ));
75 DATA(insert ( "pltcl"           t t "pltcl_call_handler" _null_ _null_ "$libdir/pltcl" _null_ ));
76 DATA(insert ( "pltclu"          f f "pltclu_call_handler" _null_ _null_ "$libdir/pltcl" _null_ ));
77 DATA(insert ( "plperl"          t t "plperl_call_handler" "plperl_inline_handler" "plperl_validator" "$libdir/plperl" _null_ ));
78 DATA(insert ( "plperlu"         f f "plperlu_call_handler" "plperlu_inline_handler" "plperlu_validator" "$libdir/plperl" _null_ ));
79 DATA(insert ( "plpythonu"       f f "plpython_call_handler" "plpython_inline_handler" "plpython_validator" "$libdir/plpython2" _null_ ));
80 DATA(insert ( "plpython2u"      f f "plpython2_call_handler" "plpython2_inline_handler" "plpython2_validator" "$libdir/plpython2" _null_ ));
81 DATA(insert ( "plpython3u"      f f "plpython3_call_handler" "plpython3_inline_handler" "plpython3_validator" "$libdir/plpython3" _null_ ));
82
83 #endif                                                  /* PG_PLTEMPLATE_H */