OmniSciDB
a5dc49c757
|
#include <NumGeometries.h>
Public Member Functions | |
NumGeometries (const Analyzer::GeoOperator *geo_operator) | |
size_t | size () const final |
SQLTypeInfo | getNullType () const final |
const SQLTypeInfo | getOperandTypeInfo (const size_t index) |
const Analyzer::Expr * | getOperand (const size_t index) final |
std::tuple< std::vector < llvm::Value * >, llvm::Value * > | codegenLoads (const std::vector< llvm::Value * > &arg_lvs, const std::vector< llvm::Value * > &pos_lvs, CgenState *cgen_state) final |
std::vector< llvm::Value * > | codegen (const std::vector< llvm::Value * > &args, CodeGenerator::NullCheckCodegen *nullcheck_codegen, CgenState *cgen_state, const CompilationOptions &co) final |
Public Member Functions inherited from spatial_type::Codegen | |
Codegen (const Analyzer::GeoOperator *geo_operator) | |
auto | isNullable () const |
auto | getTypeInfo () const |
std::string | getName () const |
virtual std::unique_ptr < CodeGenerator::NullCheckCodegen > | getNullCheckCodegen (llvm::Value *null_lv, CgenState *cgen_state, Executor *executor) |
virtual | ~Codegen () |
Protected Attributes | |
std::unique_ptr < Analyzer::ColumnVar > | operand_owned_ |
Protected Attributes inherited from spatial_type::Codegen | |
const Analyzer::GeoOperator * | operator_ |
bool | is_nullable_ {true} |
Additional Inherited Members | |
Static Public Member Functions inherited from spatial_type::Codegen | |
static std::unique_ptr< Codegen > | init (const Analyzer::GeoOperator *geo_operator) |
static char const * | pointIsNullFunctionName (SQLTypeInfo const &) |
Definition at line 23 of file NumGeometries.h.
|
inline |
Definition at line 25 of file NumGeometries.h.
|
inlinefinalvirtual |
Implements spatial_type::Codegen.
Definition at line 154 of file NumGeometries.h.
References run_benchmark_import::args, CHECK, CHECK_EQ, spatial_type::Codegen::getTypeInfo(), and spatial_type::Codegen::isNullable().
|
inlinefinalvirtual |
Implements spatial_type::Codegen.
Definition at line 95 of file NumGeometries.h.
References CHECK, CHECK_EQ, SQLTypeInfo::get_elem_type(), get_int_type(), Analyzer::Expr::get_type_info(), getOperand(), getOperandTypeInfo(), spatial_type::Codegen::getTypeInfo(), IS_GEO_MULTI, spatial_type::Codegen::isNullable(), kENCODING_GEOINT, kMULTIPOINT, kTINYINT, log2_bytes(), and size().
|
inlinefinalvirtual |
Implements spatial_type::Codegen.
Definition at line 29 of file NumGeometries.h.
References kINT.
|
inlinefinalvirtual |
Reimplemented from spatial_type::Codegen.
Definition at line 42 of file NumGeometries.h.
References CHECK, CHECK_EQ, get_column_descriptor(), spatial_type::Codegen::getName(), Analyzer::GeoOperator::getOperand(), spatial_type::Codegen::is_nullable_, kLINESTRING, kMULTILINESTRING, kMULTIPOINT, kMULTIPOLYGON, kPOINT, kPOLYGON, operand_owned_, spatial_type::Codegen::operator_, and UNREACHABLE.
Referenced by codegenLoads().
|
inline |
Definition at line 31 of file NumGeometries.h.
References CHECK_EQ, spatial_type::Codegen::getName(), Analyzer::GeoOperator::getOperand(), and spatial_type::Codegen::operator_.
Referenced by codegenLoads().
|
inlinefinalvirtual |
Implements spatial_type::Codegen.
Definition at line 27 of file NumGeometries.h.
Referenced by codegenLoads().
|
protected |
Definition at line 168 of file NumGeometries.h.
Referenced by getOperand().