129 #if ALIB_DEBUG_CRITICAL_SECTIONS
179 virtual void Reset();
monomem::TMonoAllocator< lang::HeapAllocator > MonoAllocator
strings::TString< nchar > NString
Type alias in namespace alib.
containers::SharedPtr< format::Formatter > SPFormatter
expressions::Scope ExpressionScope
Type alias in namespace alib. Renamed to not collide with #"alib::lox::Scope;3".
containers::HashMap< TAllocator, TKey, TMapped, THash, TEqual, THashCaching, TRecycling > HashMap
Type alias in namespace alib.
std::vector< T, StdMA< T > > StdVectorMA
Type alias in namespace alib.
lox::Scope Scope
Type alias in namespace alib.
virtual ~ScopeResource()
The virtual destructor needed for virtual types.
Members used by the virtual machine. This is constructed only with evaluation-time scopes.
StdVectorMA< ExpressionVal * > NestedExpressions
Stack of nested expressions called during evaluation. Used to detect cyclic expressions.
VMMembers(MonoAllocator &allocator)
VMMembers * EvalScopeVMMembers
The members used for the virtual machine. Available only with evaluation-time instances.
virtual ~Scope()
Virtual destructor.
void operator=(const Scope &)=delete
Deleted copy assignment.
StdVectorMA< Box > * Stack
virtual void freeResources()
This method is called in the destructor, as well as in method #"Scope::Reset".
Scope(SPFormatter &formatter)
MonoAllocator & Allocator
HashMap< MonoAllocator, NString, ScopeResource * > * NamedResources
lang::DbgCriticalSections DCS
Scope(const Scope &)=delete
Deleted copy constructor.
MonoAllocator * EvalScopeAllocator
Base class exported by the main module #"F;ALib.Expressions.H" for technical reasons.