taco-db  0.1.0
Public Member Functions | Static Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | Friends | List of all members
taco::SysTable_Function Class Reference

SysTable_Function is an in-memory cached record in the system catalog SysTable_Function. More...

#include <catalog/systables/Function.h>

Public Member Functions

constexpr Oid funcid () const
 Returns the function ID. More...
 
constexpr int16_t funcnargs () const
 Returns the number of arguments. More...
 
constexpr Oid funcrettypid () const
 Returns the return type id. More...
 
constexpr const std::string & funcname () const
 Returns the function name. More...
 

Static Public Member Functions

static constexpr FieldId funcid_colid ()
 
static constexpr FieldId funcnargs_colid ()
 
static constexpr FieldId funcrettypid_colid ()
 
static constexpr FieldId funcname_colid ()
 

Private Member Functions

 SysTable_Function (Oid funcid, int16_t funcnargs, Oid funcrettypid, std::string funcname)
 
std::vector< DatumGetDatumVector () const
 Returns all the fields as a datum vector. More...
 
 SysTable_Function (const SysTable_Function &)=default
 
SysTable_Functionoperator= (const SysTable_Function &)=default
 

Static Private Member Functions

static SysTable_FunctionCreate (const std::vector< Datum > &)
 Creates a new SysTable_Function with a data vector read from some record payload. More...
 

Private Attributes

Oid m_funcid
 
int16_t m_funcnargs
 
Oid m_funcrettypid
 
std::string m_funcname
 

Friends

class BootstrapCatCache
 
class CatCacheInternalAccess
 

Detailed Description

SysTable_Function is an in-memory cached record in the system catalog SysTable_Function.

Constructor & Destructor Documentation

◆ SysTable_Function() [1/2]

taco::SysTable_Function::SysTable_Function ( Oid  funcid,
int16_t  funcnargs,
Oid  funcrettypid,
std::string  funcname 
)
inlineprivate

◆ SysTable_Function() [2/2]

taco::SysTable_Function::SysTable_Function ( const SysTable_Function )
privatedefault

Member Function Documentation

◆ Create()

SysTable_Function * taco::SysTable_Function::Create ( const std::vector< Datum > &  data)
staticprivate

Creates a new SysTable_Function with a data vector read from some record payload.

This function is private and only accessible to the catalog cache implementation.

◆ funcid()

constexpr Oid taco::SysTable_Function::funcid ( ) const
inlineconstexpr

Returns the function ID.

◆ funcid_colid()

static constexpr FieldId taco::SysTable_Function::funcid_colid ( )
inlinestaticconstexpr

◆ funcname()

constexpr const std::string& taco::SysTable_Function::funcname ( ) const
inlineconstexpr

Returns the function name.

◆ funcname_colid()

static constexpr FieldId taco::SysTable_Function::funcname_colid ( )
inlinestaticconstexpr

◆ funcnargs()

constexpr int16_t taco::SysTable_Function::funcnargs ( ) const
inlineconstexpr

Returns the number of arguments.

◆ funcnargs_colid()

static constexpr FieldId taco::SysTable_Function::funcnargs_colid ( )
inlinestaticconstexpr

◆ funcrettypid()

constexpr Oid taco::SysTable_Function::funcrettypid ( ) const
inlineconstexpr

Returns the return type id.

If it is InvalidOid (0), this function does not have a return value (i.e., the return value is always NULL)..

◆ funcrettypid_colid()

static constexpr FieldId taco::SysTable_Function::funcrettypid_colid ( )
inlinestaticconstexpr

◆ GetDatumVector()

std::vector< Datum > taco::SysTable_Function::GetDatumVector ( ) const
private

Returns all the fields as a datum vector.

Note that the entry itself must be kept alive when the datum vector is accessed, as we may return references without copying the underlying data. This function is private and only accessible to the catalog cache implementation.

◆ operator=()

SysTable_Function& taco::SysTable_Function::operator= ( const SysTable_Function )
privatedefault

Friends And Related Function Documentation

◆ BootstrapCatCache

friend class BootstrapCatCache
friend

◆ CatCacheInternalAccess

friend class CatCacheInternalAccess
friend

Member Data Documentation

◆ m_funcid

Oid taco::SysTable_Function::m_funcid
private

◆ m_funcname

std::string taco::SysTable_Function::m_funcname
private

◆ m_funcnargs

int16_t taco::SysTable_Function::m_funcnargs
private

◆ m_funcrettypid

Oid taco::SysTable_Function::m_funcrettypid
private

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