pub struct AltChainContextCache {
pub weight_cache: Option<BlockWeightsCache>,
pub difficulty_cache: Option<DifficultyCache>,
pub cached_rx_vm: Option<(usize, Arc<RandomXVm>)>,
pub chain_height: usize,
pub top_hash: [u8; 32],
pub chain_id: Option<ChainId>,
pub parent_chain: Chain,
}Expand description
The context cache of an alternative chain.
Fields§
§weight_cache: Option<BlockWeightsCache>The alt chain weight cache, None if it has not been built yet.
difficulty_cache: Option<DifficultyCache>The alt chain difficulty cache, None if it has not been built yet.
cached_rx_vm: Option<(usize, Arc<RandomXVm>)>A cached RX VM.
chain_height: usizeThe chain height of the alt chain.
top_hash: [u8; 32]The top hash of the alt chain.
chain_id: Option<ChainId>The [ChainId] of the alt chain.
parent_chain: ChainThe parent [Chain] of this alt chain.
Implementations§
Trait Implementations§
Source§impl Clone for AltChainContextCache
impl Clone for AltChainContextCache
Source§fn clone(&self) -> AltChainContextCache
fn clone(&self) -> AltChainContextCache
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for AltChainContextCache
impl RefUnwindSafe for AltChainContextCache
impl Send for AltChainContextCache
impl Sync for AltChainContextCache
impl Unpin for AltChainContextCache
impl UnsafeUnpin for AltChainContextCache
impl UnwindSafe for AltChainContextCache
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
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§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘwhere
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘwhere
S: Into<Dispatch>,
§fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ
fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 368 bytes