1 /*-------------------------------------------------------------------------
4 * prototypes for restrictinfo.c.
7 * Portions Copyright (c) 1996-2008, PostgreSQL Global Development Group
8 * Portions Copyright (c) 1994, Regents of the University of California
12 *-------------------------------------------------------------------------
14 #ifndef RESTRICTINFO_H
15 #define RESTRICTINFO_H
17 #include "nodes/relation.h"
20 extern RestrictInfo
*make_restrictinfo(Expr
*clause
,
22 bool outerjoin_delayed
,
24 Relids required_relids
);
25 extern List
*make_restrictinfo_from_bitmapqual(Path
*bitmapqual
,
27 bool include_predicates
);
28 extern bool restriction_is_or_clause(RestrictInfo
*restrictinfo
);
29 extern List
*get_actual_clauses(List
*restrictinfo_list
);
30 extern List
*extract_actual_clauses(List
*restrictinfo_list
,
32 extern void extract_actual_join_clauses(List
*restrictinfo_list
,
35 extern List
*select_nonredundant_join_clauses(PlannerInfo
*root
,
36 List
*restrictinfo_list
,
37 List
*reference_list
);
39 #endif /* RESTRICTINFO_H */