Class ConcatOperatorFact
An operation of the concatenation operator (MS-VBAL 5.6.9.4).
public sealed record ConcatOperatorFact : OperatorFact, IEquatable<OperatorFact>, IEquatable<ConcatOperatorFact>
- Inheritance
-
ConcatOperatorFact
- Implements
- Inherited Members
Remarks
👉 One family of operators is one derived record, so that a new family does not grow the facts of every operation by a property. The conversions of the operands of the operation are facts of their own (ConversionFact), at OperatorOperand. A fact is only stated when it is true of the code: see ConversionFact.
Constructors
ConcatOperatorFact(SyntaxNodeId, SourceLocation, string, VBType?, bool, VBErrorInfo?, ConcatOperationSemanticFlags)
An operation of the concatenation operator (MS-VBAL 5.6.9.4).
public ConcatOperatorFact(SyntaxNodeId Node, SourceLocation Location, string Operator, VBType? EffectiveType, bool IsValueKnown, VBErrorInfo? Error, ConcatOperationSemanticFlags Flags)
Parameters
NodeSyntaxNodeIdThe
Identityof the syntax node the operation is evaluated for.LocationSourceLocationWhere in the document the operation is.
OperatorstringThe operator: one of the
Tokensoperators.EffectiveTypeVBTypeThe effective type of the operation, if it has one.
IsValueKnownboolWhether every operand of the operation is known, as opposed to a value its type merely allows.
ErrorVBErrorInfoThe run-time error the operation raises. Only stated when the operands are known, or when their types alone guarantee it.
FlagsConcatOperationSemanticFlagsWhat is known of the operation.
Remarks
👉 One family of operators is one derived record, so that a new family does not grow the facts of every operation by a property. The conversions of the operands of the operation are facts of their own (ConversionFact), at OperatorOperand. A fact is only stated when it is true of the code: see ConversionFact.
Properties
Flags
What is known of the operation.
public ConcatOperationSemanticFlags Flags { get; init; }