Table of Contents

Class UnaryArithmeticOperatorStaticSemantics

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

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

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

Remarks

This is implicitly the specification for the unary '+' operator, which is omitted from MS-VBAL.

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

A StaticSemanticsEvaluationResult encapsulating the resulting VBType if successful, or VBCompileErrorInfo error metadata otherwise.

DetermineOperatorStaticType(StaticEvaluationContext, ExpressionNode, 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 operand)

Parameters

context StaticEvaluationContext
expression ExpressionNode

The expression node being evaluated.

operand VBType

The declared type of the operand.

Returns

StaticSemanticsEvaluationResult