Table of Contents

Class BinaryArithmeticOperatorStaticSemantics

Namespace
RDCore.SDK.Semantics.Static.Abstract
Assembly
RDCore.SDK.dll

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

public abstract record BinaryArithmeticOperatorStaticSemantics : StaticSemantics, IEquatable<StaticSemantics>, IStaticSemantics, IEquatable<BinaryArithmeticOperatorStaticSemantics>
Inheritance
BinaryArithmeticOperatorStaticSemantics
Implements
Derived
Inherited Members

Constructors

BinaryArithmeticOperatorStaticSemantics()

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

protected BinaryArithmeticOperatorStaticSemantics()

Methods

DetermineDeclaredType(StaticEvaluationContext, ExpressionNode, params VBType[])

Determines a static VBType from specified operands.

public override StaticSemanticsEvaluationResult DetermineDeclaredType(StaticEvaluationContext context, ExpressionNode expression, params VBType[] operandDeclaredTypes)

Parameters

context StaticEvaluationContext

The compile-time context this expression is evaluated against.

expression ExpressionNode

The expression node being evaluated.

operandDeclaredTypes VBType[]

The declared type of each operand involved in the evaluation.

Returns

StaticSemanticsEvaluationResult

DetermineOperatorStaticType(StaticEvaluationContext, ExpressionNode, VBType, VBType)

MS-VBAL 5.6.9.3 Arithmetic Operators (static semantics) The operator has the declared type returned by this method, based on the declared type of its operands.

protected virtual StaticSemanticsEvaluationResult DetermineOperatorStaticType(StaticEvaluationContext context, ExpressionNode expression, VBType lhs, VBType rhs)

Parameters

context StaticEvaluationContext

The compile-time context this expression is evaluated against.

expression ExpressionNode

The expression node being evaluated.

lhs VBType

The declared type of the LHS operand.

rhs VBType

The declared type of the RHS operand.

Returns

StaticSemanticsEvaluationResult