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::LogicalGet Class Reference

LogicalGet represents a scan operation from a data source. More...

Inheritance diagram for duckdb::LogicalGet:
Collaboration diagram for duckdb::LogicalGet:

Public Member Functions

 LogicalGet (idx_t table_index, TableFunction function, unique_ptr< FunctionData > bind_data, vector< LogicalType > returned_types, vector< string > returned_names, virtual_column_map_t virtual_columns=virtual_column_map_t())
 
string GetName () const override
 
InsertionOrderPreservingMap< string > ParamsToString () const override
 
optional_ptr< TableCatalogEntryGetTable () const
 Returns the underlying table that is being scanned, or nullptr if there is none.
 
column_t GetAnyColumn () const
 
const LogicalTypeGetColumnType (const ColumnIndex &column_index) const
 
const string & GetColumnName (const ColumnIndex &column_index) const
 
void SetColumnIds (vector< ColumnIndex > &&column_ids)
 
void AddColumnId (column_t column_id)
 
void ClearColumnIds ()
 
const vector< ColumnIndex > & GetColumnIds () const
 
vector< ColumnIndex > & GetMutableColumnIds ()
 
vector< ColumnBindingGetColumnBindings () override
 
idx_t EstimateCardinality (ClientContext &context) override
 
bool TryGetStorageIndex (const ColumnIndex &column_index, StorageIndex &out_index) const
 
void SetScanOrder (unique_ptr< RowGroupOrderOptions > options)
 
vector< idx_tGetTableIndex () const override
 Returns the set of table indexes of this operator.
 
bool SupportSerialization () const override
 Skips the serialization check in VerifyPlan.
 
void Serialize (Serializer &serializer) const override
 
- Public Member Functions inherited from duckdb::LogicalOperator
 LogicalOperator (LogicalOperatorType type)
 
 LogicalOperator (LogicalOperatorType type, vector< unique_ptr< Expression > > expressions)
 
virtual idx_t GetRootIndex ()
 
void PrintColumnBindings ()
 
void ResolveOperatorTypes ()
 Resolve the types of the logical operator and its children.
 
virtual string ToString (ExplainFormat format=ExplainFormat::DEFAULT) const
 
DUCKDB_API void Print ()
 
virtual void Verify (ClientContext &context)
 Debug method: verify that the integrity of expressions & child nodes are maintained.
 
void AddChild (unique_ptr< LogicalOperator > child)
 
void SetEstimatedCardinality (idx_t _estimated_cardinality)
 
void SetParamsEstimatedCardinality (InsertionOrderPreservingMap< string > &result) const
 
virtual unique_ptr< LogicalOperatorCopy (ClientContext &context) const
 
virtual bool RequireOptimizer () const
 
virtual bool HasProjectionMap () const
 
template<class TARGET >
TARGETCast ()
 
template<class TARGET >
const TARGETCast () const
 

Static Public Member Functions

static unique_ptr< LogicalOperatorDeserialize (Deserializer &deserializer)
 
- Static Public Member Functions inherited from duckdb::LogicalOperator
static string ColumnBindingsToString (const vector< ColumnBinding > &bindings)
 
static vector< ColumnBindingGenerateColumnBindings (idx_t table_idx, idx_t column_count)
 
static vector< LogicalTypeMapTypes (const vector< LogicalType > &types, const vector< idx_t > &projection_map)
 
static vector< ColumnBindingMapBindings (const vector< ColumnBinding > &types, const vector< idx_t > &projection_map)
 
static unique_ptr< LogicalOperatorDeserialize (Deserializer &deserializer)
 

Public Attributes

idx_t table_index
 The table index in the current bind context.
 
TableFunction function
 The function that is called.
 
unique_ptr< FunctionDatabind_data
 The bind data of the function.
 
vector< LogicalTypereturned_types
 The types of ALL columns that can be returned by the table function.
 
vector< string > names
 The names of ALL columns that can be returned by the table function.
 
virtual_column_map_t virtual_columns
 A mapping of column index -> type/name for all virtual columns.
 
vector< idx_tprojection_ids
 Columns that are used outside the scan.
 
TableFilterSet table_filters
 Filters pushed down for table scan.
 
vector< Valueparameters
 The set of input parameters for the table function.
 
named_parameter_map_t named_parameters
 The set of named input parameters for the table function.
 
vector< LogicalTypeinput_table_types
 The set of named input table types for the table-in table-out function.
 
vector< string > input_table_names
 The set of named input table names for the table-in table-out function.
 
vector< column_tprojected_input
 For a table-in-out function, the set of projected input columns.
 
ExtraOperatorInfo extra_info
 
shared_ptr< DynamicTableFilterSetdynamic_filters
 Contains a reference to dynamically generated table filters (through e.g. a join up in the tree)
 
optional_idx ordinality_idx
 Information for WITH ORDINALITY.
 
unique_ptr< RowGroupOrderOptionsrow_group_order_options
 Row group order options (if set)
 
- Public Attributes inherited from duckdb::LogicalOperator
LogicalOperatorType type
 The type of the logical operator.
 
vector< unique_ptr< LogicalOperator > > children
 The set of children of the operator.
 
vector< unique_ptr< Expression > > expressions
 The set of expressions contained within the operator, if any.
 
vector< LogicalTypetypes
 The types returned by this logical operator. Set by calling LogicalOperator::ResolveTypes.
 
idx_t estimated_cardinality
 Estimated Cardinality.
 
bool has_estimated_cardinality
 

Static Public Attributes

static constexpr const LogicalOperatorType TYPE = LogicalOperatorType::LOGICAL_GET
 

Protected Member Functions

void ResolveTypes () override
 Resolve types for this specific operator.
 

Private Attributes

vector< ColumnIndexcolumn_ids
 Bound column IDs.
 

Detailed Description

LogicalGet represents a scan operation from a data source.

Member Function Documentation

◆ GetName()

string duckdb::LogicalGet::GetName ( ) const
overridevirtual

Reimplemented from duckdb::LogicalOperator.

◆ ParamsToString()

InsertionOrderPreservingMap< string > duckdb::LogicalGet::ParamsToString ( ) const
overridevirtual

Reimplemented from duckdb::LogicalOperator.

◆ GetAnyColumn()

column_t duckdb::LogicalGet::GetAnyColumn ( ) const

Returns any column to query - preferably the cheapest column This is used when we are running e.g. a COUNT(*) and don't care about the contents of any columns in the table

◆ GetColumnBindings()

vector< ColumnBinding > duckdb::LogicalGet::GetColumnBindings ( )
overridevirtual

Reimplemented from duckdb::LogicalOperator.

◆ EstimateCardinality()

idx_t duckdb::LogicalGet::EstimateCardinality ( ClientContext context)
overridevirtual

Reimplemented from duckdb::LogicalOperator.

◆ GetTableIndex()

vector< idx_t > duckdb::LogicalGet::GetTableIndex ( ) const
overridevirtual

Returns the set of table indexes of this operator.

Reimplemented from duckdb::LogicalOperator.

◆ SupportSerialization()

bool duckdb::LogicalGet::SupportSerialization ( ) const
inlineoverridevirtual

Skips the serialization check in VerifyPlan.

Reimplemented from duckdb::LogicalOperator.

12858 {
12859 return function.verify_serialization;
12860 }
TableFunction function
The function that is called.
Definition duckdb.cpp:12800

◆ Serialize()

void duckdb::LogicalGet::Serialize ( Serializer serializer) const
overridevirtual

Reimplemented from duckdb::LogicalOperator.

◆ ResolveTypes()

void duckdb::LogicalGet::ResolveTypes ( )
overrideprotectedvirtual

Resolve types for this specific operator.

Implements duckdb::LogicalOperator.

Member Data Documentation

◆ extra_info

ExtraOperatorInfo duckdb::LogicalGet::extra_info

Currently stores File Filters (as strings) applied by hive partitioning/complex filter pushdown and sample rate pushed down into the table scan Stored so the can be included in explain output


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