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

A macro function in the catalog. More...

Inheritance diagram for duckdb::MacroCatalogEntry:
Collaboration diagram for duckdb::MacroCatalogEntry:

Public Member Functions

 MacroCatalogEntry (Catalog &catalog, SchemaCatalogEntry &schema, CreateMacroInfo &info)
 
unique_ptr< CreateInfoGetInfo () const override
 
string ToSQL () const override
 Convert the catalog entry to a SQL string that can be used to re-construct the catalog entry.
 
- Public Member Functions inherited from duckdb::FunctionEntry
 FunctionEntry (CatalogType type, Catalog &catalog, SchemaCatalogEntry &schema, CreateFunctionInfo &info)
 
- Public Member Functions inherited from duckdb::StandardEntry
 StandardEntry (CatalogType type, SchemaCatalogEntry &schema, Catalog &catalog, string name)
 
SchemaCatalogEntryParentSchema () override
 
const SchemaCatalogEntryParentSchema () const override
 
- Public Member Functions inherited from duckdb::InCatalogEntry
 InCatalogEntry (CatalogType type, Catalog &catalog, string name)
 
CatalogParentCatalog () override
 
const CatalogParentCatalog () const override
 
void Verify (Catalog &catalog) override
 
- Public Member Functions inherited from duckdb::CatalogEntry
 CatalogEntry (CatalogType type, Catalog &catalog, string name)
 
 CatalogEntry (CatalogType type, string name, idx_t oid)
 
virtual unique_ptr< CatalogEntryAlterEntry (ClientContext &context, AlterInfo &info)
 
virtual unique_ptr< CatalogEntryAlterEntry (CatalogTransaction transaction, AlterInfo &info)
 
virtual void UndoAlter (ClientContext &context, AlterInfo &info)
 
virtual void Rollback (CatalogEntry &prev_entry)
 
virtual void OnDrop ()
 
virtual unique_ptr< CatalogEntryCopy (ClientContext &context) const
 
virtual void SetAsRoot ()
 Sets the CatalogEntry as the new root entry (i.e. the newest entry)
 
void Serialize (Serializer &serializer) const
 
void SetChild (unique_ptr< CatalogEntry > child)
 
unique_ptr< CatalogEntryTakeChild ()
 
bool HasChild () const
 
bool HasParent () const
 
CatalogEntryChild ()
 
CatalogEntryParent ()
 
const CatalogEntryParent () const
 
template<class TARGET >
TARGETCast ()
 
template<class TARGET >
const TARGETCast () const
 

Public Attributes

vector< unique_ptr< MacroFunction > > macros
 The macro function.
 
- Public Attributes inherited from duckdb::FunctionEntry
string alias_of
 
vector< FunctionDescriptiondescriptions
 
- Public Attributes inherited from duckdb::StandardEntry
SchemaCatalogEntryschema
 The schema the entry belongs to.
 
LogicalDependencyList dependencies
 The dependencies of the entry, can be empty.
 
- Public Attributes inherited from duckdb::InCatalogEntry
Catalogcatalog
 The catalog the entry belongs to.
 
- Public Attributes inherited from duckdb::CatalogEntry
idx_t oid
 The oid of the entry.
 
CatalogType type
 The type of this catalog entry.
 
optional_ptr< CatalogSetset
 Reference to the catalog set this entry is stored in.
 
string name
 The name of the entry.
 
bool deleted
 Whether or not the object is deleted.
 
bool temporary
 Whether or not the object is temporary and should not be added to the WAL.
 
bool internal
 Whether or not the entry is an internal entry (cannot be deleted, not dumped, etc)
 
atomic< transaction_ttimestamp
 Timestamp at which the catalog entry was created.
 
Value comment
 (optional) comment on this entry
 
InsertionOrderPreservingMap< string > tags
 (optional) extra data associated with this entry
 

Additional Inherited Members

- Static Public Member Functions inherited from duckdb::CatalogEntry
static unique_ptr< CreateInfoDeserialize (Deserializer &deserializer)
 

Detailed Description

A macro function in the catalog.

Constructor & Destructor Documentation

◆ MacroCatalogEntry()

duckdb::MacroCatalogEntry::MacroCatalogEntry ( Catalog catalog,
SchemaCatalogEntry schema,
CreateMacroInfo info 
)
14524 : FunctionEntry(
14525 (info.macros[0]->type == MacroType::SCALAR_MACRO ? CatalogType::MACRO_ENTRY : CatalogType::TABLE_MACRO_ENTRY),
14526 catalog, schema, info),
14527 macros(std::move(info.macros)) {
14528 this->temporary = info.temporary;
14529 this->internal = info.internal;
14530 this->dependencies = info.dependencies;
14531 this->comment = info.comment;
14532 this->tags = info.tags;
14533}
InsertionOrderPreservingMap< string > tags
(optional) extra data associated with this entry
Definition duckdb.hpp:6323
Value comment
(optional) comment on this entry
Definition duckdb.hpp:6321
bool internal
Whether or not the entry is an internal entry (cannot be deleted, not dumped, etc)
Definition duckdb.hpp:6317
bool temporary
Whether or not the object is temporary and should not be added to the WAL.
Definition duckdb.hpp:6315
Catalog & catalog
The catalog the entry belongs to.
Definition duckdb.hpp:6387
vector< unique_ptr< MacroFunction > > macros
The macro function.
Definition duckdb.cpp:2452
SchemaCatalogEntry & schema
The schema the entry belongs to.
Definition duckdb.hpp:28008
LogicalDependencyList dependencies
The dependencies of the entry, can be empty.
Definition duckdb.hpp:28010

Member Function Documentation

◆ GetInfo()

unique_ptr< CreateInfo > duckdb::MacroCatalogEntry::GetInfo ( ) const
overridevirtual

Reimplemented from duckdb::CatalogEntry.

14557 {
14558 auto info = make_uniq<CreateMacroInfo>(type);
14559 info->catalog = catalog.GetName();
14560 info->schema = schema.name;
14561 info->name = name;
14562 for (auto &function : macros) {
14563 info->macros.push_back(function->Copy());
14564 }
14565 info->dependencies = dependencies;
14566 info->comment = comment;
14567 info->tags = tags;
14568 return std::move(info);
14569}
string name
The name of the entry.
Definition duckdb.hpp:6311
DUCKDB_API const string & GetName() const
Returns the catalog name - based on how the catalog was attached.
Definition duckdb.cpp:7165

◆ ToSQL()

string duckdb::MacroCatalogEntry::ToSQL ( ) const
overridevirtual

Convert the catalog entry to a SQL string that can be used to re-construct the catalog entry.

Reimplemented from duckdb::CatalogEntry.

14571 {
14572 auto create_info = GetInfo();
14573 return create_info->ToString();
14574}

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