From fa429026fbc71982117dd0331a6c3544700a1c35 Mon Sep 17 00:00:00 2001 From: Dori Medini Date: Thu, 30 Apr 2026 12:58:25 +0300 Subject: [PATCH] blockifier: implement conversion from commitment state diff to state maps --- crates/blockifier/src/state/cached_state.rs | 22 +++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/crates/blockifier/src/state/cached_state.rs b/crates/blockifier/src/state/cached_state.rs index 9a27bd66207..6bf5798773d 100644 --- a/crates/blockifier/src/state/cached_state.rs +++ b/crates/blockifier/src/state/cached_state.rs @@ -687,6 +687,28 @@ impl From for CommitmentStateDiff { } } +#[cfg(any(test, feature = "testing"))] +impl From for StateMaps { + fn from(commitment_state_diff: CommitmentStateDiff) -> Self { + Self { + class_hashes: commitment_state_diff.address_to_class_hash.into_iter().collect(), + nonces: commitment_state_diff.address_to_nonce.into_iter().collect(), + compiled_class_hashes: commitment_state_diff + .class_hash_to_compiled_class_hash + .into_iter() + .collect(), + storage: commitment_state_diff + .storage_updates + .into_iter() + .flat_map(|(address, storage)| { + storage.into_iter().map(move |(key, value)| ((address, key), value)) + }) + .collect(), + declared_contracts: Default::default(), + } + } +} + impl From for ThinStateDiff { fn from(commitment_state_diff: CommitmentStateDiff) -> Self { Self {