feat: add SealedBlock::clone_sealed_header (#13739)

This commit is contained in:
Matthias Seitz
2025-01-08 18:33:56 +01:00
committed by GitHub
parent d336ceb27e
commit 28d52312ac
10 changed files with 44 additions and 36 deletions

View File

@ -182,7 +182,7 @@ impl<N: NodePrimitives> CanonicalInMemoryState<N> {
) -> Self {
let in_memory_state = InMemoryState::new(blocks, numbers, pending);
let header = in_memory_state.head_state().map_or_else(SealedHeader::default, |state| {
state.block_ref().block().sealed_header().clone()
state.block_ref().block().clone_sealed_header()
});
let chain_info_tracker = ChainInfoTracker::new(header, finalized, safe);
let (canon_state_notification_sender, _) =
@ -229,7 +229,7 @@ impl<N: NodePrimitives> CanonicalInMemoryState<N> {
/// Returns the header corresponding to the given hash.
pub fn header_by_hash(&self, hash: B256) -> Option<SealedHeader<N::BlockHeader>> {
self.state_by_hash(hash).map(|block| block.block_ref().block.sealed_header().clone())
self.state_by_hash(hash).map(|block| block.block_ref().block.clone_sealed_header())
}
/// Clears all entries in the in memory state.
@ -462,7 +462,7 @@ impl<N: NodePrimitives> CanonicalInMemoryState<N> {
/// Returns the `SealedHeader` corresponding to the pending state.
pub fn pending_sealed_header(&self) -> Option<SealedHeader<N::BlockHeader>> {
self.pending_state().map(|h| h.block_ref().block().sealed_header().clone())
self.pending_state().map(|h| h.block_ref().block().clone_sealed_header())
}
/// Returns the `Header` corresponding to the pending state.
@ -1321,7 +1321,7 @@ mod tests {
assert_eq!(state.pending_header().unwrap(), block2.block().header().clone());
// Check the pending sealed header
assert_eq!(state.pending_sealed_header().unwrap(), block2.block().sealed_header().clone());
assert_eq!(state.pending_sealed_header().unwrap(), block2.block().clone_sealed_header());
// Check the pending block with senders
assert_eq!(