diff --git a/crates/native_blockifier/src/py_block_executor.rs b/crates/native_blockifier/src/py_block_executor.rs index b9d1f8da0b..e3244abf6f 100644 --- a/crates/native_blockifier/src/py_block_executor.rs +++ b/crates/native_blockifier/src/py_block_executor.rs @@ -1,7 +1,7 @@ use std::collections::HashMap; use std::sync::Arc; -use blockifier::block::{BlockInfo, GasPrices}; +use blockifier::block::{pre_process_block, BlockInfo, BlockNumberHashPair, GasPrices}; use blockifier::context::{BlockContext, ChainInfo, FeeTokenAddresses}; use blockifier::state::cached_state::{GlobalContractCache, GLOBAL_CONTRACT_CACHE_SIZE_FOR_TEST}; use blockifier::transaction::objects::TransactionExecutionInfo; @@ -133,7 +133,12 @@ impl PyBlockExecutor { &mut self, old_block_number_and_hash: Option<(u64, PyFelt)>, ) -> NativeBlockifierResult<()> { - self.tx_executor().pre_process_block(old_block_number_and_hash) + let old_block_number_and_hash = old_block_number_and_hash + .map(|(block_number, block_hash)| BlockNumberHashPair::new(block_number, block_hash.0)); + let state = &mut self.tx_executor().state; + pre_process_block(state, old_block_number_and_hash)?; + + Ok(()) } pub fn commit_tx(&mut self) { diff --git a/crates/native_blockifier/src/transaction_executor.rs b/crates/native_blockifier/src/transaction_executor.rs index 04310070b3..bb96fcfab4 100644 --- a/crates/native_blockifier/src/transaction_executor.rs +++ b/crates/native_blockifier/src/transaction_executor.rs @@ -1,7 +1,6 @@ use std::collections::{HashMap, HashSet}; use std::vec::IntoIter; -use blockifier::block::{pre_process_block, BlockNumberHashPair}; use blockifier::context::BlockContext; use blockifier::execution::call_info::{CallInfo, MessageL1CostInfo}; use blockifier::execution::entry_point::ExecutionResources; @@ -25,7 +24,6 @@ use crate::errors::{NativeBlockifierError, NativeBlockifierResult}; use crate::py_block_executor::{into_block_context, PyGeneralConfig}; use crate::py_state_diff::PyBlockInfo; use crate::py_transaction_execution_info::PyBouncerInfo; -use crate::py_utils::PyFelt; pub(crate) type RawTransactionExecutionInfo = Vec; @@ -201,19 +199,6 @@ impl TransactionExecutor { (self.state.to_state_diff(), visited_pcs) } - // Block pre-processing; see `block::pre_process_block` documentation. - pub fn pre_process_block( - &mut self, - old_block_number_and_hash: Option<(u64, PyFelt)>, - ) -> NativeBlockifierResult<()> { - let old_block_number_and_hash = old_block_number_and_hash - .map(|(block_number, block_hash)| BlockNumberHashPair::new(block_number, block_hash.0)); - - pre_process_block(&mut self.state, old_block_number_and_hash)?; - - Ok(()) - } - pub fn commit(&mut self) { let Some(finalized_transactional_state) = self.staged_for_commit_state.take() else { panic!("commit called without a transactional state")