summaryrefslogtreecommitdiff
path: root/src/include/optimizer/restrictinfo.h
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2005-06-05 22:32:58 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2005-06-05 22:32:58 +0000
commit9ab4d98168407c3436d3f0e02d32720b0d9075a0 (patch)
tree3572d316a54a99512277ead2ad757032998b2839 /src/include/optimizer/restrictinfo.h
parent22dbd540478517ff6c55381ae7ce07a3a2e64474 (diff)
Remove planner's private fields from Query struct, and put them into
a new PlannerInfo struct, which is passed around instead of the bare Query in all the planning code. This commit is essentially just a code-beautification exercise, but it does open the door to making larger changes to the planner data structures without having to muck with the widely-known Query struct.
Diffstat (limited to 'src/include/optimizer/restrictinfo.h')
-rw-r--r--src/include/optimizer/restrictinfo.h7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/include/optimizer/restrictinfo.h b/src/include/optimizer/restrictinfo.h
index 3760a65669b..4fa6ace6aee 100644
--- a/src/include/optimizer/restrictinfo.h
+++ b/src/include/optimizer/restrictinfo.h
@@ -7,7 +7,7 @@
* Portions Copyright (c) 1996-2005, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $PostgreSQL: pgsql/src/include/optimizer/restrictinfo.h,v 1.29 2005/04/25 02:14:48 tgl Exp $
+ * $PostgreSQL: pgsql/src/include/optimizer/restrictinfo.h,v 1.30 2005/06/05 22:32:58 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -16,6 +16,7 @@
#include "nodes/relation.h"
+
extern RestrictInfo *make_restrictinfo(Expr *clause, bool is_pushed_down,
bool valid_everywhere);
extern List *make_restrictinfo_from_bitmapqual(Path *bitmapqual,
@@ -25,10 +26,10 @@ extern bool restriction_is_or_clause(RestrictInfo *restrictinfo);
extern List *get_actual_clauses(List *restrictinfo_list);
extern void get_actual_join_clauses(List *restrictinfo_list,
List **joinquals, List **otherquals);
-extern List *remove_redundant_join_clauses(Query *root,
+extern List *remove_redundant_join_clauses(PlannerInfo *root,
List *restrictinfo_list,
bool isouterjoin);
-extern List *select_nonredundant_join_clauses(Query *root,
+extern List *select_nonredundant_join_clauses(PlannerInfo *root,
List *restrictinfo_list,
List *reference_list,
bool isouterjoin);