pub struct BeaconChainBlock<'a> {
pub header: BeaconChainHeader<'a>,
pub body: BeaconChainBody<'a>,
}Expand description
Block that corresponds to the beacon chain.
Fields can’t be modified after creation, so that the header always corresponds to the body, which constructors ensure.
Fields§
§header: BeaconChainHeader<'a>Block header
body: BeaconChainBody<'a>Block body
Implementations§
Source§impl<'a> BeaconChainBlock<'a>
impl<'a> BeaconChainBlock<'a>
Sourcepub fn try_from_bytes(bytes: &'a [u8]) -> Option<(Self, &'a [u8])>
pub fn try_from_bytes(bytes: &'a [u8]) -> Option<(Self, &'a [u8])>
Try to create a new instance from provided bytes for provided shard index.
bytes should be 16-bytes aligned.
Checks internal consistency of header, body, and block, but no consensus verification is done.
Returns an instance and remaining bytes on success, None if too few bytes were given,
bytes are not properly aligned or input is otherwise invalid.
Sourcepub fn to_owned(self) -> OwnedBeaconChainBlock
pub fn to_owned(self) -> OwnedBeaconChainBlock
Create an owned version of this block
Trait Implementations§
Source§impl<'a> Clone for BeaconChainBlock<'a>
impl<'a> Clone for BeaconChainBlock<'a>
Source§impl<'a> Debug for BeaconChainBlock<'a>
impl<'a> Debug for BeaconChainBlock<'a>
Source§impl<'a> From<BeaconChainBlock<'a>> for Block<'a>
impl<'a> From<BeaconChainBlock<'a>> for Block<'a>
Source§fn from(value: BeaconChainBlock<'a>) -> Self
fn from(value: BeaconChainBlock<'a>) -> Self
Converts to this type from the input type.
Source§impl<'a> GenericBlock<'a> for BeaconChainBlock<'a>
impl<'a> GenericBlock<'a> for BeaconChainBlock<'a>
Source§const SHARD_KIND: RealShardKind = RealShardKind::BeaconChain
const SHARD_KIND: RealShardKind = RealShardKind::BeaconChain
Shard kind
Source§type Header = BeaconChainHeader<'a>
type Header = BeaconChainHeader<'a>
Block header type
Source§type Body = BeaconChainBody<'a>
type Body = BeaconChainBody<'a>
Block body type
Source§type Owned = OwnedBeaconChainBlock
type Owned = OwnedBeaconChainBlock
Owned block
Auto Trait Implementations§
impl<'a> !Freeze for BeaconChainBlock<'a>
impl<'a> Forget for BeaconChainBlock<'a>
impl<'a> RefUnwindSafe for BeaconChainBlock<'a>
impl<'a> Send for BeaconChainBlock<'a>
impl<'a> Sync for BeaconChainBlock<'a>
impl<'a> Unpin for BeaconChainBlock<'a>
impl<'a> UnsafeUnpin for BeaconChainBlock<'a>
impl<'a> UnwindSafe for BeaconChainBlock<'a>
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