1997-11-25 23:07:18 +01:00
|
|
|
/*-------------------------------------------------------------------------
|
|
|
|
*
|
|
|
|
* parse_target.h
|
|
|
|
*
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* Copyright (c) 1994, Regents of the University of California
|
|
|
|
*
|
1998-07-08 16:18:45 +02:00
|
|
|
* $Id: parse_target.h,v 1.8 1998/07/08 14:18:45 thomas Exp $
|
1997-11-25 23:07:18 +01:00
|
|
|
*
|
|
|
|
*-------------------------------------------------------------------------
|
|
|
|
*/
|
|
|
|
#ifndef PARSE_TARGET_H
|
|
|
|
#define PARSE_TARGET_H
|
|
|
|
|
|
|
|
#include <nodes/pg_list.h>
|
|
|
|
#include <nodes/nodes.h>
|
|
|
|
#include <nodes/parsenodes.h>
|
|
|
|
#include <nodes/primnodes.h>
|
|
|
|
#include <parser/parse_node.h>
|
|
|
|
|
|
|
|
#define EXPR_COLUMN_FIRST 1
|
1998-02-26 05:46:47 +01:00
|
|
|
#define EXPR_RELATION_FIRST 2
|
1997-11-25 23:07:18 +01:00
|
|
|
|
1997-11-26 02:14:33 +01:00
|
|
|
extern List *transformTargetList(ParseState *pstate, List *targetlist);
|
|
|
|
extern List *makeTargetNames(ParseState *pstate, List *cols);
|
1998-07-08 16:18:45 +02:00
|
|
|
extern TargetEntry *
|
|
|
|
transformTargetIdent(ParseState *pstate,
|
|
|
|
Node *node,
|
|
|
|
TargetEntry *tent,
|
|
|
|
char **resname,
|
|
|
|
char *refname,
|
|
|
|
char *colname,
|
|
|
|
int16 resjunk);
|
|
|
|
extern Node *
|
|
|
|
CoerceTargetExpr(ParseState *pstate, Node *expr,
|
|
|
|
Oid type_id, Oid attrtype);
|
1997-11-25 23:07:18 +01:00
|
|
|
|
|
|
|
#endif /* PARSE_TARGET_H */
|