The context of execution.
Definition context.h:42
size_t getLoadlevel() const
Getter for load level.
Definition context.h:128
SOK os_
The operand stack.
Definition context.h:44
uint32_t getSeed() const
Getter for seed_.
Definition context.h:158
Context & operator=(const Context &)=delete
Delete copy assignement.
void setRealprecision(size_t p_prec)
Setter for realprecision_.
Definition context.h:149
void stopInterpreterLoop()
Sets run_ to false.
Definition context.h:140
Context(Context &&)=delete
Delete the move ctor.
SOK ds_
The dictionary stack.
Definition context.h:46
void decArraynesting()
Decrements array nesting.
Definition context.h:196
void status_statistics()
Snapshot of Context state to cout.
Definition context.cpp:240
uint32_t seed_
Context Property.
Definition context.h:58
virtual ~Context()
Dtor.
Definition context.cpp:64
void stack_statistics()
Snapshot of stacks to cout.
Definition context.cpp:251
bool invariant() const noexcept override
Checks class invariants.
Definition context.h:70
SOK & opst()
Access to the operand stack.
Definition context.h:110
void property_statistics()
Snapshot of Context properties to cout.
Definition context.cpp:228
size_t getMaxloadlevel() const
Getter for maximum load level.
Definition context.h:134
auto getAngularUnit() const
Getter for angularunit_.
Definition context.h:152
void incProclevel()
Increments the procedure level.
Definition context.h:166
bool run_
Control variable for the interpreter loop.
Definition context.h:47
int loadlevel_
The load level is incemented for ever load_exec() call.
Definition context.h:50
void incArraynesting()
Increments array nesting.
Definition context.h:190
void setAngularUnit(AngularUnit p_unit)
Setter for angularunit_.
Definition context.h:155
Context()
Ctor.
Definition context.cpp:35
size_t getArraynesting() const
Getter for nesting level.
Definition context.h:131
AngularUnit angularunit_
Context Property.
Definition context.h:55
void decLoadlevel()
Decrements load level.
Definition context.h:184
std::ostream & getCout()
Getter for cout_.
Definition context.h:120
size_t realprecision_
Context Property.
Definition context.h:56
static constexpr size_t mindictstack_
Corresponds with the setup in the ctor.
Definition context.h:62
bool getInterpreterLoop() const
Getter for interpreter loop control variable run_.
Definition context.h:137
void setSnapLeonline(const std::string &p_line)
Setter for snapLeonline_.
Definition context.h:143
std::string snapLeonline_
For debugging purposes a copy of the current leon-format line.
Definition context.h:43
int arraynesting_
The nesting level is incemented for every array within an array for the bind operator.
Definition context.h:52
void decProclevel()
Decrements the procedure level.
Definition context.h:172
SOK & exst()
Access to the execution stack.
Definition context.h:113
void setSeed(uint32_t p_seed)
Setter for seed_.
Definition context.h:161
SOK & dist()
Access to the dictionary stack.
Definition context.h:116
size_t maxloadlevel_
Context Property.
Definition context.h:57
int proclevel_
The process level is incremented for every '{' on input.
Definition context.h:48
Context & operator=(Context &&)=delete
Delete move assignement.
size_t getProclevel() const
Getter for procedure level.
Definition context.h:125
static const std::map< const char *, core_t * > systemdictmap_
Maps SON data to SOO data for the systemdict.
Definition context.h:76
Context(const Context &)=delete
Delete the copy ctor.
size_t getRealprecision() const
Getter for realprecision_.
Definition context.h:146
void incLoadlevel()
Increments load level.
Definition context.h:178
static const std::map< const char *, core_t * > leodictmap_
Maps SON data to SOO data for the leodict.
Definition context.h:203
SOK es_
The execution stack.
Definition context.h:45
Counter base class.
Definition counter.h:27
Design by contract interface class.
Definition dbc.h:26
static auto get()
Get the singleton pointer.
Definition interpreter.h:101
Semantic Object stacK.
Definition sok.h:44
Helpers for design by contract idioms.
#define DBC_INV_RAII(TT)
Defines an instance of the class DbCRAIIassert<>, which calls the invariant()-function at the return ...
Definition dbc.h:71
Miscellaneous definitions and functions.
AngularUnit
Angular Unit for trigonometric functions.
Definition helper.h:81
The class SOK - semantik object stack.