Table of Contents

Struct LetCoercionAnalysisContext

Namespace
RDCore.SDK.Semantics.Analysis
Assembly
RDCore.SDK.dll

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

nodeUri Uri

The SemanticId of the node being evaluated.

nopResult LetCoercionResult

The 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

nodeUri Uri

The SemanticId of the associated expression node.

result LetCoercionResult

The result of the let-coercion operation.

flags ConversionSemanticFlags

The semantic flags associated with this context.

Properties

Flags

The semantic flags associated with this context.

public ConversionSemanticFlags Flags { get; }

Property Value

ConversionSemanticFlags

NodeUri

The SemanticId of the associated expression node.

public Uri NodeUri { get; }

Property Value

Uri

Result

The result of the let-coercion operation.

public LetCoercionResult Result { get; }

Property Value

LetCoercionResult

Methods

Merge(LetCoercionAnalysisContext)

Returns a new LetCoercionAnalysisContext containing the specified evaluation frames and their respective result.

public LetCoercionAnalysisContext Merge(LetCoercionAnalysisContext context)

Parameters

context LetCoercionAnalysisContext

The sub-coercion analysis context to merge into this one.

Returns

LetCoercionAnalysisContext