mirror of
https://github.com/postgres/postgres.git
synced 2025-11-10 17:42:29 +03:00
Used modified version of indent that understands over 100 typedefs.
This commit is contained in:
@@ -7,7 +7,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/backend/parser/analyze.c,v 1.41 1997/09/08 20:56:25 momjian Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/parser/analyze.c,v 1.42 1997/09/08 21:46:00 momjian Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@@ -44,54 +44,54 @@
|
||||
#include "port-protos.h" /* strdup() */
|
||||
|
||||
/* convert the parse tree into a query tree */
|
||||
static Query *transformStmt(ParseState * pstate, Node * stmt);
|
||||
static Query *transformStmt(ParseState *pstate, Node *stmt);
|
||||
|
||||
static Query *transformDeleteStmt(ParseState * pstate, DeleteStmt * stmt);
|
||||
static Query *transformInsertStmt(ParseState * pstate, AppendStmt *stmt);
|
||||
static Query *transformIndexStmt(ParseState * pstate, IndexStmt * stmt);
|
||||
static Query *transformExtendStmt(ParseState * pstate, ExtendStmt * stmt);
|
||||
static Query *transformRuleStmt(ParseState * query, RuleStmt * stmt);
|
||||
static Query *transformSelectStmt(ParseState * pstate, RetrieveStmt * stmt);
|
||||
static Query *transformUpdateStmt(ParseState * pstate, ReplaceStmt * stmt);
|
||||
static Query *transformCursorStmt(ParseState * pstate, CursorStmt * stmt);
|
||||
static Node *handleNestedDots(ParseState * pstate, Attr *attr, int *curr_resno);
|
||||
static Query *transformDeleteStmt(ParseState *pstate, DeleteStmt *stmt);
|
||||
static Query *transformInsertStmt(ParseState *pstate, AppendStmt *stmt);
|
||||
static Query *transformIndexStmt(ParseState *pstate, IndexStmt *stmt);
|
||||
static Query *transformExtendStmt(ParseState *pstate, ExtendStmt *stmt);
|
||||
static Query *transformRuleStmt(ParseState *query, RuleStmt *stmt);
|
||||
static Query *transformSelectStmt(ParseState *pstate, RetrieveStmt *stmt);
|
||||
static Query *transformUpdateStmt(ParseState *pstate, ReplaceStmt *stmt);
|
||||
static Query *transformCursorStmt(ParseState *pstate, CursorStmt *stmt);
|
||||
static Node *handleNestedDots(ParseState *pstate, Attr *attr, int *curr_resno);
|
||||
|
||||
#define EXPR_COLUMN_FIRST 1
|
||||
#define EXPR_RELATION_FIRST 2
|
||||
static Node *transformExpr(ParseState * pstate, Node * expr, int precedence);
|
||||
static Node *transformIdent(ParseState * pstate, Node * expr, int precedence);
|
||||
static Node *transformExpr(ParseState *pstate, Node *expr, int precedence);
|
||||
static Node *transformIdent(ParseState *pstate, Node *expr, int precedence);
|
||||
|
||||
static void makeRangeTable(ParseState * pstate, char *relname, List * frmList);
|
||||
static List *expandAllTables(ParseState * pstate);
|
||||
static char *figureColname(Node * expr, Node * resval);
|
||||
static List *makeTargetNames(ParseState * pstate, List * cols);
|
||||
static List *transformTargetList(ParseState * pstate, List * targetlist);
|
||||
static void makeRangeTable(ParseState *pstate, char *relname, List *frmList);
|
||||
static List *expandAllTables(ParseState *pstate);
|
||||
static char *figureColname(Node *expr, Node *resval);
|
||||
static List *makeTargetNames(ParseState *pstate, List *cols);
|
||||
static List *transformTargetList(ParseState *pstate, List *targetlist);
|
||||
static TargetEntry *
|
||||
make_targetlist_expr(ParseState * pstate,
|
||||
char *colname, Node * expr,
|
||||
List * arrayRef);
|
||||
make_targetlist_expr(ParseState *pstate,
|
||||
char *colname, Node *expr,
|
||||
List *arrayRef);
|
||||
static bool inWhereClause = false;
|
||||
static Node *transformWhereClause(ParseState * pstate, Node * a_expr);
|
||||
static Node *transformWhereClause(ParseState *pstate, Node *a_expr);
|
||||
static List *
|
||||
transformGroupClause(ParseState * pstate, List * grouplist,
|
||||
List * targetlist);
|
||||
transformGroupClause(ParseState *pstate, List *grouplist,
|
||||
List *targetlist);
|
||||
static List *
|
||||
transformSortClause(ParseState * pstate,
|
||||
List * orderlist, List * targetlist,
|
||||
transformSortClause(ParseState *pstate,
|
||||
List *orderlist, List *targetlist,
|
||||
char *uniqueFlag);
|
||||
|
||||
static void parseFromClause(ParseState * pstate, List * frmList);
|
||||
static void parseFromClause(ParseState *pstate, List *frmList);
|
||||
static Node *
|
||||
ParseFunc(ParseState * pstate, char *funcname,
|
||||
List * fargs, int *curr_resno);
|
||||
ParseFunc(ParseState *pstate, char *funcname,
|
||||
List *fargs, int *curr_resno);
|
||||
static List *setup_tlist(char *attname, Oid relid);
|
||||
static List *setup_base_tlist(Oid typeid);
|
||||
static void
|
||||
make_arguments(int nargs, List * fargs, Oid * input_typeids,
|
||||
Oid * function_typeids);
|
||||
static void AddAggToParseState(ParseState * pstate, Aggreg *aggreg);
|
||||
static void finalizeAggregates(ParseState * pstate, Query * qry);
|
||||
static void parseCheckAggregates(ParseState * pstate, Query * qry);
|
||||
make_arguments(int nargs, List *fargs, Oid *input_typeids,
|
||||
Oid *function_typeids);
|
||||
static void AddAggToParseState(ParseState *pstate, Aggreg *aggreg);
|
||||
static void finalizeAggregates(ParseState *pstate, Query *qry);
|
||||
static void parseCheckAggregates(ParseState *pstate, Query *qry);
|
||||
static ParseState *makeParseState(void);
|
||||
|
||||
/*****************************************************************************
|
||||
@@ -135,7 +135,7 @@ makeParseState(void)
|
||||
* CALLER is responsible for freeing the QueryTreeList* returned
|
||||
*/
|
||||
QueryTreeList *
|
||||
parse_analyze(List * pl)
|
||||
parse_analyze(List *pl)
|
||||
{
|
||||
QueryTreeList *result;
|
||||
ParseState *pstate;
|
||||
@@ -166,7 +166,7 @@ parse_analyze(List * pl)
|
||||
* into a Query tree.
|
||||
*/
|
||||
static Query *
|
||||
transformStmt(ParseState * pstate, Node * parseTree)
|
||||
transformStmt(ParseState *pstate, Node *parseTree)
|
||||
{
|
||||
Query *result = NULL;
|
||||
|
||||
@@ -271,7 +271,7 @@ transformStmt(ParseState * pstate, Node * parseTree)
|
||||
* transforms a Delete Statement
|
||||
*/
|
||||
static Query *
|
||||
transformDeleteStmt(ParseState * pstate, DeleteStmt * stmt)
|
||||
transformDeleteStmt(ParseState *pstate, DeleteStmt *stmt)
|
||||
{
|
||||
Query *qry = makeNode(Query);
|
||||
|
||||
@@ -300,7 +300,7 @@ transformDeleteStmt(ParseState * pstate, DeleteStmt * stmt)
|
||||
* transform an Insert Statement
|
||||
*/
|
||||
static Query *
|
||||
transformInsertStmt(ParseState * pstate, AppendStmt *stmt)
|
||||
transformInsertStmt(ParseState *pstate, AppendStmt *stmt)
|
||||
{
|
||||
Query *qry = makeNode(Query); /* make a new query tree */
|
||||
|
||||
@@ -335,7 +335,7 @@ transformInsertStmt(ParseState * pstate, AppendStmt *stmt)
|
||||
* transforms the qualification of the index statement
|
||||
*/
|
||||
static Query *
|
||||
transformIndexStmt(ParseState * pstate, IndexStmt * stmt)
|
||||
transformIndexStmt(ParseState *pstate, IndexStmt *stmt)
|
||||
{
|
||||
Query *q;
|
||||
|
||||
@@ -357,7 +357,7 @@ transformIndexStmt(ParseState * pstate, IndexStmt * stmt)
|
||||
*
|
||||
*/
|
||||
static Query *
|
||||
transformExtendStmt(ParseState * pstate, ExtendStmt * stmt)
|
||||
transformExtendStmt(ParseState *pstate, ExtendStmt *stmt)
|
||||
{
|
||||
Query *q;
|
||||
|
||||
@@ -378,7 +378,7 @@ transformExtendStmt(ParseState * pstate, ExtendStmt * stmt)
|
||||
* trees which is transformed into a list of query trees.
|
||||
*/
|
||||
static Query *
|
||||
transformRuleStmt(ParseState * pstate, RuleStmt * stmt)
|
||||
transformRuleStmt(ParseState *pstate, RuleStmt *stmt)
|
||||
{
|
||||
Query *q;
|
||||
List *actions;
|
||||
@@ -426,7 +426,7 @@ transformRuleStmt(ParseState * pstate, RuleStmt * stmt)
|
||||
*
|
||||
*/
|
||||
static Query *
|
||||
transformSelectStmt(ParseState * pstate, RetrieveStmt * stmt)
|
||||
transformSelectStmt(ParseState *pstate, RetrieveStmt *stmt)
|
||||
{
|
||||
Query *qry = makeNode(Query);
|
||||
|
||||
@@ -478,7 +478,7 @@ transformSelectStmt(ParseState * pstate, RetrieveStmt * stmt)
|
||||
*
|
||||
*/
|
||||
static Query *
|
||||
transformUpdateStmt(ParseState * pstate, ReplaceStmt * stmt)
|
||||
transformUpdateStmt(ParseState *pstate, ReplaceStmt *stmt)
|
||||
{
|
||||
Query *qry = makeNode(Query);
|
||||
|
||||
@@ -513,7 +513,7 @@ transformUpdateStmt(ParseState * pstate, ReplaceStmt * stmt)
|
||||
*
|
||||
*/
|
||||
static Query *
|
||||
transformCursorStmt(ParseState * pstate, CursorStmt * stmt)
|
||||
transformCursorStmt(ParseState *pstate, CursorStmt *stmt)
|
||||
{
|
||||
Query *qry = makeNode(Query);
|
||||
|
||||
@@ -571,7 +571,7 @@ transformCursorStmt(ParseState * pstate, CursorStmt * stmt)
|
||||
* here.
|
||||
*/
|
||||
static Node *
|
||||
transformExpr(ParseState * pstate, Node * expr, int precedence)
|
||||
transformExpr(ParseState *pstate, Node *expr, int precedence)
|
||||
{
|
||||
Node *result = NULL;
|
||||
|
||||
@@ -791,7 +791,7 @@ transformExpr(ParseState * pstate, Node * expr, int precedence)
|
||||
}
|
||||
|
||||
static Node *
|
||||
transformIdent(ParseState * pstate, Node * expr, int precedence)
|
||||
transformIdent(ParseState *pstate, Node *expr, int precedence)
|
||||
{
|
||||
Ident *ident = (Ident *) expr;
|
||||
RangeTblEntry *rte;
|
||||
@@ -856,7 +856,7 @@ transformIdent(ParseState * pstate, Node * expr, int precedence)
|
||||
*
|
||||
*/
|
||||
static void
|
||||
parseFromClause(ParseState * pstate, List * frmList)
|
||||
parseFromClause(ParseState *pstate, List *frmList)
|
||||
{
|
||||
List *fl;
|
||||
|
||||
@@ -893,7 +893,7 @@ parseFromClause(ParseState * pstate, List * frmList)
|
||||
* from-clause.
|
||||
*/
|
||||
static void
|
||||
makeRangeTable(ParseState * pstate, char *relname, List * frmList)
|
||||
makeRangeTable(ParseState *pstate, char *relname, List *frmList)
|
||||
{
|
||||
RangeTblEntry *rte;
|
||||
|
||||
@@ -919,7 +919,7 @@ makeRangeTable(ParseState * pstate, char *relname, List * frmList)
|
||||
* returns the Oid of the type of the expression. (Used for typechecking.)
|
||||
*/
|
||||
Oid
|
||||
exprType(Node * expr)
|
||||
exprType(Node *expr)
|
||||
{
|
||||
Oid type = (Oid) 0;
|
||||
|
||||
@@ -967,7 +967,7 @@ exprType(Node * expr)
|
||||
* relations in the range table)
|
||||
*/
|
||||
static List *
|
||||
expandAllTables(ParseState * pstate)
|
||||
expandAllTables(ParseState *pstate)
|
||||
{
|
||||
List *target = NIL;
|
||||
List *legit_rtable = NIL;
|
||||
@@ -1033,7 +1033,7 @@ expandAllTables(ParseState * pstate)
|
||||
*
|
||||
*/
|
||||
static char *
|
||||
figureColname(Node * expr, Node * resval)
|
||||
figureColname(Node *expr, Node *resval)
|
||||
{
|
||||
switch (nodeTag(expr))
|
||||
{
|
||||
@@ -1067,7 +1067,7 @@ figureColname(Node * expr, Node * resval)
|
||||
* (used exclusively for inserts)
|
||||
*/
|
||||
static List *
|
||||
makeTargetNames(ParseState * pstate, List * cols)
|
||||
makeTargetNames(ParseState *pstate, List *cols)
|
||||
{
|
||||
List *tl = NULL;
|
||||
|
||||
@@ -1110,7 +1110,7 @@ makeTargetNames(ParseState * pstate, List * cols)
|
||||
* turns a list of ResTarget's into a list of TargetEntry's
|
||||
*/
|
||||
static List *
|
||||
transformTargetList(ParseState * pstate, List * targetlist)
|
||||
transformTargetList(ParseState *pstate, List *targetlist)
|
||||
{
|
||||
List *p_target = NIL;
|
||||
List *tail_p_target = NIL;
|
||||
@@ -1397,10 +1397,10 @@ transformTargetList(ParseState * pstate, List * targetlist)
|
||||
* arrayRef is a list of transformed A_Indices
|
||||
*/
|
||||
static TargetEntry *
|
||||
make_targetlist_expr(ParseState * pstate,
|
||||
make_targetlist_expr(ParseState *pstate,
|
||||
char *colname,
|
||||
Node * expr,
|
||||
List * arrayRef)
|
||||
Node *expr,
|
||||
List *arrayRef)
|
||||
{
|
||||
Oid type_id,
|
||||
attrtype;
|
||||
@@ -1607,7 +1607,7 @@ make_targetlist_expr(ParseState * pstate,
|
||||
*
|
||||
*/
|
||||
static Node *
|
||||
transformWhereClause(ParseState * pstate, Node * a_expr)
|
||||
transformWhereClause(ParseState *pstate, Node *a_expr)
|
||||
{
|
||||
Node *qual;
|
||||
|
||||
@@ -1639,7 +1639,7 @@ transformWhereClause(ParseState * pstate, Node * a_expr)
|
||||
*
|
||||
*/
|
||||
static TargetEntry *
|
||||
find_targetlist_entry(ParseState * pstate, SortGroupBy * sortgroupby, List * tlist)
|
||||
find_targetlist_entry(ParseState *pstate, SortGroupBy *sortgroupby, List *tlist)
|
||||
{
|
||||
List *i;
|
||||
int real_rtable_pos = 0,
|
||||
@@ -1716,7 +1716,7 @@ any_ordering_op(int restype)
|
||||
*
|
||||
*/
|
||||
static List *
|
||||
transformGroupClause(ParseState * pstate, List * grouplist, List * targetlist)
|
||||
transformGroupClause(ParseState *pstate, List *grouplist, List *targetlist)
|
||||
{
|
||||
List *glist = NIL,
|
||||
*gl = NIL;
|
||||
@@ -1756,8 +1756,8 @@ transformGroupClause(ParseState * pstate, List * grouplist, List * targetlist)
|
||||
*
|
||||
*/
|
||||
static List *
|
||||
transformSortClause(ParseState * pstate,
|
||||
List * orderlist, List * targetlist,
|
||||
transformSortClause(ParseState *pstate,
|
||||
List *orderlist, List *targetlist,
|
||||
char *uniqueFlag)
|
||||
{
|
||||
List *sortlist = NIL;
|
||||
@@ -1872,7 +1872,7 @@ transformSortClause(ParseState * pstate,
|
||||
** a tree with of Iter and Func nodes.
|
||||
*/
|
||||
static Node *
|
||||
handleNestedDots(ParseState * pstate, Attr *attr, int *curr_resno)
|
||||
handleNestedDots(ParseState *pstate, Attr *attr, int *curr_resno)
|
||||
{
|
||||
List *mutator_iter;
|
||||
Node *retval = NULL;
|
||||
@@ -1915,9 +1915,9 @@ handleNestedDots(ParseState * pstate, Attr *attr, int *curr_resno)
|
||||
*/
|
||||
static void
|
||||
make_arguments(int nargs,
|
||||
List * fargs,
|
||||
Oid * input_typeids,
|
||||
Oid * function_typeids)
|
||||
List *fargs,
|
||||
Oid *input_typeids,
|
||||
Oid *function_typeids)
|
||||
{
|
||||
|
||||
/*
|
||||
@@ -2016,10 +2016,10 @@ setup_base_tlist(Oid typeid)
|
||||
* This routine returns NULL if it can't handle the projection (eg. sets).
|
||||
*/
|
||||
static Node *
|
||||
ParseComplexProjection(ParseState * pstate,
|
||||
ParseComplexProjection(ParseState *pstate,
|
||||
char *funcname,
|
||||
Node * first_arg,
|
||||
bool * attisset)
|
||||
Node *first_arg,
|
||||
bool *attisset)
|
||||
{
|
||||
Oid argtype;
|
||||
Oid argrelid;
|
||||
@@ -2174,7 +2174,7 @@ ParseComplexProjection(ParseState * pstate,
|
||||
}
|
||||
|
||||
static Node *
|
||||
ParseFunc(ParseState * pstate, char *funcname, List * fargs, int *curr_resno)
|
||||
ParseFunc(ParseState *pstate, char *funcname, List *fargs, int *curr_resno)
|
||||
{
|
||||
Oid rettype = (Oid) 0;
|
||||
Oid argrelid = (Oid) 0;
|
||||
@@ -2524,7 +2524,7 @@ ParseFunc(ParseState * pstate, char *funcname, List * fargs, int *curr_resno)
|
||||
* SIDE EFFECT: aggno in target list entry will be modified
|
||||
*/
|
||||
static void
|
||||
AddAggToParseState(ParseState * pstate, Aggreg *aggreg)
|
||||
AddAggToParseState(ParseState *pstate, Aggreg *aggreg)
|
||||
{
|
||||
List *ag;
|
||||
int i;
|
||||
@@ -2562,7 +2562,7 @@ AddAggToParseState(ParseState * pstate, Aggreg *aggreg)
|
||||
* are used in the proper place.
|
||||
*/
|
||||
static void
|
||||
finalizeAggregates(ParseState * pstate, Query * qry)
|
||||
finalizeAggregates(ParseState *pstate, Query *qry)
|
||||
{
|
||||
List *l;
|
||||
int i;
|
||||
@@ -2584,7 +2584,7 @@ finalizeAggregates(ParseState * pstate, Query * qry)
|
||||
* Returns true if any aggregate found.
|
||||
*/
|
||||
static bool
|
||||
contain_agg_clause(Node * clause)
|
||||
contain_agg_clause(Node *clause)
|
||||
{
|
||||
if (clause == NULL)
|
||||
return FALSE;
|
||||
@@ -2642,12 +2642,12 @@ contain_agg_clause(Node * clause)
|
||||
* returns true if the expression does not contain non-group columns.
|
||||
*/
|
||||
static bool
|
||||
exprIsAggOrGroupCol(Node * expr, List * groupClause)
|
||||
exprIsAggOrGroupCol(Node *expr, List *groupClause)
|
||||
{
|
||||
List *gl;
|
||||
|
||||
if (expr == NULL || IsA(expr, Const) ||
|
||||
IsA(expr, Param) || IsA(expr, Aggreg))
|
||||
IsA(expr, Param) ||IsA(expr, Aggreg))
|
||||
return TRUE;
|
||||
|
||||
foreach(gl, groupClause)
|
||||
@@ -2676,12 +2676,12 @@ exprIsAggOrGroupCol(Node * expr, List * groupClause)
|
||||
* returns true if the TargetEntry is Agg or GroupCol.
|
||||
*/
|
||||
static bool
|
||||
tleIsAggOrGroupCol(TargetEntry * tle, List * groupClause)
|
||||
tleIsAggOrGroupCol(TargetEntry *tle, List *groupClause)
|
||||
{
|
||||
Node *expr = tle->expr;
|
||||
List *gl;
|
||||
|
||||
if (expr == NULL || IsA(expr, Const) || IsA(expr, Param))
|
||||
if (expr == NULL || IsA(expr, Const) ||IsA(expr, Param))
|
||||
return TRUE;
|
||||
|
||||
foreach(gl, groupClause)
|
||||
@@ -2719,7 +2719,7 @@ tleIsAggOrGroupCol(TargetEntry * tle, List * groupClause)
|
||||
* here when the target list and the qualifications are finalized.
|
||||
*/
|
||||
static void
|
||||
parseCheckAggregates(ParseState * pstate, Query * qry)
|
||||
parseCheckAggregates(ParseState *pstate, Query *qry)
|
||||
{
|
||||
List *tl;
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/backend/parser/Attic/catalog_utils.c,v 1.24 1997/09/08 02:25:15 momjian Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/parser/Attic/catalog_utils.c,v 1.25 1997/09/08 21:46:04 momjian Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@@ -121,7 +121,7 @@ typedef struct _InhPaths
|
||||
int nsupers; /* number of superclasses */
|
||||
Oid self; /* this class */
|
||||
Oid *supervec; /* vector of superclasses */
|
||||
} InhPaths;
|
||||
} InhPaths;
|
||||
|
||||
/*
|
||||
* This structure holds a list of possible functions or operators that
|
||||
@@ -133,9 +133,9 @@ typedef struct _CandidateList
|
||||
struct _CandidateList *next;
|
||||
} *CandidateList;
|
||||
|
||||
static Oid **argtype_inherit(int nargs, Oid * oid_array);
|
||||
static Oid **genxprod(InhPaths * arginh, int nargs);
|
||||
static int findsupers(Oid relid, Oid ** supervec);
|
||||
static Oid **argtype_inherit(int nargs, Oid *oid_array);
|
||||
static Oid **genxprod(InhPaths *arginh, int nargs);
|
||||
static int findsupers(Oid relid, Oid **supervec);
|
||||
static bool check_typeid(Oid id);
|
||||
static char *instr1(TypeTupleForm tp, char *string, int typlen);
|
||||
static void op_error(char *op, Oid arg1, Oid arg2);
|
||||
@@ -308,7 +308,7 @@ static int
|
||||
binary_oper_get_candidates(char *opname,
|
||||
Oid leftTypeId,
|
||||
Oid rightTypeId,
|
||||
CandidateList * candidates)
|
||||
CandidateList *candidates)
|
||||
{
|
||||
CandidateList current_candidate;
|
||||
Relation pg_operator_desc;
|
||||
@@ -624,7 +624,7 @@ oper(char *op, Oid arg1, Oid arg2, bool noWarnings)
|
||||
static int
|
||||
unary_oper_get_candidates(char *op,
|
||||
Oid typeId,
|
||||
CandidateList * candidates,
|
||||
CandidateList *candidates,
|
||||
char rightleft)
|
||||
{
|
||||
CandidateList current_candidate;
|
||||
@@ -641,10 +641,10 @@ unary_oper_get_candidates(char *op,
|
||||
|
||||
*candidates = NULL;
|
||||
|
||||
fmgr_info(NameEqualRegProcedure, (func_ptr *) & opKey[0].sk_func,
|
||||
fmgr_info(NameEqualRegProcedure, (func_ptr *) &opKey[0].sk_func,
|
||||
&opKey[0].sk_nargs);
|
||||
opKey[0].sk_argument = NameGetDatum(op);
|
||||
fmgr_info(CharacterEqualRegProcedure, (func_ptr *) & opKey[1].sk_func,
|
||||
fmgr_info(CharacterEqualRegProcedure, (func_ptr *) &opKey[1].sk_func,
|
||||
&opKey[1].sk_nargs);
|
||||
opKey[1].sk_argument = CharGetDatum(rightleft);
|
||||
|
||||
@@ -954,7 +954,7 @@ GetArrayElementType(Oid typearray)
|
||||
if (type_struct_array->typelem == InvalidOid)
|
||||
{
|
||||
elog(WARN, "GetArrayElementType: type %s is not an array",
|
||||
(Name) & (type_struct_array->typname.data[0]));
|
||||
(Name) &(type_struct_array->typname.data[0]));
|
||||
}
|
||||
|
||||
return (type_struct_array->typelem);
|
||||
@@ -1061,7 +1061,7 @@ func_get_candidates(char *funcname, int nargs)
|
||||
* can input_typeids be coerced to func_typeids?
|
||||
*/
|
||||
static bool
|
||||
can_coerce(int nargs, Oid * input_typeids, Oid * func_typeids)
|
||||
can_coerce(int nargs, Oid *input_typeids, Oid *func_typeids)
|
||||
{
|
||||
int i;
|
||||
Type tp;
|
||||
@@ -1101,9 +1101,9 @@ can_coerce(int nargs, Oid * input_typeids, Oid * func_typeids)
|
||||
*/
|
||||
static int
|
||||
match_argtypes(int nargs,
|
||||
Oid * input_typeids,
|
||||
Oid *input_typeids,
|
||||
CandidateList function_typeids,
|
||||
CandidateList * candidates) /* return value */
|
||||
CandidateList *candidates) /* return value */
|
||||
{
|
||||
CandidateList current_candidate;
|
||||
CandidateList matching_candidate;
|
||||
@@ -1139,7 +1139,7 @@ match_argtypes(int nargs,
|
||||
*/
|
||||
static Oid *
|
||||
func_select_candidate(int nargs,
|
||||
Oid * input_typeids,
|
||||
Oid *input_typeids,
|
||||
CandidateList candidates)
|
||||
{
|
||||
/* XXX no conflict resolution implemeneted yet */
|
||||
@@ -1149,11 +1149,11 @@ func_select_candidate(int nargs,
|
||||
bool
|
||||
func_get_detail(char *funcname,
|
||||
int nargs,
|
||||
Oid * oid_array,
|
||||
Oid * funcid, /* return value */
|
||||
Oid * rettype, /* return value */
|
||||
bool * retset, /* return value */
|
||||
Oid ** true_typeids) /* return value */
|
||||
Oid *oid_array,
|
||||
Oid *funcid, /* return value */
|
||||
Oid *rettype, /* return value */
|
||||
bool *retset, /* return value */
|
||||
Oid **true_typeids) /* return value */
|
||||
{
|
||||
Oid **input_typeid_vector;
|
||||
Oid *current_input_typeids;
|
||||
@@ -1292,7 +1292,7 @@ func_get_detail(char *funcname,
|
||||
* catalogs.
|
||||
*/
|
||||
static Oid **
|
||||
argtype_inherit(int nargs, Oid * oid_array)
|
||||
argtype_inherit(int nargs, Oid *oid_array)
|
||||
{
|
||||
Oid relid;
|
||||
int i;
|
||||
@@ -1328,10 +1328,10 @@ argtype_inherit(int nargs, Oid * oid_array)
|
||||
typedef struct _SuperQE
|
||||
{
|
||||
Oid sqe_relid;
|
||||
} SuperQE;
|
||||
} SuperQE;
|
||||
|
||||
static int
|
||||
findsupers(Oid relid, Oid ** supervec)
|
||||
findsupers(Oid relid, Oid **supervec)
|
||||
{
|
||||
Oid *relidvec;
|
||||
Relation inhrel;
|
||||
@@ -1452,7 +1452,7 @@ findsupers(Oid relid, Oid ** supervec)
|
||||
}
|
||||
|
||||
static Oid **
|
||||
genxprod(InhPaths * arginh, int nargs)
|
||||
genxprod(InhPaths *arginh, int nargs)
|
||||
{
|
||||
int nanswers;
|
||||
Oid **result,
|
||||
@@ -1657,7 +1657,7 @@ op_error(char *op, Oid arg1, Oid arg2)
|
||||
* argument types
|
||||
*/
|
||||
void
|
||||
func_error(char *caller, char *funcname, int nargs, Oid * argtypes)
|
||||
func_error(char *caller, char *funcname, int nargs, Oid *argtypes)
|
||||
{
|
||||
char p[(NAMEDATALEN + 2) * MAXFMGRARGS],
|
||||
*ptr;
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/backend/parser/Attic/dbcommands.c,v 1.8 1997/09/08 02:25:16 momjian Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/parser/Attic/dbcommands.c,v 1.9 1997/09/08 21:46:07 momjian Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@@ -37,7 +37,7 @@
|
||||
/* non-export function prototypes */
|
||||
static void
|
||||
check_permissions(char *command, char *dbname,
|
||||
Oid * dbIdP, Oid * userIdP);
|
||||
Oid *dbIdP, Oid *userIdP);
|
||||
static HeapTuple get_pg_dbtup(char *command, char *dbname, Relation dbrel);
|
||||
static void stop_vacuum(char *dbname);
|
||||
|
||||
@@ -161,8 +161,8 @@ get_pg_dbtup(char *command, char *dbname, Relation dbrel)
|
||||
static void
|
||||
check_permissions(char *command,
|
||||
char *dbname,
|
||||
Oid * dbIdP,
|
||||
Oid * userIdP)
|
||||
Oid *dbIdP,
|
||||
Oid *userIdP)
|
||||
{
|
||||
Relation dbrel;
|
||||
HeapTuple dbtup,
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/backend/parser/Attic/parse_query.c,v 1.20 1997/09/08 02:25:18 momjian Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/parser/Attic/parse_query.c,v 1.21 1997/09/08 21:46:08 momjian Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@@ -39,7 +39,7 @@
|
||||
#include "nodes/makefuncs.h"
|
||||
|
||||
static void
|
||||
checkTargetTypes(ParseState * pstate, char *target_colname,
|
||||
checkTargetTypes(ParseState *pstate, char *target_colname,
|
||||
char *refname, char *colname);
|
||||
|
||||
Oid *param_type_info;
|
||||
@@ -47,7 +47,7 @@ int pfunc_num_args;
|
||||
|
||||
/* given refname, return a pointer to the range table entry */
|
||||
RangeTblEntry *
|
||||
refnameRangeTableEntry(List * rtable, char *refname)
|
||||
refnameRangeTableEntry(List *rtable, char *refname)
|
||||
{
|
||||
List *temp;
|
||||
|
||||
@@ -63,7 +63,7 @@ refnameRangeTableEntry(List * rtable, char *refname)
|
||||
|
||||
/* given refname, return id of variable; position starts with 1 */
|
||||
int
|
||||
refnameRangeTablePosn(List * rtable, char *refname)
|
||||
refnameRangeTablePosn(List *rtable, char *refname)
|
||||
{
|
||||
int index;
|
||||
List *temp;
|
||||
@@ -84,7 +84,7 @@ refnameRangeTablePosn(List * rtable, char *refname)
|
||||
* returns range entry if found, else NULL
|
||||
*/
|
||||
RangeTblEntry *
|
||||
colnameRangeTableEntry(ParseState * pstate, char *colname)
|
||||
colnameRangeTableEntry(ParseState *pstate, char *colname)
|
||||
{
|
||||
List *et;
|
||||
List *rtable;
|
||||
@@ -124,11 +124,11 @@ colnameRangeTableEntry(ParseState * pstate, char *colname)
|
||||
* if pstate null
|
||||
*/
|
||||
RangeTblEntry *
|
||||
addRangeTableEntry(ParseState * pstate,
|
||||
addRangeTableEntry(ParseState *pstate,
|
||||
char *relname,
|
||||
char *refname,
|
||||
bool inh, bool inFromCl,
|
||||
TimeRange * timeRange)
|
||||
TimeRange *timeRange)
|
||||
{
|
||||
Relation relation;
|
||||
RangeTblEntry *rte = makeNode(RangeTblEntry);
|
||||
@@ -180,7 +180,7 @@ addRangeTableEntry(ParseState * pstate,
|
||||
* assumes reldesc caching works
|
||||
*/
|
||||
List *
|
||||
expandAll(ParseState * pstate, char *relname, char *refname, int *this_resno)
|
||||
expandAll(ParseState *pstate, char *relname, char *refname, int *this_resno)
|
||||
{
|
||||
Relation rdesc;
|
||||
List *te_tail = NIL,
|
||||
@@ -305,7 +305,7 @@ makeTimeRange(char *datestring1,
|
||||
}
|
||||
|
||||
static void
|
||||
disallow_setop(char *op, Type optype, Node * operand)
|
||||
disallow_setop(char *op, Type optype, Node *operand)
|
||||
{
|
||||
if (operand == NULL)
|
||||
return;
|
||||
@@ -321,7 +321,7 @@ disallow_setop(char *op, Type optype, Node * operand)
|
||||
|
||||
static Node *
|
||||
make_operand(char *opname,
|
||||
Node * tree,
|
||||
Node *tree,
|
||||
Oid orig_typeId,
|
||||
Oid true_typeId)
|
||||
{
|
||||
@@ -374,7 +374,7 @@ make_operand(char *opname,
|
||||
|
||||
|
||||
Expr *
|
||||
make_op(char *opname, Node * ltree, Node * rtree)
|
||||
make_op(char *opname, Node *ltree, Node *rtree)
|
||||
{
|
||||
Oid ltypeId,
|
||||
rtypeId;
|
||||
@@ -525,7 +525,7 @@ find_atttype(Oid relid, char *attrname)
|
||||
|
||||
|
||||
Var *
|
||||
make_var(ParseState * pstate, char *refname, char *attrname, Oid * type_id)
|
||||
make_var(ParseState *pstate, char *refname, char *attrname, Oid *type_id)
|
||||
{
|
||||
Var *varnode;
|
||||
int vnum,
|
||||
@@ -568,8 +568,8 @@ make_var(ParseState * pstate, char *refname, char *attrname, Oid * type_id)
|
||||
* indirection is a list of A_Indices
|
||||
*/
|
||||
ArrayRef *
|
||||
make_array_ref(Node * expr,
|
||||
List * indirection)
|
||||
make_array_ref(Node *expr,
|
||||
List *indirection)
|
||||
{
|
||||
Oid typearray;
|
||||
HeapTuple type_tuple;
|
||||
@@ -596,7 +596,7 @@ make_array_ref(Node * expr,
|
||||
if (type_struct_array->typelem == InvalidOid)
|
||||
{
|
||||
elog(WARN, "make_array_ref: type %s is not an array",
|
||||
(Name) & (type_struct_array->typname.data[0]));
|
||||
(Name) &(type_struct_array->typname.data[0]));
|
||||
}
|
||||
|
||||
/* get the type tuple for the element type */
|
||||
@@ -650,10 +650,10 @@ make_array_ref(Node * expr,
|
||||
}
|
||||
|
||||
ArrayRef *
|
||||
make_array_set(Expr * target_expr,
|
||||
List * upperIndexpr,
|
||||
List * lowerIndexpr,
|
||||
Expr * expr)
|
||||
make_array_set(Expr *target_expr,
|
||||
List *upperIndexpr,
|
||||
List *lowerIndexpr,
|
||||
Expr *expr)
|
||||
{
|
||||
Oid typearray;
|
||||
HeapTuple type_tuple;
|
||||
@@ -678,7 +678,7 @@ make_array_set(Expr * target_expr,
|
||||
if (type_struct_array->typelem == InvalidOid)
|
||||
{
|
||||
elog(WARN, "make_array_ref: type %s is not an array",
|
||||
(Name) & (type_struct_array->typname.data[0]));
|
||||
(Name) &(type_struct_array->typname.data[0]));
|
||||
}
|
||||
/* get the type tuple for the element type */
|
||||
type_tuple = SearchSysCacheTuple(TYPOID,
|
||||
@@ -724,7 +724,7 @@ make_array_set(Expr * target_expr,
|
||||
* eventually, produces a "const" lisp-struct as per nodedefs.cl
|
||||
*/
|
||||
Const *
|
||||
make_const(Value * value)
|
||||
make_const(Value *value)
|
||||
{
|
||||
Type tp;
|
||||
Datum val;
|
||||
@@ -786,7 +786,7 @@ make_const(Value * value)
|
||||
* used in postquel functions
|
||||
*/
|
||||
void
|
||||
param_type_init(Oid * typev, int nargs)
|
||||
param_type_init(Oid *typev, int nargs)
|
||||
{
|
||||
pfunc_num_args = nargs;
|
||||
param_type_info = typev;
|
||||
@@ -805,7 +805,7 @@ param_type(int t)
|
||||
* use column names from insert
|
||||
*/
|
||||
void
|
||||
handleTargetColname(ParseState * pstate, char **resname,
|
||||
handleTargetColname(ParseState *pstate, char **resname,
|
||||
char *refname, char *colname)
|
||||
{
|
||||
if (pstate->p_is_insert)
|
||||
@@ -829,7 +829,7 @@ handleTargetColname(ParseState * pstate, char **resname,
|
||||
* checks value and target column types
|
||||
*/
|
||||
static void
|
||||
checkTargetTypes(ParseState * pstate, char *target_colname,
|
||||
checkTargetTypes(ParseState *pstate, char *target_colname,
|
||||
char *refname, char *colname)
|
||||
{
|
||||
Oid attrtype_id,
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/backend/parser/parser.c,v 1.24 1997/09/08 02:25:20 momjian Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/parser/parser.c,v 1.25 1997/09/08 21:46:12 momjian Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@@ -37,7 +37,7 @@
|
||||
#include "optimizer/clauses.h"
|
||||
|
||||
void init_io(); /* from scan.l */
|
||||
void parser_init(Oid * typev, int nargs); /* from gram.y */
|
||||
void parser_init(Oid *typev, int nargs); /* from gram.y */
|
||||
int yyparse(); /* from gram.c */
|
||||
|
||||
char *parseString; /* the char* which holds the string to be
|
||||
@@ -58,7 +58,7 @@ static void define_sets();
|
||||
* CALLER is responsible for free'ing the list returned
|
||||
*/
|
||||
QueryTreeList *
|
||||
parser(char *str, Oid * typev, int nargs)
|
||||
parser(char *str, Oid *typev, int nargs)
|
||||
{
|
||||
QueryTreeList *queryList;
|
||||
int yyresult;
|
||||
@@ -112,7 +112,7 @@ parser(char *str, Oid * typev, int nargs)
|
||||
|
||||
#ifdef SETS_FIXED
|
||||
static void
|
||||
fixupsets(Query * parse)
|
||||
fixupsets(Query *parse)
|
||||
{
|
||||
if (parse == NULL)
|
||||
return;
|
||||
@@ -129,7 +129,7 @@ fixupsets(Query * parse)
|
||||
* the set, and store the OID of the new set in the Const instead.
|
||||
*/
|
||||
static void
|
||||
define_sets(Node * clause)
|
||||
define_sets(Node *clause)
|
||||
{
|
||||
Oid setoid;
|
||||
Type t = type("oid");
|
||||
@@ -210,7 +210,7 @@ define_sets(Node * clause)
|
||||
*/
|
||||
|
||||
Node *
|
||||
parser_typecast(Value * expr, TypeName * typename, int typlen)
|
||||
parser_typecast(Value *expr, TypeName *typename, int typlen)
|
||||
{
|
||||
/* check for passing non-ints */
|
||||
Const *adt;
|
||||
@@ -347,7 +347,7 @@ parser_typecast(Value * expr, TypeName * typename, int typlen)
|
||||
}
|
||||
|
||||
Node *
|
||||
parser_typecast2(Node * expr, Oid exprType, Type tp, int typlen)
|
||||
parser_typecast2(Node *expr, Oid exprType, Type tp, int typlen)
|
||||
{
|
||||
/* check for passing non-ints */
|
||||
Const *adt;
|
||||
@@ -486,7 +486,7 @@ parser_typecast2(Node * expr, Oid exprType, Type tp, int typlen)
|
||||
}
|
||||
|
||||
Aggreg *
|
||||
ParseAgg(char *aggname, Oid basetype, Node * target)
|
||||
ParseAgg(char *aggname, Oid basetype, Node *target)
|
||||
{
|
||||
Oid fintype;
|
||||
Oid vartype;
|
||||
|
||||
Reference in New Issue
Block a user