Table of Contents

Namespace RDCore.SDK.Semantics.Static.Abstract

Classes

BinaryArithmeticOperatorStaticSemantics

The binary arithmetic operators' static semantics (MS-VBAL 5.6.9.3): the declared type of each is the plan of its operation, made for the declared types of its operands (PlannedOperatorStaticSemantics).

BinaryLogicalOperatorStaticSemantics

The binary logical operators' static semantics (MS-VBAL 5.6.9.8): the declared type of each is the plan of its operation, made for the declared types of its operands (PlannedOperatorStaticSemantics).

BinaryRelationalOperatorStaticSemantics

Uses pattern-matching rules to encapsulate binary relational operator static semantics as defined in MS-VBAL 5.6.9.5.

PlannedOperatorStaticSemantics

The declared type of an operation, as the plan of the operation has it (OperationPlanner): the one table of the effective types of the operators, consulted for declared types here as it is for values at run time.

StaticEnvironment

What the environment the code is compiled for decides about its static semantics, which no module and no scope says: how wide a pointer is.

StaticSemantics

The class at the base of the static semantics type hierarchy that implements all the static semantic rules defined in MS-VBAL.

UnaryArithmeticOperatorStaticSemantics

The unary arithmetic operators' static semantics (MS-VBAL 5.6.9.3): the declared type of each is the plan of its operation, made for the declared type of its operand (PlannedOperatorStaticSemantics).

Structs

StaticEvaluationContext

The compile-time context an IStaticSemantics rule evaluates an expression against: the name-resolution service, the LexicalScope a SimpleName or MemberAccess expression resolves from (RD-VBAL §2.3.1.2), and the innermost enclosing With block's target type, if any.

StaticSemanticsEvaluationResult

Represents the result of the evaluation of any static semantics.

Interfaces

IStaticSemantics

Represents any static semantics rules.