1997-11-25 17:07:18 -05:00
|
|
|
/*-------------------------------------------------------------------------
|
|
|
|
|
*
|
|
|
|
|
* parse_clause.h
|
|
|
|
|
*
|
|
|
|
|
*
|
|
|
|
|
*
|
2000-01-26 00:58:53 -05:00
|
|
|
* Portions Copyright (c) 1996-2000, PostgreSQL, Inc
|
|
|
|
|
* Portions Copyright (c) 1994, Regents of the University of California
|
1997-11-25 17:07:18 -05:00
|
|
|
*
|
2000-02-14 22:38:29 -05:00
|
|
|
* $Id: parse_clause.h,v 1.16 2000/02/15 03:38:28 thomas Exp $
|
1997-11-25 17:07:18 -05:00
|
|
|
*
|
|
|
|
|
*-------------------------------------------------------------------------
|
|
|
|
|
*/
|
|
|
|
|
#ifndef PARSE_CLAUSE_H
|
|
|
|
|
#define PARSE_CLAUSE_H
|
|
|
|
|
|
1999-07-15 19:04:24 -04:00
|
|
|
#include "parser/parse_node.h"
|
1997-11-25 17:07:18 -05:00
|
|
|
|
2000-02-14 22:38:29 -05:00
|
|
|
extern void makeRangeTable(ParseState *pstate, List *frmList);
|
1999-07-18 20:26:20 -04:00
|
|
|
extern void setTargetTable(ParseState *pstate, char *relname);
|
2000-02-14 22:38:29 -05:00
|
|
|
extern Node *transformWhereClause(ParseState *pstate, Node *where);
|
1998-09-01 00:40:42 -04:00
|
|
|
extern List *transformGroupClause(ParseState *pstate, List *grouplist,
|
1999-08-20 23:49:17 -04:00
|
|
|
List *targetlist);
|
|
|
|
|
extern List *transformSortClause(ParseState *pstate, List *orderlist,
|
2000-01-27 13:11:50 -05:00
|
|
|
List *targetlist);
|
|
|
|
|
extern List *transformDistinctClause(ParseState *pstate, List *distinctlist,
|
|
|
|
|
List *targetlist, List **sortClause);
|
1999-08-20 23:49:17 -04:00
|
|
|
|
|
|
|
|
extern List *addAllTargetsToSortList(List *sortlist, List *targetlist);
|
|
|
|
|
extern Index assignSortGroupRef(TargetEntry *tle, List *tlist);
|
|
|
|
|
|
1998-09-01 00:40:42 -04:00
|
|
|
#endif /* PARSE_CLAUSE_H */
|