OmniSciDB
a5dc49c757
|
#include <Distance.h>
Public Member Functions | |
Distance (const Analyzer::GeoOperator *geo_operator) | |
size_t | size () const final |
SQLTypeInfo | getNullType () const 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 const Analyzer::Expr * | getOperand (const size_t index) |
virtual | ~Codegen () |
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 &) |
Protected Attributes inherited from spatial_type::Codegen | |
const Analyzer::GeoOperator * | operator_ |
bool | is_nullable_ {true} |
Definition at line 23 of file Distance.h.
|
inline |
Definition at line 25 of file Distance.h.
References CHECK_EQ, Analyzer::Expr::get_type_info(), spatial_type::Codegen::is_nullable_, spatial_type::Codegen::operator_, and Analyzer::GeoOperator::size().
|
inlinefinalvirtual |
Implements spatial_type::Codegen.
Definition at line 155 of file Distance.h.
References run_benchmark_import::args, CHECK, Geospatial::get_compression_scheme(), kDOUBLE, kGEOGRAPHY, kLINESTRING, kMULTILINESTRING, kPOINT, and spatial_type::suffix().
|
inlinefinalvirtual |
Implements spatial_type::Codegen.
Definition at line 35 of file Distance.h.
References CHECK, CHECK_EQ, CHECK_LT, get_int_type(), spatial_type::Codegen::getOperand(), IS_GEO, is_null(), spatial_type::Codegen::is_nullable_, kPOINT, log2_bytes(), and size().
|
inlinefinalvirtual |
Implements spatial_type::Codegen.
Definition at line 33 of file Distance.h.
References kBOOLEAN.
|
inlinefinalvirtual |
Implements spatial_type::Codegen.
Definition at line 31 of file Distance.h.
Referenced by codegenLoads().