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::BindInfo Struct Reference
Collaboration diagram for duckdb::BindInfo:

Public Member Functions

 BindInfo (ScanType type_p)
 
 BindInfo (TableCatalogEntry &table)
 
void InsertOption (const string &name, Value value)
 
template<class T >
GetOption (const string &name)
 
template<class T >
vector< T > GetOptionList (const string &name)
 

Public Attributes

unordered_map< string, Valueoptions
 
ScanType type
 
optional_ptr< TableCatalogEntrytable
 

Constructor & Destructor Documentation

◆ BindInfo() [1/2]

duckdb::BindInfo::BindInfo ( ScanType  type_p)
inlineexplicit
26392: type(type_p) {};

◆ BindInfo() [2/2]

duckdb::BindInfo::BindInfo ( TableCatalogEntry table)
inlineexplicit
26393: type(ScanType::TABLE), table(&table) {};

Member Function Documentation

◆ InsertOption()

void duckdb::BindInfo::InsertOption ( const string &  name,
Value  value 
)
inline
26399 { // NOLINT: work-around bug in clang-tidy
26400 if (options.find(name) != options.end()) {
26401 throw InternalException("This option already exists");
26402 }
26403 options.emplace(name, std::move(value));
26404 }

◆ GetOption()

template<class T >
T duckdb::BindInfo::GetOption ( const string &  name)
inline
26406 {
26407 if (options.find(name) == options.end()) {
26408 throw InternalException("This option does not exist");
26409 }
26410 return options[name].GetValue<T>();
26411 }

◆ GetOptionList()

template<class T >
vector< T > duckdb::BindInfo::GetOptionList ( const string &  name)
inline
26413 {
26414 if (options.find(name) == options.end()) {
26415 throw InternalException("This option does not exist");
26416 }
26417 auto option = options[name];
26418 if (option.type().id() != LogicalTypeId::LIST) {
26419 throw InternalException("This option is not a list");
26420 }
26421 vector<T> result;
26422 auto list_children = ListValue::GetChildren(option);
26423 for (auto &child : list_children) {
26424 result.emplace_back(child.GetValue<T>());
26425 }
26426 return result;
26427 }

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