Table of Contents

Namespace CStructSharp.Memory

Classes

BorrowedMemorySource

A non-owning read-only view of caller-managed memory at an unsigned base address.

ByteArrayMemorySource

An in-memory writable image: a private copy of a byte array whose addresses are zero-based indexes.

CachedMemorySource

A read-only adapter that remembers the bytes of exact requests until the backing source's generation changes.

MappedMemorySource

An address space assembled from a table of mappings, each translating a logical range to a range of another source.

MemoryAccessContext

The budget for one logical operation: byte, request, nesting, and pointer limits plus a cancellation token. Not safe for concurrent use.

MemoryAccessException

A failure of an addressed memory operation, carrying a stable category and the coordinates of the fragment that failed.

MemoryByteReader

Prepared raw storage reader for a fixed array of one-byte scalars, independent of text interpretation.

MemoryField

One member of a struct or union: a name, a type ID, a byte offset from the container's start, and an optional bit slice.

MemoryFieldProbe<T>

One immutable typed field requirement and a caller-owned predicate, evaluated over captured bytes.

MemoryFieldReader<T>

A typed scalar reader whose schema decisions are prepared once and whose operation state is supplied on each read.

MemoryGraph

Streaming breadth- or depth-first exploration with explicit identity and independently bounded work.

MemoryInspection

A decoded value together with the evidence of where it came from: its logical selection and the physical ranges that supplied its bytes.

MemoryMapping

One translation rule: logical addresses starting at Address come from the bytes of Backing.

MemoryPatch

A prepared, immutable write: the logical range to change and the physical fragments, with expected and replacement bytes, that realize it.

MemoryPatchCommitException

A write failed after a patch commit had started changing bytes. Reports how much is confirmed and which fragment is uncertain.

MemoryPatchFragment

One physical piece of a patch: a final-source range, the bytes expected there, the bytes to write, and the generation seen while planning.

MemoryPath

An immutable schema-only selection plan, reusable across records and independent operation contexts.

MemoryReadFailure

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

MemoryReadSet

Immutable selected fixed-field intervals, with explicit elementwise or coalesced capture.

MemoryRegion

A finite byte range in one source: the source object, an unsigned start address, and a length in bytes.

MemoryScan

Deterministic bounded scan transport over caller-supplied ranges, independent of candidate interpretation.

MemorySchema

A validated, immutable graph of type definitions with explicit placement, compiled so the core codecs can decode its scalars.

MemorySelection

The result of resolving a path: which bytes were selected, what type they hold, and which field (and bit slice) named them.

MemorySession

Caller-owned arrays and explicitly bounded transport operations.

MemorySnapshot

Owned selected storage with explicit validity and observed source generation.

MemoryTypeDefinition

An immutable description of one type: its identity, display name, kind, explicit byte size, and kind-specific details.

MemoryValidity

Immutable known-byte intervals of a captured buffer. Unlisted bytes provide no evidence, including zero-filled presentation bytes.

MemoryWalkResult

What a bounded traversal visited and why it stopped, with the structured failure when memory was unavailable.

MemoryWalker

Bounded traversals over linked structures in memory: circular sentinel lists and trees with shared children.

OverlayMemorySource

A copy-on-write layer: reads come from an unchanged backing snapshot except where this overlay holds replacement bytes.

PointerRequest

Everything a pointer resolver may need to turn stored bits into a target region: the bits, where they were found, and what is expected at the target.

PortableMemorySchema

Converts a compiled fixed-size Portable layout into a MemorySchema, using the offsets the compiler already computed.

StoredPointer

The exact stored value of a pointer as found in memory, together with its width. Reading one never follows it.

StreamMemorySource

A read-only source over a caller-owned seekable stream, typically a capture file, whose addresses are file offsets.

Structs

MemoryByteRange

A byte interval relative to the beginning of a captured buffer.

MemoryGraphResult

Bounded traversal work, independent of caller-retained findings.

MemoryReadResult

Confirmed copied prefix and the reason an exact request stopped.

MemoryScanResult

Coverage of a bounded sequential operation, without retained payload storage.

MemoryScanWindow

A synchronous borrowed scan window in one source's logical coordinates.

Interfaces

IMemoryMappingSource

Optional demand-driven logical-to-backing provenance for a source, including dynamic translations.

IMemorySource

A caller-owned unsigned address space: the object that can answer "which bytes are at this address?".

IWritableMemorySource

A source that can also replace bytes in place. A successful write changes every requested byte; a failed one may have changed some.

Enums

MemoryArrayReadMode

Controls the observable source request shape of caller-owned array decoding.

MemoryFailure

The stable categories of MemoryAccessException.

MemoryGraphStop

Explicit bounded graph completion; exceptions, cancellation and shared budgets propagate.

MemoryGraphVisit

Application decision after probing a streamed graph node.

MemoryProbeOutcome

Local recognition evidence; a match never proves allocation identity or liveness.

MemoryReadFailureKind

Why a non-throwing schema selection or addressed read could not complete.

MemoryReadMode

Explicit transport policy for a prepared set of fixed fields.

MemoryScanStop

Why a sequential scan ended. Cancellation and exhausted shared budgets terminate by throwing.

MemoryTypeKind

The storage category of a MemoryTypeDefinition, which decides how a session reads and writes it.

MemoryWalkStop

Why a MemoryWalker traversal stopped.

Delegates

MemoryScanVisitor

Processes borrowed known bytes synchronously, retaining only owned results.