Skip to main content

Module raw_input

Module raw_input 

Source
Expand description

Raw loader input parsing for Hopper Native.

This is the single source of truth for Solana loader input decoding. It owns duplicate-account resolution, canonical-account lookup, and original-index tracking so higher layers operate on already-resolved account views.

Structs§

FrameInfo
Summary of a safely-parsed loader input frame.
RawAccountIndex
Metadata for one parsed account slot in the loader input.
RawInstructionFrame
Instruction tail discovered after scanning the loader input buffer.

Enums§

DirectMappingError
Failure reported by the host/replay SIMD-0449 conformance decoder.
FrameError
Errors returned by the safe parser.

Constants§

MAX_SAFE_ACCOUNT_SLOTS
Hard cap on accounts the safe parser will record slot offsets for.
SIMD_0449_TABLE_ENABLED
Whether this build trusts the SIMD-0449 account-pointer table (feature = "simd-0449"). Enabling it before the SIMD activates on the target cluster reads garbage, ship it only alongside the cluster gate, exactly like simd-0321.

Functions§

deserialize_accounts⚠
Deserialize the loader input into AccountViews.
deserialize_accounts_0449⚠
SIMD-0449 direct account resolution: overlay the runtime’s appended account-pointer table as a borrowed [AccountView], one bounds computation and one from_raw_parts, then capture each account’s invocation-wide resize baseline.
deserialize_accounts_0449_checked⚠
Validate and consume a SIMD-0449 account-pointer table.
deserialize_accounts_0449_into⚠
Adapter matching the deserialize_accounts_fast shape: copy up to MAX table entries into the caller’s array (8 bytes per account, a pointer copy, not a record parse) so the existing entrypoint plumbing consumes the table without changing its account storage.
deserialize_accounts_fast⚠
Fast two-argument deserialize: instruction data and program id are provided directly by the caller (from the SVM’s second entrypoint register), so the full account-scan pass is skipped entirely.
deserialize_leading_accounts⚠
Materialize at most MAX leading account views without walking to the instruction tail.
parse_instruction_frame_checked
Parse a loader-input byte buffer with full bounds checking.
scan_instruction_frame⚠
Parse just the instruction tail and account span from the loader input.