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.