pub(crate) fn initial_execution_pre_state(&self) -> ExecutionPreState {
        match self.initial_block() {
            None => ExecutionPreState::new(
                0,
                self.initial_state_root_hash(),
                BlockHash::new(Digest::from([0u8; Digest::LENGTH])),
                Digest::from([0u8; Digest::LENGTH]),
            ),
            Some(block) => ExecutionPreState::new(
                block.height() + 1,
                self.initial_state_root_hash(),
                *block.hash(),
                block.header().accumulated_seed(),
            ),
        }
    }
/// The state the first block executed after startup will use. It contains:
///   1. The state root to use when executing the next batch of deploys. See
/// [`Self::initial_state_root_hash`].
///   2. The height of the next block to be added to the chain.
///     - At genesis the height is 0.
///     - Otherwise it is the successor of the last upgrade block.
///   3. The parent hash for the first block to use when executing.
///     - At genesis this is `[0u8; 32]`
///     - Otherwise it is the block hash of the highest block.
///   4. The _accumulated seed_ to be used in pseudo-random number generation and entropy will
/// be added.
///     - At genesis this is `[0u8; 32]`
///     - Otherwise it is the accumulated seed of the highest block.
The state the first block executed after startup will use. It contains:
1. The state root to use when executing the next batch of deploys.
The state the first block executed after startup will use . It contains : 1 . The state root to use when executing the next batch of deploys .
pub(crate) fn initial_execution_pre_state(&self) -> ExecutionPreState {
        match self.initial_block() {
            None => ExecutionPreState::new(
                0,
                self.initial_state_root_hash(),
                BlockHash::new(Digest::from([0u8; Digest::LENGTH])),
                Digest::from([0u8; Digest::LENGTH]),
            ),
            Some(block) => ExecutionPreState::new(
                block.height() + 1,
                self.initial_state_root_hash(),
                *block.hash(),
                block.header().accumulated_seed(),
            ),
        }
    }
pub ( crate ) fn initial_execution_pre_state ( & self ) -> ExecutionPreState { match self . initial_block ( ) { None => ExecutionPreState :: new ( 0 , self . initial_state_root_hash ( ) , BlockHash :: new ( Digest :: from ( [ 0u8 ; Digest :: LENGTH ] ) ) , Digest :: from ( [ 0u8 ; Digest :: LENGTH ] ) , ) , Some ( block ) => ExecutionPreState :: new ( block . height ( ) + 1 , self . initial_state_root_hash ( ) , * block . hash ( ) , block . header ( ) . accumulated_seed ( ) , ) , } }
The state the first block executed after startup will use.
The state the first block executed after startup will use .
&self
&self