Eneboo - Documentación para desarrolladores
src/libpq/include/nodes/makefuncs.h
Ir a la documentación de este archivo.
00001 /*-------------------------------------------------------------------------
00002  *
00003  * makefuncs.h
00004  *        prototypes for the creator functions (for primitive nodes)
00005  *
00006  *
00007  * Portions Copyright (c) 1996-2005, PostgreSQL Global Development Group
00008  * Portions Copyright (c) 1994, Regents of the University of California
00009  *
00010  * $PostgreSQL: pgsql/src/include/nodes/makefuncs.h,v 1.53 2005/10/15 02:49:45 momjian Exp $
00011  *
00012  *-------------------------------------------------------------------------
00013  */
00014 #ifndef MAKEFUNC_H
00015 #define MAKEFUNC_H
00016 
00017 #include "nodes/parsenodes.h"
00018 
00019 
00020 extern A_Expr *makeA_Expr(A_Expr_Kind kind, List *name,
00021                    Node *lexpr, Node *rexpr);
00022 
00023 extern A_Expr *makeSimpleA_Expr(A_Expr_Kind kind, const char *name,
00024                                  Node *lexpr, Node *rexpr);
00025 
00026 extern Var *makeVar(Index varno,
00027                 AttrNumber varattno,
00028                 Oid vartype,
00029                 int32 vartypmod,
00030                 Index varlevelsup);
00031 
00032 extern TargetEntry *makeTargetEntry(Expr *expr,
00033                                 AttrNumber resno,
00034                                 char *resname,
00035                                 bool resjunk);
00036 
00037 extern TargetEntry *flatCopyTargetEntry(TargetEntry *src_tle);
00038 
00039 extern Const *makeConst(Oid consttype,
00040                   int constlen,
00041                   Datum constvalue,
00042                   bool constisnull,
00043                   bool constbyval);
00044 
00045 extern Const *makeNullConst(Oid consttype);
00046 
00047 extern Node *makeBoolConst(bool value, bool isnull);
00048 
00049 extern Expr *makeBoolExpr(BoolExprType boolop, List *args);
00050 
00051 extern Alias *makeAlias(const char *aliasname, List *colnames);
00052 
00053 extern RelabelType *makeRelabelType(Expr *arg, Oid rtype, int32 rtypmod,
00054                                 CoercionForm rformat);
00055 
00056 extern RangeVar *makeRangeVar(char *schemaname, char *relname);
00057 
00058 extern TypeName *makeTypeName(char *typnam);
00059 
00060 extern FuncExpr *makeFuncExpr(Oid funcid, Oid rettype,
00061                          List *args, CoercionForm fformat);
00062 
00063 #endif   /* MAKEFUNC_H */
 Todo Clases Namespaces Archivos Funciones Variables 'typedefs' Enumeraciones Valores de enumeraciones Propiedades Amigas 'defines'