Interface IVirtualHeap
A service that manages the run-time memory structure of an execution context.
public interface IVirtualHeap : ISymbolResolver, ISymbolProvider
- Inherited Members
Remarks
⚖️RDCore provides an implementation of this interface licensed under GPLv3.
Methods
Allocate(Uri, VBTypedValue)
Allocates the specified VBTypedValue under the specified symbolUri at the current memory address pointer.
long Allocate(Uri symbolUri, VBTypedValue value)
Parameters
symbolUriUriThe Uri associated with this allocated memory space.
valueVBTypedValueThe VBTypedValue to be allocated.
Returns
Remarks
The RDCore implementation is intended to be thread-safe.
Allocate(Uri, int)
Allocates the specified number of bytes (size) under the specified symbolUri at the current memory address pointer.
long Allocate(Uri symbolUri, int size)
Parameters
symbolUriUriThe Uri associated with this allocated memory space.
sizeintThe size (bytes) of the allocated memory.
Returns
Remarks
The RDCore implementation is intended to be thread-safe.
CreateObject(VBClassModuleSymbol)
Creates a new VBObjectValue for the specified Symbol.
VBObjectValue CreateObject(VBClassModuleSymbol symbol)
Parameters
symbolVBClassModuleSymbolThe VBClassModuleSymbol to instantiate.
Returns
Remarks
The RDCore implementation is intended to be thread-safe.
Deallocate(Uri)
Deallocates the memory space held at the specified Uri.
void Deallocate(Uri symbolUri)
Parameters
symbolUriUriThe semantic ID of the symbol to deallocate.
SetValue(Symbol, VBTypedValue)
Associates the specified VBTypedValue value to the specified Symbol.
void SetValue(Symbol symbol, VBTypedValue value)
Parameters
symbolSymbolThe Symbol receiving the assignment.
valueVBTypedValueThe VBTypedValue to be assigned.
Remarks
The RDCore implementation is intended to be thread-safe.