OmniSciDB
b24e664e58
|
#include <boost/optional.hpp>
#include <list>
#include <memory>
#include <vector>
#include "Analyzer/Analyzer.h"
#include "RelAlgExecutionUnit.h"
Go to the source code of this file.
Classes | |
struct | OverlapsJoinConjunction |
Namespaces | |
Analyzer | |
Functions | |
Analyzer::ExpressionPtr | rewrite_expr (const Analyzer::Expr *) |
Analyzer::ExpressionPtr | rewrite_array_elements (const Analyzer::Expr *) |
boost::optional < OverlapsJoinConjunction > | rewrite_overlaps_conjunction (const std::shared_ptr< Analyzer::Expr > expr) |
std::list< std::shared_ptr < Analyzer::Expr > > | strip_join_covered_filter_quals (const std::list< std::shared_ptr< Analyzer::Expr >> &quals, const JoinQualsPerNestingLevel &join_quals) |
std::shared_ptr< Analyzer::Expr > | fold_expr (const Analyzer::Expr *) |
std::shared_ptr<Analyzer::Expr> fold_expr | ( | const Analyzer::Expr * | ) |
Definition at line 836 of file ExpressionRewrite.cpp.
References kBIGINT, and anonymous_namespace{ExpressionRewrite.cpp}::strip_likelihood().
Referenced by RelAlgExecutor::createFilterWorkUnit(), anonymous_namespace{RelAlgExecutor.cpp}::set_transient_dict_maybe(), anonymous_namespace{RelAlgExecutor.cpp}::translate_quals(), anonymous_namespace{RelAlgExecutor.cpp}::translate_targets(), anonymous_namespace{RelAlgExecutor.cpp}::translate_targets_for_update(), RelAlgTranslator::translateDateadd(), RelAlgTranslator::translateDatePlusMinus(), RelAlgTranslator::translateGeoComparison(), RelAlgTranslator::translateGeoFunctionArg(), and RelAlgTranslator::translateTernaryGeoFunction().
Analyzer::ExpressionPtr rewrite_array_elements | ( | const Analyzer::Expr * | ) |
Definition at line 689 of file ExpressionRewrite.cpp.
Referenced by anonymous_namespace{RelAlgExecutor.cpp}::translate_scalar_sources(), and anonymous_namespace{RelAlgExecutor.cpp}::translate_scalar_sources_for_update().
Analyzer::ExpressionPtr rewrite_expr | ( | const Analyzer::Expr * | ) |
Definition at line 693 of file ExpressionRewrite.cpp.
References rewrite_avg_window(), rewrite_sum_window(), and anonymous_namespace{ExpressionRewrite.cpp}::strip_likelihood().
Referenced by RelAlgExecutor::createFilterWorkUnit(), qual_to_conjunctive_form(), qual_to_disjunctive_form(), anonymous_namespace{RelAlgExecutor.cpp}::rewrite_quals(), QueryRewriter::rewriteConstrainedByIn(), anonymous_namespace{RelAlgExecutor.cpp}::translate_scalar_sources(), anonymous_namespace{RelAlgExecutor.cpp}::translate_scalar_sources_for_update(), anonymous_namespace{RelAlgExecutor.cpp}::translate_targets(), and anonymous_namespace{RelAlgExecutor.cpp}::translate_targets_for_update().
boost::optional<OverlapsJoinConjunction> rewrite_overlaps_conjunction | ( | const std::shared_ptr< Analyzer::Expr > | expr | ) |
Definition at line 726 of file ExpressionRewrite.cpp.
References CHECK(), CHECK_GE, kBOOLEAN, kONE, kOVERLAPS, LOG, anonymous_namespace{ExpressionRewrite.cpp}::overlaps_supported_functions, ScalarExprVisitor< T >::visit(), and logger::WARNING.
Referenced by QueryRewriter::rewriteOverlapsJoin().
std::list<std::shared_ptr<Analyzer::Expr> > strip_join_covered_filter_quals | ( | const std::list< std::shared_ptr< Analyzer::Expr >> & | quals, |
const JoinQualsPerNestingLevel & | join_quals | ||
) |
Definition at line 812 of file ExpressionRewrite.cpp.
References g_strip_join_covered_quals, and ScalarExprVisitor< T >::visit().
Referenced by create_count_all_execution_unit().