OmniSciDB  06b3bd477c
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
anonymous_namespace{ExpressionRewrite.cpp} Namespace Reference

Classes

class  OrToInVisitor
 
class  RecursiveOrToInVisitor
 
class  ArrayElementStringLiteralEncodingVisitor
 
class  ConstantFoldingVisitor
 

Functions

const Analyzer::Exprstrip_likelihood (const Analyzer::Expr *expr)
 

Variables

static const
std::unordered_set
< std::string > 
overlaps_supported_functions
 
static const
std::unordered_set
< std::string > 
requires_many_to_many
 

Function Documentation

const Analyzer::Expr* anonymous_namespace{ExpressionRewrite.cpp}::strip_likelihood ( const Analyzer::Expr expr)

Definition at line 686 of file ExpressionRewrite.cpp.

Referenced by fold_expr(), and rewrite_expr().

686  {
687  const auto with_likelihood = dynamic_cast<const Analyzer::LikelihoodExpr*>(expr);
688  if (!with_likelihood) {
689  return expr;
690  }
691  return with_likelihood->get_arg();
692 }

+ Here is the caller graph for this function:

Variable Documentation

const std::unordered_set<std::string> anonymous_namespace{ExpressionRewrite.cpp}::overlaps_supported_functions
static
Initial value:
= {
"ST_Contains_MultiPolygon_Point",
"ST_Contains_Polygon_Point",
"ST_Contains_Polygon_Polygon",
"ST_Contains_Polygon_MultiPolygon",
"ST_Contains_MultiPolygon_MultiPolygon",
"ST_Contains_MultiPolygon_Polygon",
"ST_Intersects_Polygon_Point",
"ST_Intersects_Polygon_Polygon",
"ST_Intersects_Polygon_MultiPolygon",
"ST_Intersects_MultiPolygon_MultiPolygon",
"ST_Intersects_MultiPolygon_Polygon",
"ST_Overlaps"}

Definition at line 727 of file ExpressionRewrite.cpp.

Referenced by rewrite_overlaps_conjunction(), and JoinCoveredQualVisitor::visitFunctionOper().

const std::unordered_set<std::string> anonymous_namespace{ExpressionRewrite.cpp}::requires_many_to_many
static
Initial value:
= {
"ST_Contains_Polygon_Polygon",
"ST_Contains_Polygon_MultiPolygon",
"ST_Contains_MultiPolygon_MultiPolygon",
"ST_Contains_MultiPolygon_Polygon",
"ST_Intersects_Polygon_Polygon",
"ST_Intersects_Polygon_MultiPolygon",
"ST_Intersects_MultiPolygon_MultiPolygon",
"ST_Intersects_MultiPolygon_Polygon"}

Definition at line 741 of file ExpressionRewrite.cpp.

Referenced by rewrite_overlaps_conjunction().