Marsyas
0.6.0-alpha
|
A symbol table node that symbolises a path component to a record. More...
#include <ExSymTbl.h>
Inherits ExRefCount.
Public Member Functions | |
void | addAliases (std::string path, std::string name) |
void | addRecord (std::string path, ExRecord *sym) |
void | addReserved (std::string path, ExFun *f) |
void | addReserved (std::string path, ExVal v, std::string nm="", int kind=T_CONST) |
ExRecord () | |
ExRecord (int kind) | |
ExRecord (int kind, ExFun *fun, bool reserved) | |
ExRecord (int kind, std::string name, ExVal &value, bool reserved) | |
std::string | getElemType (std::string nm="") |
ExFun * | getFunctionCopy (std::string nm="") |
int | getKind (std::string nm="") |
ExRecord * | getRecord (std::string nm) |
std::string | getType (std::string nm="") |
ExVal | getValue (std::string path="") |
void | import (std::string) |
bool | is_list () |
bool | is_reserved (std::string nm="") |
bool | is_seq () |
bool | params_compare (std::string a, std::string b) |
void | rmv_import (std::string) |
ExRecord * | rmvRecord (std::string path) |
void | setValue (ExVal &v, std::string path="", int elem_pos=-1) |
std::size_t | size () |
virtual | ~ExRecord () |
A symbol table node that symbolises a path component to a record.
A symbol table node that symbolises a path component to a record, i.e.:
A syntax is defined for adding functions as well as defining aliases to those functions. Adding and removing imports is also defined where an import is simply a shortcut that eliminates a portion of the start of the name.
Definition at line 60 of file ExSymTbl.h.
ExRecord | ( | ) |
Definition at line 25 of file ExSymTbl.cpp.
ExRecord | ( | int | kind | ) |
Definition at line 31 of file ExSymTbl.cpp.
Definition at line 38 of file ExSymTbl.cpp.
Definition at line 45 of file ExSymTbl.cpp.
~ExRecord | ( | ) | [virtual] |
Definition at line 54 of file ExSymTbl.cpp.
void addAliases | ( | std::string | path, |
std::string | name | ||
) |
Definition at line 259 of file ExSymTbl.cpp.
Definition at line 271 of file ExSymTbl.cpp.
void addReserved | ( | std::string | path, |
ExFun * | f | ||
) |
Definition at line 361 of file ExSymTbl.cpp.
void addReserved | ( | std::string | path, |
ExVal | v, | ||
std::string | nm = "" , |
||
int | kind = T_CONST |
||
) |
Definition at line 366 of file ExSymTbl.cpp.
std::string getElemType | ( | std::string | nm = "" | ) |
Definition at line 73 of file ExSymTbl.cpp.
ExFun * getFunctionCopy | ( | std::string | nm = "" | ) |
Definition at line 172 of file ExSymTbl.cpp.
int getKind | ( | std::string | nm = "" | ) |
Definition at line 82 of file ExSymTbl.cpp.
Definition at line 111 of file ExSymTbl.cpp.
std::string getType | ( | std::string | nm = "" | ) |
Definition at line 65 of file ExSymTbl.cpp.
Definition at line 416 of file ExSymTbl.cpp.
void import | ( | std::string | a | ) |
Definition at line 424 of file ExSymTbl.cpp.
bool is_list | ( | ) |
Definition at line 99 of file ExSymTbl.cpp.
bool is_reserved | ( | std::string | nm = "" | ) |
Definition at line 91 of file ExSymTbl.cpp.
bool is_seq | ( | ) |
Definition at line 105 of file ExSymTbl.cpp.
bool params_compare | ( | std::string | a, |
std::string | b | ||
) |
Definition at line 123 of file ExSymTbl.cpp.
void rmv_import | ( | std::string | a | ) |
Definition at line 434 of file ExSymTbl.cpp.
Definition at line 319 of file ExSymTbl.cpp.
Definition at line 372 of file ExSymTbl.cpp.
std::size_t size | ( | ) | [inline] |
Definition at line 89 of file ExSymTbl.h.