Table of Contents

Class ProcedureSemanticsDto

Namespace
RDCore.SDK.Platform.Protocol
Assembly
RDCore.SDK.dll

A ProcedureSemanticModel, as it travels.

public record ProcedureSemanticsDto : IEquatable<ProcedureSemanticsDto>
Inheritance
ProcedureSemanticsDto
Implements
Inherited Members

Constructors

ProcedureSemanticsDto(Uri, bool, ImmutableArray<CompileErrorDto>, ImmutableArray<ExpressionFactDto>, ReturnValueFact?, RuntimeFactsDto?)

A ProcedureSemanticModel, as it travels.

public ProcedureSemanticsDto(Uri Procedure, bool IsFullyAnalyzed, ImmutableArray<CompileErrorDto> CompileErrors, ImmutableArray<ExpressionFactDto> Expressions, ReturnValueFact? ReturnValue = null, RuntimeFactsDto? Runtime = null)

Parameters

Procedure Uri

The address of the procedure.

IsFullyAnalyzed bool

Whether the references the facts say there are in its body are all of them.

CompileErrors ImmutableArray<CompileErrorDto>

What the static pass found wrong with the body.

Expressions ImmutableArray<ExpressionFactDto>

What it found out about each expression.

ReturnValue ReturnValueFact

On how many code paths a function or a property getter assigns its return value, when the pass could tell.

Runtime RuntimeFactsDto

What the language core states about the code, or null when the procedure has not been evaluated.

Properties

CompileErrors

What the static pass found wrong with the body.

public ImmutableArray<CompileErrorDto> CompileErrors { get; init; }

Property Value

ImmutableArray<CompileErrorDto>

Expressions

What it found out about each expression.

public ImmutableArray<ExpressionFactDto> Expressions { get; init; }

Property Value

ImmutableArray<ExpressionFactDto>

IsFullyAnalyzed

Whether the references the facts say there are in its body are all of them.

public bool IsFullyAnalyzed { get; init; }

Property Value

bool

Procedure

The address of the procedure.

public Uri Procedure { get; init; }

Property Value

Uri

ReturnValue

On how many code paths a function or a property getter assigns its return value, when the pass could tell.

public ReturnValueFact? ReturnValue { get; init; }

Property Value

ReturnValueFact

Runtime

What the language core states about the code, or null when the procedure has not been evaluated.

public RuntimeFactsDto? Runtime { get; init; }

Property Value

RuntimeFactsDto