Table of Contents

Class PreparedExpressionEmbeddedCodeRegistryBuildEntry

Namespace
Utils.Parser.Expressions
Assembly
Utils.Parser.Expressions.dll

Describes one embedded-code preparation or skip decision made while building a prepared expression registry.

public sealed record PreparedExpressionEmbeddedCodeRegistryBuildEntry : IEquatable<PreparedExpressionEmbeddedCodeRegistryBuildEntry>
Inheritance
PreparedExpressionEmbeddedCodeRegistryBuildEntry
Implements
Inherited Members
Extension Methods

Constructors

PreparedExpressionEmbeddedCodeRegistryBuildEntry(EmbeddedCodeSource, PreparedExpressionEmbeddedCodeKey?, string?, EmbeddedCodePreparationStatus, ParserDiagnosticDescriptor?, Exception?, IReadOnlyList<object?>?, bool, bool, bool, string?, EmbeddedCodeUnsupportedReason?)

Initializes a new instance of the PreparedExpressionEmbeddedCodeRegistryBuildEntry record.

public PreparedExpressionEmbeddedCodeRegistryBuildEntry(EmbeddedCodeSource source, PreparedExpressionEmbeddedCodeKey? key, string? ruleName, EmbeddedCodePreparationStatus status, ParserDiagnosticDescriptor? diagnosticDescriptor = null, Exception? exception = null, IReadOnlyList<object?>? diagnosticArguments = null, bool wasAddedToRegistry = false, bool isDuplicate = false, bool isSkipped = false, string? skipReason = null, EmbeddedCodeUnsupportedReason? unsupportedReason = null)

Parameters

source EmbeddedCodeSource

Source metadata for the embedded code item.

key PreparedExpressionEmbeddedCodeKey

Registry key used for successful artifacts, or null when no artifact was registered.

ruleName string

Owning parser rule name, or null for grammar-level items.

status EmbeddedCodePreparationStatus

Preparation status associated with this entry.

diagnosticDescriptor ParserDiagnosticDescriptor

Optional diagnostic metadata returned by the preparer.

exception Exception

Optional exception metadata returned by the preparer.

diagnosticArguments IReadOnlyList<object>

Optional diagnostic arguments returned by the preparer.

wasAddedToRegistry bool

Whether the prepared artifact was registered.

isDuplicate bool

Whether a successful preparation collided with an existing registry key.

isSkipped bool

Whether the item was intentionally skipped without invoking the preparer.

skipReason string

Human-readable reason for skipped items.

unsupportedReason EmbeddedCodeUnsupportedReason?

Common unsupported reason for skipped items.

Properties

DiagnosticArguments

Gets optional diagnostic arguments returned by the preparer.

public IReadOnlyList<object?> DiagnosticArguments { get; }

Property Value

IReadOnlyList<object>

DiagnosticDescriptor

Gets optional diagnostic metadata returned by the preparer.

public ParserDiagnosticDescriptor? DiagnosticDescriptor { get; }

Property Value

ParserDiagnosticDescriptor

Exception

Gets optional exception metadata returned by the preparer.

public Exception? Exception { get; }

Property Value

Exception

IsDuplicate

Gets a value indicating whether a successful preparation collided with an existing registry key.

public bool IsDuplicate { get; }

Property Value

bool

IsSkipped

Gets a value indicating whether the item was intentionally skipped without invoking the preparer.

public bool IsSkipped { get; }

Property Value

bool

Key

Gets the registry key used for successful artifacts, or null when none was registered.

public PreparedExpressionEmbeddedCodeKey? Key { get; }

Property Value

PreparedExpressionEmbeddedCodeKey

RuleName

Gets the owning parser rule name, or null for grammar-level items.

public string? RuleName { get; }

Property Value

string

SkipReason

Gets the human-readable reason for skipped items.

public string? SkipReason { get; }

Property Value

string

Source

Gets the source metadata for the embedded code item.

public EmbeddedCodeSource Source { get; }

Property Value

EmbeddedCodeSource

Status

Gets the preparation status associated with this entry.

public EmbeddedCodePreparationStatus Status { get; }

Property Value

EmbeddedCodePreparationStatus

UnsupportedReason

Gets the common unsupported reason for skipped items.

public EmbeddedCodeUnsupportedReason? UnsupportedReason { get; }

Property Value

EmbeddedCodeUnsupportedReason?

WasAddedToRegistry

Gets a value indicating whether the prepared artifact was registered.

public bool WasAddedToRegistry { get; }

Property Value

bool