Namespace RDCore.SDK.Semantics.Binding
Classes
- ArgumentMap
The arguments of a call mapped to the parameters of the procedure it calls (Map(ImmutableArray<VBParameterSymbol>, ImmutableArray<ExpressionNode>)).
- ArgumentMapping
Maps the arguments of a call to the parameters of the procedure it calls, and binds how each is passed (MS-VBAL §5.3.1.11).
- BoundArgument
The argument a call gives one parameter of the procedure it calls, bound (MS-VBAL §5.3.1.11): which of the arguments written at the call it is, and how it is passed - decided once, from the declarations and the arguments as they are written, rather than each time the call is made.
- BoundArray
The
Arrayspecial form (MS-VBAL §3.3.5.2): aVariantholding an array of its arguments, whose lower bound is theOption Baseof the module it is written in.
- BoundArrayBound
An
LBoundorUBoundspecial form (MS-VBAL §3.3.5.2), and its operands.
- BoundAssignment
What an assignment binds to: its target and its value, and the plan of the let-coercion of the value to the target.
- BoundBinary
A binary operation (MS-VBAL §5.6.9), its operands, and its plan.
- BoundCall
A call of a procedure the name before its argument list resolves to (MS-VBAL §5.6.13): a
Sub, aFunctionor aProperty Getof the workspace or of a library, by its bare name.
- BoundDictionaryAccess
A dictionary access (MS-VBAL §5.6.14):
c!key, the default member of the object called with the name after the bang as aString.
- BoundError
An expression the static semantics refuse - a compile error (RD-VBAL §2.6.2) - and its run-time counterpart.
- BoundExpression
What an expression binds to (IR lowering §3.3): its declared type, or the compile error it is, and for an operation the plan of the operation, made for the declared types of its operands.
- BoundIndex
An index expression whose callee is a value (MS-VBAL §5.6.13) - a variable, a variable of a module named through it, what a call returns (
F()(1)): an element of the array it is -a(i)- or a call of the default member of the object it is -c(1), which isc.Item(1).
- BoundInstance
The
Mekeyword (MS-VBAL §5.6.11): the object the procedure it is written in was invoked on, which is the procedure's implicit first parameter.
- BoundLate
An expression that is bound late: what its name or its type is, is resolved each time it is evaluated, as MS-VBAL's run-time semantics resolve it.
- BoundLiteral
A literal (MS-VBAL §5.6.5).
- BoundMember
A member of an object whose declared type is a class (MS-VBAL §5.6.12), read -
c.Value- or called with the arguments written after it (§5.6.13) -c.Add 1,c.Item(1): aSub, aFunctionor aProperty Getof the class.
- BoundName
A simple name (MS-VBAL §5.6.10), and the symbol it resolves to.
- BoundNew
A
Newexpression (MS-VBAL §5.6.10'sNewkeyword, §5.2.3.1.4), and the class it creates an object of.
- BoundNode
A node of the bound tree (IR lowering §3.1): an expression, with what the static semantics decided of it once - what a name refers to, the plan of an operation - so that evaluating it does not decide it again.
- BoundPrecompilerName
A conditional-compilation constant's name (MS-VBAL §3.4), evaluated where the code reads it.
- BoundQualifiedName
A name qualified by the project or the procedural module it is a member of, or by the enumeration it is a member of (MS-VBAL §5.6.12):
Constants.vbCrLf,Module1.Count,Color.Red- not a member of a value, but what the name means unqualified there.
- BoundTypeOf
A
TypeOf … Isexpression (MS-VBAL §5.6.9.9), its operand, and the class it tests the operand's object against.
- BoundUnary
A unary operation (MS-VBAL §5.6.9), or a pair of parentheses (§5.6.6), and its operand.
- BoundVariable
A simple name that is a variable: a parameter, a local or
Staticvariable, or a field (MS-VBAL §5.6.10), whose value is read.
- ExpressionBinder
Binds expressions (IR lowering §3.3): each to its declared type, as the static semantics evaluate it, and each operation to its OperationPlan, made for the declared types of its operands - final when they decide it, deferred when a value does.
- ExpressionBindings
What the expressions of a tree bind to, recorded as the static semantics evaluate them: an operand before the expression that has it.
- FrameLayout
The slots of an activation of a procedure (IR lowering §3.1, D2): one for each of its parameters and of the variables it declares, which a bound name of the procedure is bound to by number rather than looked up by its symbol each time it is read.
Structs
- FrameSlot
A slot of a FrameLayout.
Enums
- ArgumentMappingError
What goes wrong mapping the arguments of a call to the parameters of the procedure it calls (MS-VBAL §5.3.1.11).
- ArgumentPassing
How the argument of a parameter is passed (MS-VBAL §5.3.1.11), as far as the declarations and the argument as it is written decide it.