PostgreSQL Source Code
git master
|
#include "postgres.h"
#include "nodes/makefuncs.h"
#include "nodes/nodeFuncs.h"
#include "optimizer/optimizer.h"
#include "utils/lsyscache.h"
Go to the source code of this file.
Functions | |
static List * | pull_ands (List *andlist) |
static List * | pull_ors (List *orlist) |
static Expr * | find_duplicate_ors (Expr *qual, bool is_check) |
static Expr * | process_duplicate_ors (List *orlist) |
Node * | negate_clause (Node *node) |
Expr * | canonicalize_qual (Expr *qual, bool is_check) |
Definition at line 293 of file prepqual.c.
References Assert, find_duplicate_ors(), and IsA.
Referenced by ConstraintImpliedByRelConstraint(), convert_EXISTS_to_ANY(), DoCopy(), get_proposed_default_constraint(), get_relation_constraints(), preprocess_expression(), and RelationGetIndexPredicate().
Definition at line 406 of file prepqual.c.
References arg, generate_unaccent_rules::args, DatumGetBool(), is_andclause(), is_orclause(), IsA, lappend(), lfirst, linitial, list_length(), make_andclause(), makeBoolConst(), NIL, process_duplicate_ors(), pull_ands(), and pull_ors().
Referenced by canonicalize_qual().
Definition at line 73 of file prepqual.c.
References AND_EXPR, NullTest::arg, BooleanTest::arg, OpExpr::args, ScalarArrayOpExpr::args, BoolExpr::args, BoolExpr::boolop, BooleanTest::booltesttype, DatumGetBool(), elog, ERROR, get_negator(), InvalidOid, IS_FALSE, IS_NOT_FALSE, IS_NOT_NULL, IS_NOT_TRUE, IS_NOT_UNKNOWN, IS_NULL, IS_TRUE, IS_UNKNOWN, lappend(), lfirst, linitial, OpExpr::location, ScalarArrayOpExpr::location, NullTest::location, BooleanTest::location, make_andclause(), make_notclause(), make_orclause(), makeBoolConst(), makeNode, NIL, nodeTag, NOT_EXPR, NullTest::nulltesttype, OpExpr::opno, ScalarArrayOpExpr::opno, OR_EXPR, and ScalarArrayOpExpr::useOr.
Referenced by eval_const_expressions_mutator(), match_boolean_partition_clause(), and simplify_boolean_equality().
Definition at line 517 of file prepqual.c.
References equal(), is_andclause(), lappend(), lfirst, linitial, list_difference(), list_length(), list_make1, list_member(), list_union(), make_andclause(), make_orclause(), makeBoolConst(), NIL, pull_ands(), and pull_ors().
Referenced by find_duplicate_ors().
Definition at line 323 of file prepqual.c.
References arg, generate_unaccent_rules::args, is_andclause(), lappend(), lfirst, list_concat(), and NIL.
Referenced by find_duplicate_ors(), and process_duplicate_ors().
Definition at line 349 of file prepqual.c.
References arg, generate_unaccent_rules::args, is_orclause(), lappend(), lfirst, list_concat(), and NIL.
Referenced by find_duplicate_ors(), and process_duplicate_ors().