Interface ISymbolResolver
A service that resolves an identifier name to a Symbol given a scope Uri
and that can look up the value currently bound to a symbol (or address) in the current context.
public interface ISymbolResolver
Methods
GetValue(Symbol)
Gets the IBindingHandle currently associated with the specified Symbol.
IBindingHandle GetValue(Symbol symbol)
Parameters
Returns
Resolve(string, ScopeKind, Uri)
Resolves the specified identifier name as seen from the scope the symbol at
handle belongs to.
SymbolResolutionResult Resolve(string name, ScopeKind scope, Uri handle)
Parameters
namestringThe name of the Symbol to resolve.
scopeScopeKindA memory-scope hint; the compile-time resolver does not consult it.
handleUriThe Uri of the symbol the lookup originates from.
Returns
- SymbolResolutionResult
A SymbolResolutionResult — the bound Symbol, an unbound result, or a DuplicateDeclaration / AmbiguousName error with the colliding candidates.
TryRead(MemoryAddress, out IBindingHandle?)
Gets the IBindingHandle at the specified address in the runtime memory map.
bool TryRead(MemoryAddress address, out IBindingHandle? value)
Parameters
addressMemoryAddressThe memory address to read.
valueIBindingHandleThe retrieved binding, if successful.