Struct LetCoercionAnalysisContext
Encapsulates the context of an Analyze operation as the nullable results of successive operations.
public readonly record struct LetCoercionAnalysisContext : IEquatable<LetCoercionAnalysisContext>
- Implements
- Inherited Members
Constructors
LetCoercionAnalysisContext(Uri, LetCoercionResult)
Creates a new analysis context for a no-op coercion operation that does not involve a coercion stack frame.
public LetCoercionAnalysisContext(Uri nodeUri, LetCoercionResult nopResult)
Parameters
nodeUriUriThe
SemanticIdof the node being evaluated.nopResultLetCoercionResultThe result of the no-op operation.
LetCoercionAnalysisContext(Uri, LetCoercionResult, ConversionSemanticFlags)
Encapsulates the context of an Analyze operation as the nullable results of successive operations.
public LetCoercionAnalysisContext(Uri nodeUri, LetCoercionResult result, ConversionSemanticFlags flags)
Parameters
nodeUriUriThe
SemanticIdof the associated expression node.resultLetCoercionResultThe result of the let-coercion operation.
flagsConversionSemanticFlagsThe semantic flags associated with this context.
Properties
Flags
The semantic flags associated with this context.
public ConversionSemanticFlags Flags { get; }
Property Value
NodeUri
The SemanticId of the associated expression node.
public Uri NodeUri { get; }
Property Value
Result
The result of the let-coercion operation.
public LetCoercionResult Result { get; }
Property Value
Methods
Merge(LetCoercionAnalysisContext)
Returns a new LetCoercionAnalysisContext containing the specified evaluation frames and their respective result.
public LetCoercionAnalysisContext Merge(LetCoercionAnalysisContext context)
Parameters
contextLetCoercionAnalysisContextThe sub-coercion analysis context to merge into this one.