pub struct CellAccount;Implementations§
Source§impl CellAccount
impl CellAccount
pub fn compute_manifest_hash( bytecode: &[u8], declared_reads: &[[u8; 32]], declared_writes: &[[u8; 32]], commutative_keys: &[[u8; 32]], oracle_schema_ids: &[[u8; 32]], ) -> [u8; 32]
Sourcepub fn analyze_bytecode(bytecode: &[u8]) -> Result<ManifestAnalysis, String>
pub fn analyze_bytecode(bytecode: &[u8]) -> Result<ManifestAnalysis, String>
Statically analyze Axiom bytecode to extract storage key access patterns.
Strategy: scan the instruction stream. Track the last value loaded into each register via LOAD_CONST (32-byte key). When SLOAD/SSTORE/SDELETE is encountered, check if the key register has a known static value. If the register is known, record the static slot. Otherwise, mark the manifest as partially unresolved.
pub fn verify_manifest_against_bytecode( bytecode: &[u8], declared_reads: &[[u8; 32]], declared_writes: &[[u8; 32]], storage_key_specs: &[StorageKeySpec], ) -> Result<(), String>
pub fn require_inferable( _bytecode: &[u8], storage_key_specs: &[StorageKeySpec], ) -> Result<(), String>
Auto Trait Implementations§
impl Freeze for CellAccount
impl RefUnwindSafe for CellAccount
impl Send for CellAccount
impl Sync for CellAccount
impl Unpin for CellAccount
impl UnsafeUnpin for CellAccount
impl UnwindSafe for CellAccount
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more