Kùzu C++ API
Loading...
Searching...
No Matches
kuzu::function::TableFunction Struct Referencefinal

#include <table_function.h>

Inheritance diagram for kuzu::function::TableFunction:
kuzu::function::Function

Public Member Functions

 TableFunction ()
 
 TableFunction (std::string name, std::vector< common::LogicalTypeID > inputTypes)
 
std::string signatureToString () const override
 
std::unique_ptr< TableFunctioncopy () const
 
- Public Member Functions inherited from kuzu::function::Function
 Function ()
 
 Function (std::string name, std::vector< common::LogicalTypeID > parameterTypeIDs)
 
 Function (const Function &)=default
 
virtual ~Function ()=default
 
template<class TARGET>
const TARGET * constPtrCast () const
 
template<class TARGET>
TARGET * ptrCast ()
 

Static Public Member Functions

static std::unique_ptr< TableFuncSharedStateinitSharedState (const TableFunctionInitInput &input)
 
static std::unique_ptr< TableFuncLocalStateinitEmptyLocalState (const TableFunctionInitInput &input, TableFuncSharedState *state, storage::MemoryManager *mm)
 
static std::vector< std::string > extractYieldVariables (const std::vector< std::string > &names, const std::vector< parser::YieldVariable > &yieldVariables)
 
static void getLogicalPlan (const transaction::Transaction *transaction, planner::Planner *planner, const binder::BoundReadingClause &readingClause, std::shared_ptr< planner::LogicalOperator > logicalOp, const std::vector< std::unique_ptr< planner::LogicalPlan > > &logicalPlans)
 
static std::unique_ptr< processor::PhysicalOperatorgetPhysicalPlan (const main::ClientContext *clientContext, processor::PlanMapper *planMapper, const planner::LogicalOperator *logicalOp)
 
static common::offset_t emptyTableFunc (const TableFuncInput &input, TableFuncOutput &output)
 

Public Attributes

table_func_t tableFunc = nullptr
 
table_func_bind_t bindFunc = nullptr
 
table_func_init_shared_t initSharedStateFunc = nullptr
 
table_func_init_local_t initLocalStateFunc = nullptr
 
table_func_can_parallel_t canParallelFunc = [] { return true; }
 
table_func_progress_t progressFunc = [](TableFuncSharedState*) { return 0.0; }
 
table_func_finalize_t finalizeFunc = [](auto, auto) {}
 
table_func_rewrite_t rewriteFunc = nullptr
 
table_func_get_logical_plan_t getLogicalPlanFunc = getLogicalPlan
 
table_func_get_physical_plan_t getPhysicalPlanFunc = getPhysicalPlan
 
- Public Attributes inherited from kuzu::function::Function
std::string name
 
std::vector< common::LogicalTypeIDparameterTypeIDs
 
bool isVarLength
 
bool isListLambda
 

Constructor & Destructor Documentation

◆ TableFunction() [1/2]

kuzu::function::TableFunction::TableFunction ( )
inline

◆ TableFunction() [2/2]

kuzu::function::TableFunction::TableFunction ( std::string name,
std::vector< common::LogicalTypeID > inputTypes )
inline

Member Function Documentation

◆ copy()

std::unique_ptr< TableFunction > kuzu::function::TableFunction::copy ( ) const
inline

◆ emptyTableFunc()

static common::offset_t kuzu::function::TableFunction::emptyTableFunc ( const TableFuncInput & input,
TableFuncOutput & output )
static

◆ extractYieldVariables()

static std::vector< std::string > kuzu::function::TableFunction::extractYieldVariables ( const std::vector< std::string > & names,
const std::vector< parser::YieldVariable > & yieldVariables )
static

◆ getLogicalPlan()

static void kuzu::function::TableFunction::getLogicalPlan ( const transaction::Transaction * transaction,
planner::Planner * planner,
const binder::BoundReadingClause & readingClause,
std::shared_ptr< planner::LogicalOperator > logicalOp,
const std::vector< std::unique_ptr< planner::LogicalPlan > > & logicalPlans )
static

◆ getPhysicalPlan()

static std::unique_ptr< processor::PhysicalOperator > kuzu::function::TableFunction::getPhysicalPlan ( const main::ClientContext * clientContext,
processor::PlanMapper * planMapper,
const planner::LogicalOperator * logicalOp )
static

◆ initEmptyLocalState()

static std::unique_ptr< TableFuncLocalState > kuzu::function::TableFunction::initEmptyLocalState ( const TableFunctionInitInput & input,
TableFuncSharedState * state,
storage::MemoryManager * mm )
static

◆ initSharedState()

static std::unique_ptr< TableFuncSharedState > kuzu::function::TableFunction::initSharedState ( const TableFunctionInitInput & input)
static

◆ signatureToString()

std::string kuzu::function::TableFunction::signatureToString ( ) const
inlineoverridevirtual

Reimplemented from kuzu::function::Function.

Member Data Documentation

◆ bindFunc

table_func_bind_t kuzu::function::TableFunction::bindFunc = nullptr

◆ canParallelFunc

table_func_can_parallel_t kuzu::function::TableFunction::canParallelFunc = [] { return true; }

◆ finalizeFunc

table_func_finalize_t kuzu::function::TableFunction::finalizeFunc = [](auto, auto) {}

◆ getLogicalPlanFunc

table_func_get_logical_plan_t kuzu::function::TableFunction::getLogicalPlanFunc = getLogicalPlan

◆ getPhysicalPlanFunc

table_func_get_physical_plan_t kuzu::function::TableFunction::getPhysicalPlanFunc = getPhysicalPlan

◆ initLocalStateFunc

table_func_init_local_t kuzu::function::TableFunction::initLocalStateFunc = nullptr

◆ initSharedStateFunc

table_func_init_shared_t kuzu::function::TableFunction::initSharedStateFunc = nullptr

◆ progressFunc

table_func_progress_t kuzu::function::TableFunction::progressFunc = [](TableFuncSharedState*) { return 0.0; }

◆ rewriteFunc

table_func_rewrite_t kuzu::function::TableFunction::rewriteFunc = nullptr

◆ tableFunc

table_func_t kuzu::function::TableFunction::tableFunc = nullptr

The documentation for this struct was generated from the following file: