Table of Contents

Class MemoryReadFailure

Namespace
CStructSharp.Memory
Assembly
CStructSharp.dll

An unsuccessful selection or read, with diagnostics and optional source coordinates; creating it raises no exception.

public sealed record MemoryReadFailure : IEquatable<MemoryReadFailure>
Inheritance
MemoryReadFailure
Implements
Inherited Members

Constructors

MemoryReadFailure(MemoryReadFailureKind, string, string?, string?, ulong?, int, MemoryFailure?, MemoryRegion?)

An unsuccessful selection or read, with diagnostics and optional source coordinates; creating it raises no exception.

public MemoryReadFailure(MemoryReadFailureKind Kind, string Message, string? Path = null, string? SourceId = null, ulong? Address = null, int Length = 0, MemoryFailure? MemoryFailure = null, MemoryRegion? LogicalRegion = null)

Parameters

Kind MemoryReadFailureKind

Schema or memory failure category.

Message string

Explanation without exception formatting.

Path string

Requested root and member path.

SourceId string

Failing source label, when known.

Address ulong?

Failing unsigned source coordinate, when known.

Length int

Requested byte extent.

MemoryFailure MemoryFailure?

Original transport category, when applicable.

LogicalRegion MemoryRegion

Caller's logical root, independent of transport coordinates.

Properties

Address

Failing unsigned source coordinate, when known.

public ulong? Address { get; init; }

Property Value

ulong?

Kind

Schema or memory failure category.

public MemoryReadFailureKind Kind { get; init; }

Property Value

MemoryReadFailureKind

Length

Requested byte extent.

public int Length { get; init; }

Property Value

int

LogicalRegion

Caller's logical root, independent of transport coordinates.

public MemoryRegion? LogicalRegion { get; init; }

Property Value

MemoryRegion

MemoryFailure

Original transport category, when applicable.

public MemoryFailure? MemoryFailure { get; init; }

Property Value

MemoryFailure?

Message

Explanation without exception formatting.

public string Message { get; init; }

Property Value

string

Path

Requested root and member path.

public string? Path { get; init; }

Property Value

string

SourceId

Failing source label, when known.

public string? SourceId { get; init; }

Property Value

string

Methods

Deconstruct(out MemoryReadFailureKind, out string, out string?, out string?, out ulong?, out int, out MemoryFailure?, out MemoryRegion?)

public void Deconstruct(out MemoryReadFailureKind Kind, out string Message, out string? Path, out string? SourceId, out ulong? Address, out int Length, out MemoryFailure? MemoryFailure, out MemoryRegion? LogicalRegion)

Parameters

Kind MemoryReadFailureKind
Message string
Path string
SourceId string
Address ulong?
Length int
MemoryFailure MemoryFailure?
LogicalRegion MemoryRegion

Equals(MemoryReadFailure?)

public bool Equals(MemoryReadFailure? other)

Parameters

other MemoryReadFailure

Returns

bool

Equals(object?)

public override bool Equals(object? obj)

Parameters

obj object

Returns

bool

GetHashCode()

public override int GetHashCode()

Returns

int

ToException()

Creates a detailed exception only when a throwing caller requests it.

public CStructException ToException()

Returns

CStructException

A path exception for schema failures, or an addressed memory exception for storage failures.

ToString()

public override string ToString()

Returns

string

Operators

operator ==(MemoryReadFailure?, MemoryReadFailure?)

public static bool operator ==(MemoryReadFailure? left, MemoryReadFailure? right)

Parameters

left MemoryReadFailure
right MemoryReadFailure

Returns

bool

operator !=(MemoryReadFailure?, MemoryReadFailure?)

public static bool operator !=(MemoryReadFailure? left, MemoryReadFailure? right)

Parameters

left MemoryReadFailure
right MemoryReadFailure

Returns

bool