Kùzu C++ API
Loading...
Searching...
No Matches
kuzu::catalog::Catalog Class Reference

#include <catalog.h>

Public Member Functions

 Catalog ()
 
 Catalog (const std::string &directory, common::VirtualFileSystem *vfs)
 
virtual ~Catalog ()=default
 
bool containsTable (transaction::Transaction *transaction, const std::string &tableName) const
 
common::table_id_t getTableID (transaction::Transaction *transaction, const std::string &tableName) const
 
std::vector< common::table_id_tgetNodeTableIDs (transaction::Transaction *transaction) const
 
std::vector< common::table_id_tgetRelTableIDs (transaction::Transaction *transaction) const
 
std::string getTableName (transaction::Transaction *transaction, common::table_id_t tableID) const
 
TableCatalogEntrygetTableCatalogEntry (transaction::Transaction *transaction, const std::string &tableName) const
 
TableCatalogEntrygetTableCatalogEntry (transaction::Transaction *transaction, common::table_id_t tableID) const
 
std::vector< NodeTableCatalogEntry * > getNodeTableEntries (transaction::Transaction *transaction) const
 
std::vector< RelTableCatalogEntry * > getRelTableEntries (transaction::Transaction *transaction) const
 
std::vector< RelGroupCatalogEntry * > getRelTableGroupEntries (transaction::Transaction *transaction) const
 
std::vector< RDFGraphCatalogEntry * > getRdfGraphEntries (transaction::Transaction *transaction) const
 
std::vector< TableCatalogEntry * > getTableEntries (transaction::Transaction *transaction) const
 
std::vector< TableCatalogEntry * > getTableEntries (transaction::Transaction *transaction, const common::table_id_vector_t &tableIDs) const
 
bool tableInRDFGraph (transaction::Transaction *transaction, common::table_id_t tableID) const
 
bool tableInRelGroup (transaction::Transaction *transaction, common::table_id_t tableID) const
 
common::table_id_set_t getFwdRelTableIDs (transaction::Transaction *transaction, common::table_id_t nodeTableID) const
 
common::table_id_set_t getBwdRelTableIDs (transaction::Transaction *transaction, common::table_id_t nodeTableID) const
 
common::table_id_t createTableSchema (transaction::Transaction *transaction, const binder::BoundCreateTableInfo &info)
 
void dropTableEntry (transaction::Transaction *transaction, std::string name)
 
void dropTableEntry (transaction::Transaction *transaction, common::table_id_t tableID)
 
void alterTableEntry (transaction::Transaction *transaction, const binder::BoundAlterInfo &info)
 
bool containsSequence (transaction::Transaction *transaction, const std::string &sequenceName) const
 
common::sequence_id_t getSequenceID (transaction::Transaction *transaction, const std::string &sequenceName) const
 
SequenceCatalogEntry * getSequenceCatalogEntry (transaction::Transaction *transaction, common::sequence_id_t sequenceID) const
 
std::vector< SequenceCatalogEntry * > getSequenceEntries (transaction::Transaction *transaction) const
 
common::sequence_id_t createSequence (transaction::Transaction *transaction, const binder::BoundCreateSequenceInfo &info)
 
void dropSequence (transaction::Transaction *transaction, std::string name)
 
void dropSequence (transaction::Transaction *transaction, common::sequence_id_t sequenceID)
 
void createType (transaction::Transaction *transaction, std::string name, common::LogicalType type)
 
common::LogicalType getType (transaction::Transaction *, std::string name)
 
bool containsType (transaction::Transaction *transaction, const std::string &typeName)
 
void addFunction (transaction::Transaction *transaction, CatalogEntryType entryType, std::string name, function::function_set functionSet)
 
void dropFunction (transaction::Transaction *transaction, const std::string &name)
 
void addBuiltInFunction (CatalogEntryType entryType, std::string name, function::function_set functionSet)
 
CatalogSetgetFunctions (transaction::Transaction *transaction) const
 
CatalogEntrygetFunctionEntry (transaction::Transaction *transaction, const std::string &name)
 
std::vector< FunctionCatalogEntry * > getFunctionEntries (transaction::Transaction *transaction) const
 
bool containsMacro (transaction::Transaction *transaction, const std::string &macroName) const
 
void addScalarMacroFunction (transaction::Transaction *transaction, std::string name, std::unique_ptr< function::ScalarMacroFunction > macro)
 
function::ScalarMacroFunction * getScalarMacroFunction (transaction::Transaction *transaction, const std::string &name) const
 
std::vector< std::string > getMacroNames (transaction::Transaction *transaction) const
 
void checkpoint (const std::string &databasePath, common::VirtualFileSystem *fs) const
 
template<class TARGET >
TARGET * ptrCast ()
 

Static Public Member Functions

static std::string genSerialName (const std::string &tableName, const std::string &propertyName)
 

Protected Attributes

std::unique_ptr< CatalogSettables
 

Friends

class main::AttachedKuzuDatabase
 

Constructor & Destructor Documentation

◆ Catalog() [1/2]

kuzu::catalog::Catalog::Catalog ( )

◆ Catalog() [2/2]

kuzu::catalog::Catalog::Catalog ( const std::string & directory,
common::VirtualFileSystem * vfs )

◆ ~Catalog()

virtual kuzu::catalog::Catalog::~Catalog ( )
virtualdefault

Member Function Documentation

◆ addBuiltInFunction()

void kuzu::catalog::Catalog::addBuiltInFunction ( CatalogEntryType entryType,
std::string name,
function::function_set functionSet )

◆ addFunction()

void kuzu::catalog::Catalog::addFunction ( transaction::Transaction * transaction,
CatalogEntryType entryType,
std::string name,
function::function_set functionSet )

◆ addScalarMacroFunction()

void kuzu::catalog::Catalog::addScalarMacroFunction ( transaction::Transaction * transaction,
std::string name,
std::unique_ptr< function::ScalarMacroFunction > macro )

◆ alterTableEntry()

void kuzu::catalog::Catalog::alterTableEntry ( transaction::Transaction * transaction,
const binder::BoundAlterInfo & info )

◆ checkpoint()

void kuzu::catalog::Catalog::checkpoint ( const std::string & databasePath,
common::VirtualFileSystem * fs ) const

◆ containsMacro()

bool kuzu::catalog::Catalog::containsMacro ( transaction::Transaction * transaction,
const std::string & macroName ) const

◆ containsSequence()

bool kuzu::catalog::Catalog::containsSequence ( transaction::Transaction * transaction,
const std::string & sequenceName ) const

◆ containsTable()

bool kuzu::catalog::Catalog::containsTable ( transaction::Transaction * transaction,
const std::string & tableName ) const

◆ containsType()

bool kuzu::catalog::Catalog::containsType ( transaction::Transaction * transaction,
const std::string & typeName )

◆ createSequence()

common::sequence_id_t kuzu::catalog::Catalog::createSequence ( transaction::Transaction * transaction,
const binder::BoundCreateSequenceInfo & info )

◆ createTableSchema()

common::table_id_t kuzu::catalog::Catalog::createTableSchema ( transaction::Transaction * transaction,
const binder::BoundCreateTableInfo & info )

◆ createType()

void kuzu::catalog::Catalog::createType ( transaction::Transaction * transaction,
std::string name,
common::LogicalType type )

◆ dropFunction()

void kuzu::catalog::Catalog::dropFunction ( transaction::Transaction * transaction,
const std::string & name )

◆ dropSequence() [1/2]

void kuzu::catalog::Catalog::dropSequence ( transaction::Transaction * transaction,
common::sequence_id_t sequenceID )

◆ dropSequence() [2/2]

void kuzu::catalog::Catalog::dropSequence ( transaction::Transaction * transaction,
std::string name )

◆ dropTableEntry() [1/2]

void kuzu::catalog::Catalog::dropTableEntry ( transaction::Transaction * transaction,
common::table_id_t tableID )

◆ dropTableEntry() [2/2]

void kuzu::catalog::Catalog::dropTableEntry ( transaction::Transaction * transaction,
std::string name )

◆ genSerialName()

static std::string kuzu::catalog::Catalog::genSerialName ( const std::string & tableName,
const std::string & propertyName )
static

◆ getBwdRelTableIDs()

common::table_id_set_t kuzu::catalog::Catalog::getBwdRelTableIDs ( transaction::Transaction * transaction,
common::table_id_t nodeTableID ) const

◆ getFunctionEntries()

std::vector< FunctionCatalogEntry * > kuzu::catalog::Catalog::getFunctionEntries ( transaction::Transaction * transaction) const

◆ getFunctionEntry()

CatalogEntry * kuzu::catalog::Catalog::getFunctionEntry ( transaction::Transaction * transaction,
const std::string & name )

◆ getFunctions()

CatalogSet * kuzu::catalog::Catalog::getFunctions ( transaction::Transaction * transaction) const

◆ getFwdRelTableIDs()

common::table_id_set_t kuzu::catalog::Catalog::getFwdRelTableIDs ( transaction::Transaction * transaction,
common::table_id_t nodeTableID ) const

◆ getMacroNames()

std::vector< std::string > kuzu::catalog::Catalog::getMacroNames ( transaction::Transaction * transaction) const

◆ getNodeTableEntries()

std::vector< NodeTableCatalogEntry * > kuzu::catalog::Catalog::getNodeTableEntries ( transaction::Transaction * transaction) const

◆ getNodeTableIDs()

std::vector< common::table_id_t > kuzu::catalog::Catalog::getNodeTableIDs ( transaction::Transaction * transaction) const

◆ getRdfGraphEntries()

std::vector< RDFGraphCatalogEntry * > kuzu::catalog::Catalog::getRdfGraphEntries ( transaction::Transaction * transaction) const

◆ getRelTableEntries()

std::vector< RelTableCatalogEntry * > kuzu::catalog::Catalog::getRelTableEntries ( transaction::Transaction * transaction) const

◆ getRelTableGroupEntries()

std::vector< RelGroupCatalogEntry * > kuzu::catalog::Catalog::getRelTableGroupEntries ( transaction::Transaction * transaction) const

◆ getRelTableIDs()

std::vector< common::table_id_t > kuzu::catalog::Catalog::getRelTableIDs ( transaction::Transaction * transaction) const

◆ getScalarMacroFunction()

function::ScalarMacroFunction * kuzu::catalog::Catalog::getScalarMacroFunction ( transaction::Transaction * transaction,
const std::string & name ) const

◆ getSequenceCatalogEntry()

SequenceCatalogEntry * kuzu::catalog::Catalog::getSequenceCatalogEntry ( transaction::Transaction * transaction,
common::sequence_id_t sequenceID ) const

◆ getSequenceEntries()

std::vector< SequenceCatalogEntry * > kuzu::catalog::Catalog::getSequenceEntries ( transaction::Transaction * transaction) const

◆ getSequenceID()

common::sequence_id_t kuzu::catalog::Catalog::getSequenceID ( transaction::Transaction * transaction,
const std::string & sequenceName ) const

◆ getTableCatalogEntry() [1/2]

TableCatalogEntry * kuzu::catalog::Catalog::getTableCatalogEntry ( transaction::Transaction * transaction,
common::table_id_t tableID ) const

◆ getTableCatalogEntry() [2/2]

TableCatalogEntry * kuzu::catalog::Catalog::getTableCatalogEntry ( transaction::Transaction * transaction,
const std::string & tableName ) const

◆ getTableEntries() [1/2]

std::vector< TableCatalogEntry * > kuzu::catalog::Catalog::getTableEntries ( transaction::Transaction * transaction) const

◆ getTableEntries() [2/2]

std::vector< TableCatalogEntry * > kuzu::catalog::Catalog::getTableEntries ( transaction::Transaction * transaction,
const common::table_id_vector_t & tableIDs ) const

◆ getTableID()

common::table_id_t kuzu::catalog::Catalog::getTableID ( transaction::Transaction * transaction,
const std::string & tableName ) const

◆ getTableName()

std::string kuzu::catalog::Catalog::getTableName ( transaction::Transaction * transaction,
common::table_id_t tableID ) const

◆ getType()

common::LogicalType kuzu::catalog::Catalog::getType ( transaction::Transaction * ,
std::string name )

◆ ptrCast()

template<class TARGET >
TARGET * kuzu::catalog::Catalog::ptrCast ( )
inline

◆ tableInRDFGraph()

bool kuzu::catalog::Catalog::tableInRDFGraph ( transaction::Transaction * transaction,
common::table_id_t tableID ) const

◆ tableInRelGroup()

bool kuzu::catalog::Catalog::tableInRelGroup ( transaction::Transaction * transaction,
common::table_id_t tableID ) const

Friends And Related Symbol Documentation

◆ main::AttachedKuzuDatabase

friend class main::AttachedKuzuDatabase
friend

Member Data Documentation

◆ tables

std::unique_ptr<CatalogSet> kuzu::catalog::Catalog::tables
protected

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