|
|
||||||
|
Public Member Functions |
Static Public Member Functions |
Protected Member Functions |
Private Attributes |
List of all members
faudes::SymbolTable Class Reference Detailed DescriptionA SymbolTable associates sybolic names with indices. Symbolic names are restricted to printable ascii, no quoatation ("), no hash (#) and no blanks. Indices are of type faudes Idx aka (long unsigned) integer and must be positive. Both, indices and symbolic names must be unique within each SymbolTable. Consistency checks on input data are preformed, regardless of the FAUDES_CHECKED compiletime option. Generators refer to a global symboltable for event names and hold a local symboltable for state names. Definition at line 61 of file cfl_symboltable.h.
Constructor & Destructor Documentation◆ SymbolTable() [1/2]
Creates a new SymbolTable Definition at line 36 of file cfl_symboltable.cpp. ◆ SymbolTable() [2/2]
Copy constructor Definition at line 43 of file cfl_symboltable.cpp. Member Function Documentation◆ Clear()
Clear all entries Reimplemented from faudes::Type. Definition at line 68 of file cfl_symboltable.cpp. ◆ ClrEntry() [1/2]
Delete entry by symbol
Definition at line 225 of file cfl_symboltable.cpp. ◆ ClrEntry() [2/2]
Delete entry by index
Definition at line 217 of file cfl_symboltable.cpp. ◆ DoAssign()
assign my members Definition at line 48 of file cfl_symboltable.cpp. ◆ DoRead()
Symboltable token io Reimplemented from faudes::Type. Definition at line 318 of file cfl_symboltable.cpp. ◆ DoWrite()
Symboltable token io Reimplemented from faudes::Type. Definition at line 289 of file cfl_symboltable.cpp. ◆ Exists() [1/2]
Test existence of symbol
Definition at line 274 of file cfl_symboltable.cpp. ◆ Exists() [2/2]
Test existence of index
Definition at line 268 of file cfl_symboltable.cpp. ◆ GlobalEventSymbolTablep()
Get Static Symboltable ref (initialize on first use pattern) Definition at line 282 of file cfl_symboltable.cpp. ◆ Index()
Index lookup
Definition at line 248 of file cfl_symboltable.cpp. ◆ InsEntry() [1/2]
Merge a symbolic name with symboltable. If the symbol does not exist, find a new index and add the new entry. If the symbol does exist, lookup its index.
Definition at line 175 of file cfl_symboltable.cpp. ◆ InsEntry() [2/2]Add new entry (aka symbolic name and index) to symboltable,
Definition at line 143 of file cfl_symboltable.cpp. ◆ LastIndex()
Get the largest index in use Definition at line 97 of file cfl_symboltable.cpp. ◆ MaxIndex() [1/2]
Set maximum index which this SymbolTable accepts
Definition at line 86 of file cfl_symboltable.cpp. ◆ MaxIndex() [2/2]
Get maximum index which this SymbolTable accepts Definition at line 81 of file cfl_symboltable.cpp. ◆ Name() [1/2]
Set name of SymbolTable Reimplemented from faudes::Type. Definition at line 63 of file cfl_symboltable.cpp. ◆ Name() [2/2]
Return name of SymbolTable Reimplemented from faudes::Type. Definition at line 58 of file cfl_symboltable.cpp. ◆ operator=()
Assign configurationdata from other object. Derived classes should implement the operator form for the assignment for each source type which allows for a non-trivial assignment. This includes the particular case were the source and destination types match exactly. In the latter case the DoAssign method should be invoked. In contrast to the Assign function, the operator form must not be reimplemented for missmatched source types: the operator form only accepts sensible source types. This allows for compiletime typeckecking. However, the downside is that when the type is not known at compiletime, configuration is not properly assigned. Re-implementation can be done via the convenience macros FAUDES_TYPE_DECLARATION and FAUDES_TYPE_IMPLEMENTATION.
Definition at line 355 of file cfl_types.cpp. ◆ RestrictDomain()
Restrict to specified indicees.
Definition at line 233 of file cfl_symboltable.cpp. ◆ SetDefaultSymbol()
Set default names ("1", "2", "3", ...) for index.
Definition at line 208 of file cfl_symboltable.cpp. ◆ SetEntry()
Set symbolic name for existing entry. If the name is the emptystring, an existing entry is cleared. All other invalid names throw an exception.
Definition at line 183 of file cfl_symboltable.cpp. ◆ Size()
Size of symboltabel Definition at line 76 of file cfl_symboltable.cpp. ◆ Symbol()
Symbolic name lookup
Definition at line 257 of file cfl_symboltable.cpp. ◆ UniqueSymbol()
Create unique symbolic name by adding an underscore and extra digits. The current implementation tries to be smart and overwrites any previously added digits. It is also slow.
Definition at line 119 of file cfl_symboltable.cpp. ◆ ValidSymbol()
Test validiy of candidate symbol. The current implementation insists in printable ascii, no quotes ("), no hash (#) and no blanks.
Definition at line 102 of file cfl_symboltable.cpp. Member Data Documentation◆ mIndexMap
Index lookup map Definition at line 275 of file cfl_symboltable.h. ◆ mMaxIndex
Upper limit (incl) Definition at line 281 of file cfl_symboltable.h. ◆ mMyName
Name of the SymbolTable Definition at line 272 of file cfl_symboltable.h. ◆ mNameMap
Name lookup map Definition at line 278 of file cfl_symboltable.h. ◆ mNextIndex
Largest used index + 1 Definition at line 284 of file cfl_symboltable.h. The documentation for this class was generated from the following files: libFAUDES 2.33h --- 2025.06.18 --- c++ api documentaion by doxygen |