Kuzu C++ API
Loading...
Searching...
No Matches
bind_input.h
Go to the documentation of this file.
1#pragma once
2
3#include <vector>
4
5#include "expression.h"
7#include "file_scan_info.h"
8#include "value.h"
9#include "yield_variable.h"
10
11namespace kuzu {
12namespace binder {
13class LiteralExpression;
14class Binder;
15} // namespace binder
16namespace main {
17class ClientContext;
18}
19
20namespace common {
21class Value;
22}
23
24namespace function {
25
27
28struct TableFunction;
29
31 virtual ~ExtraTableFuncBindInput() = default;
32
33 template<class TARGET>
34 const TARGET* constPtrCast() const {
36 }
37};
38
43 std::unique_ptr<ExtraTableFuncBindInput> extraInput = nullptr;
44 binder::Binder* binder = nullptr;
45 std::vector<parser::YieldVariable> yieldVariables;
46
47 TableFuncBindInput() = default;
48
50
51 std::shared_ptr<binder::Expression> getParam(common::idx_t idx) const { return params[idx]; }
53 template<typename T>
55};
56
63
64} // namespace function
65} // namespace kuzu
#define KUZU_API
Definition api.h:25
Definition value.h:26
Contain client side configuration. We make profiler associated per query, so profiler is not maintain...
Definition client_context.h:68
Definition bind_input.h:12
std::vector< std::shared_ptr< Expression > > expression_vector
Definition expression.h:20
Definition array_utils.h:7
uint32_t idx_t
Definition types.h:45
std::unordered_map< std::string, T, CaseInsensitiveStringHashFunction, CaseInsensitiveStringEquality > case_insensitive_map_t
Definition case_insensitive_map.h:22
TO ku_dynamic_cast(FROM *old)
Definition cast.h:11
common::case_insensitive_map_t< common::Value > optional_params_t
Definition bind_input.h:26
Definition bind_input.h:16
Definition array_utils.h:7
Definition file_scan_info.h:31
TableFunction * tableFunction
Definition bind_input.h:61
std::vector< std::string > expectedColumnNames
Definition bind_input.h:59
common::FileScanInfo fileScanInfo
Definition bind_input.h:58
std::vector< common::LogicalType > expectedColumnTypes
Definition bind_input.h:60
Definition bind_input.h:30
const TARGET * constPtrCast() const
Definition bind_input.h:34
optional_params_t optionalParams
Definition bind_input.h:41
std::unique_ptr< ExtraTableFuncBindInput > extraInput
Definition bind_input.h:43
common::Value getValue(common::idx_t idx) const
void addLiteralParam(common::Value value)
T getLiteralVal(common::idx_t idx) const
std::vector< parser::YieldVariable > yieldVariables
Definition bind_input.h:45
binder::expression_vector optionalParamsLegacy
Definition bind_input.h:42
std::shared_ptr< binder::Expression > getParam(common::idx_t idx) const
Definition bind_input.h:51
binder::Binder * binder
Definition bind_input.h:44
binder::expression_vector params
Definition bind_input.h:40
Definition table_function.h:149