pub enum OwnedBlockHeader {
BeaconChain(OwnedBeaconChainHeader),
IntermediateShard(OwnedIntermediateShardHeader),
LeafShard(OwnedLeafShardHeader),
}
Expand description
An owned version of BlockHeader
.
It is correctly aligned in memory and well suited for sending and receiving over the network efficiently or storing in memory or on disk.
Variants§
BeaconChain(OwnedBeaconChainHeader)
Block header corresponds to the beacon chain
IntermediateShard(OwnedIntermediateShardHeader)
Block header corresponds to an intermediate shard
LeafShard(OwnedLeafShardHeader)
Block header corresponds to a leaf shard
Implementations§
Source§impl OwnedBlockHeader
impl OwnedBlockHeader
Sourcepub fn from_header(
header: BlockHeader<'_>,
) -> Result<Self, OwnedBlockHeaderError>
pub fn from_header( header: BlockHeader<'_>, ) -> Result<Self, OwnedBlockHeaderError>
Create owned block header from a reference
Sourcepub fn from_buffer(
buffer: SharedAlignedBuffer,
shard_kind: ShardKind,
) -> Result<Self, SharedAlignedBuffer>
pub fn from_buffer( buffer: SharedAlignedBuffer, shard_kind: ShardKind, ) -> Result<Self, SharedAlignedBuffer>
Create owned header from a buffer
Sourcepub fn buffer(&self) -> &SharedAlignedBuffer
pub fn buffer(&self) -> &SharedAlignedBuffer
Inner buffer block header contents
Sourcepub fn header(&self) -> BlockHeader<'_>
pub fn header(&self) -> BlockHeader<'_>
Get BlockHeader
out of OwnedBlockHeader
Trait Implementations§
Source§impl Clone for OwnedBlockHeader
impl Clone for OwnedBlockHeader
Source§fn clone(&self) -> OwnedBlockHeader
fn clone(&self) -> OwnedBlockHeader
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for OwnedBlockHeader
impl Debug for OwnedBlockHeader
Source§impl From<OwnedBeaconChainHeader> for OwnedBlockHeader
impl From<OwnedBeaconChainHeader> for OwnedBlockHeader
Source§fn from(value: OwnedBeaconChainHeader) -> Self
fn from(value: OwnedBeaconChainHeader) -> Self
Converts to this type from the input type.
Source§impl From<OwnedIntermediateShardHeader> for OwnedBlockHeader
impl From<OwnedIntermediateShardHeader> for OwnedBlockHeader
Source§fn from(value: OwnedIntermediateShardHeader) -> Self
fn from(value: OwnedIntermediateShardHeader) -> Self
Converts to this type from the input type.
Source§impl From<OwnedLeafShardHeader> for OwnedBlockHeader
impl From<OwnedLeafShardHeader> for OwnedBlockHeader
Source§fn from(value: OwnedLeafShardHeader) -> Self
fn from(value: OwnedLeafShardHeader) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl Freeze for OwnedBlockHeader
impl RefUnwindSafe for OwnedBlockHeader
impl Send for OwnedBlockHeader
impl Sync for OwnedBlockHeader
impl Unpin for OwnedBlockHeader
impl UnwindSafe for OwnedBlockHeader
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more