]> granicus.if.org Git - postgresql/blob - src/include/optimizer/tlist.h
bce5db6c55cf1a378ea81f40de1b9a8414b7ba86
[postgresql] / src / include / optimizer / tlist.h
1 /*-------------------------------------------------------------------------
2  *
3  * tlist.h
4  *        prototypes for tlist.c.
5  *
6  *
7  * Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
8  * Portions Copyright (c) 1994, Regents of the University of California
9  *
10  * $Id: tlist.h,v 1.34 2003/02/15 20:12:41 tgl Exp $
11  *
12  *-------------------------------------------------------------------------
13  */
14 #ifndef TLIST_H
15 #define TLIST_H
16
17 #include "nodes/relation.h"
18
19 extern TargetEntry *tlistentry_member(Node *node, List *targetlist);
20 extern Resdom *tlist_member(Node *node, List *targetlist);
21
22 extern void add_var_to_tlist(RelOptInfo *rel, Var *var);
23 extern TargetEntry *create_tl_element(Var *var, int resdomno);
24
25 extern List *new_unsorted_tlist(List *targetlist);
26 extern List *flatten_tlist(List *tlist);
27 extern List *add_to_flat_tlist(List *tlist, List *vars);
28
29 extern TargetEntry *get_sortgroupclause_tle(SortClause *sortClause,
30                                                 List *targetList);
31 extern Node *get_sortgroupclause_expr(SortClause *sortClause,
32                                                  List *targetList);
33 extern List *get_sortgrouplist_exprs(List *sortClauses,
34                                                  List *targetList);
35
36 #endif   /* TLIST_H */