Interface IBindingHandle
A handle to a binding to a runtime entity.
public interface IBindingHandle
Remarks
The value operations take ISymbolResolver — the read face over the current execution context — so a handle that is not self-contained (a reference to another address, a property- or member-backed binding) can resolve its value through the same read protocol that produced it. The self-contained literal/value/reference cases ignore it today.
Properties
BindingCapabilities
Indicates the valid members of this binding.
BindingCapabilities BindingCapabilities { get; }
Property Value
Value
The bound runtime value, read without a resolver.
IRuntimeValue Value { get; }
Property Value
Remarks
👉 A direct read for the common literal/value cases. Handles that resolve a value lazily or via a reference still expose GetValue(ISymbolResolver).
Exceptions
- NotSupportedException
The binding has no readable value.
Methods
GetValue(ISymbolResolver)
Gets the value associated to this handle, resolving through resolver when
the binding is not self-contained.
IRuntimeValue GetValue(ISymbolResolver resolver)
Parameters
resolverISymbolResolver
Returns
Remarks
👉 Verify that the binding supports GetValue.
Exceptions
Invoke(ISymbolResolver, IRuntimeValue[])
Invokes the callable entity associated to this handle.
IRuntimeValue Invoke(ISymbolResolver resolver, IRuntimeValue[] args)
Parameters
resolverISymbolResolverargsIRuntimeValue[]
Returns
Remarks
👉 Verify that the binding supports Invoke.
Exceptions
SetValue(ISymbolResolver, IRuntimeValue)
Sets the value associated to this handle.
void SetValue(ISymbolResolver resolver, IRuntimeValue value)
Parameters
resolverISymbolResolvervalueIRuntimeValue
Remarks
👉 Verify that the binding supports SetValue.