pub trait TestBlock: Block<Header: TestHeader> {
// Required methods
fn body_mut(&mut self) -> &mut Self::Body;
fn header_mut(&mut self) -> &mut Self::Header;
fn set_header(&mut self, header: Self::Header);
// Provided methods
fn set_parent_hash(&mut self, hash: BlockHash) { ... }
fn set_block_number(&mut self, number: BlockNumber) { ... }
fn set_state_root(&mut self, state_root: B256) { ... }
fn set_difficulty(&mut self, difficulty: U256) { ... }
}Available on crate feature
test-utils only.Expand description
An extension trait for Blocks that allows for mutable access to the block’s internals.
This allows for modifying the block’s header and body for testing purposes.
Required Methods§
Sourcefn header_mut(&mut self) -> &mut Self::Header
fn header_mut(&mut self) -> &mut Self::Header
Returns mutable reference to block header.
Sourcefn set_header(&mut self, header: Self::Header)
fn set_header(&mut self, header: Self::Header)
Updates the block header.
Provided Methods§
Sourcefn set_parent_hash(&mut self, hash: BlockHash)
fn set_parent_hash(&mut self, hash: BlockHash)
Updates the parent block hash.
Sourcefn set_block_number(&mut self, number: BlockNumber)
fn set_block_number(&mut self, number: BlockNumber)
Updates the block number.
Sourcefn set_state_root(&mut self, state_root: B256)
fn set_state_root(&mut self, state_root: B256)
Updates the block state root.
Sourcefn set_difficulty(&mut self, difficulty: U256)
fn set_difficulty(&mut self, difficulty: U256)
Updates the block difficulty.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.