Autonomy Software C++ 24.5.1
Welcome to the Autonomy Software repository of the Mars Rover Design Team (MRDT) at Missouri University of Science and Technology (Missouri S&T)! API reference contains the source code and other resources for the development of the autonomy software for our Mars rover. The Autonomy Software project aims to compete in the University Rover Challenge (URC) by demonstrating advanced autonomous capabilities and robust navigation algorithms.
Loading...
Searching...
No Matches
duckdb::TableFunctionInitInput Struct Reference
Collaboration diagram for duckdb::TableFunctionInitInput:

Public Member Functions

 TableFunctionInitInput (optional_ptr< const FunctionData > bind_data_p, vector< column_t > column_ids_p, const vector< idx_t > &projection_ids_p, optional_ptr< TableFilterSet > filters_p, optional_ptr< SampleOptions > sample_options_p=nullptr, optional_ptr< const PhysicalOperator > op_p=nullptr)
 
 TableFunctionInitInput (optional_ptr< const FunctionData > bind_data_p, vector< ColumnIndex > column_indexes_p, const vector< idx_t > &projection_ids_p, optional_ptr< TableFilterSet > filters_p, optional_ptr< SampleOptions > sample_options_p=nullptr, optional_ptr< const PhysicalOperator > op_p=nullptr)
 
bool CanRemoveFilterColumns () const
 

Public Attributes

optional_ptr< const FunctionDatabind_data
 
vector< column_tcolumn_ids
 
vector< ColumnIndexcolumn_indexes
 
const vector< idx_tprojection_ids
 
optional_ptr< TableFilterSetfilters
 
optional_ptr< SampleOptionssample_options
 
optional_ptr< const PhysicalOperatorop
 

Constructor & Destructor Documentation

◆ TableFunctionInitInput() [1/2]

duckdb::TableFunctionInitInput::TableFunctionInitInput ( optional_ptr< const FunctionData bind_data_p,
vector< column_t column_ids_p,
const vector< idx_t > &  projection_ids_p,
optional_ptr< TableFilterSet filters_p,
optional_ptr< SampleOptions sample_options_p = nullptr,
optional_ptr< const PhysicalOperator op_p = nullptr 
)
inline
26264 : bind_data(bind_data_p), column_ids(std::move(column_ids_p)), projection_ids(projection_ids_p),
26265 filters(filters_p), sample_options(sample_options_p), op(op_p) {
26266 for (auto &col_id : column_ids) {
26267 column_indexes.emplace_back(col_id);
26268 }
26269 }

◆ TableFunctionInitInput() [2/2]

duckdb::TableFunctionInitInput::TableFunctionInitInput ( optional_ptr< const FunctionData bind_data_p,
vector< ColumnIndex column_indexes_p,
const vector< idx_t > &  projection_ids_p,
optional_ptr< TableFilterSet filters_p,
optional_ptr< SampleOptions sample_options_p = nullptr,
optional_ptr< const PhysicalOperator op_p = nullptr 
)
inline
26275 : bind_data(bind_data_p), column_indexes(std::move(column_indexes_p)), projection_ids(projection_ids_p),
26276 filters(filters_p), sample_options(sample_options_p), op(op_p) {
26277 for (auto &col_id : column_indexes) {
26278 column_ids.emplace_back(col_id.GetPrimaryIndex());
26279 }
26280 }

Member Function Documentation

◆ CanRemoveFilterColumns()

bool duckdb::TableFunctionInitInput::CanRemoveFilterColumns ( ) const
inline
26290 {
26291 if (projection_ids.empty()) {
26292 // No filter columns to remove.
26293 return false;
26294 }
26295 if (projection_ids.size() == column_ids.size()) {
26296 // Filter column is used in remainder of plan, so we cannot remove it.
26297 return false;
26298 }
26299 // Fewer columns need to be projected out than that we scan.
26300 return true;
26301 }

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