ALib C++ Library
Library Version: 2412 R0
Documentation generated by doxygen
Loading...
Searching...
No Matches
Scope::VMMembers Struct Reference

Description:

Members used by the virtual machine. This is constructed only with evaluation-time scopes.

Definition at line 79 of file scope.hpp.

#include <scope.hpp>

Collaboration diagram for Scope::VMMembers:
[legend]

Public Field Index:

ScopeCTScope
 
StdVectorMono< ExpressionVal * > NestedExpressions
 Stack of nested expressions called during evaluation. Used to detect cyclic expressions.
 

Public Method Index:

 VMMembers (MonoAllocator &allocator)
 

Field Details:

◆ CTScope

Scope* CTScope

This is a pointer to the compile-time scope, primarily is used to access field Scope::NamedResources. which is only created with compile time scopes. This concept allows creating resources at compile-time which can be used for evaluation.

A sample use case is implemented with the built-in compiler plug-in Strings. When wildcard or regex matching is performed on constant pattern strings, the matching class (which itself "compiles" the pattern once) is created once and reused during evaluation.

Definition at line 96 of file scope.hpp.

◆ NestedExpressions

StdVectorMono<ExpressionVal*> NestedExpressions

Stack of nested expressions called during evaluation. Used to detect cyclic expressions.

Definition at line 99 of file scope.hpp.

Constructor(s) / Destructor Details:

◆ VMMembers()

VMMembers ( MonoAllocator & allocator)
inline

Constructor.

Parameters
allocatorThe allocator of the evaluation scope.b

Definition at line 83 of file scope.hpp.


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