Struct sp_runtime::generic::Header
source · [−]pub struct Header<Number: Copy + Into<U256> + TryFrom<U256>, Hash: HashT> {
pub parent_hash: Hash::Output,
pub number: Number,
pub state_root: Hash::Output,
pub extrinsics_root: Hash::Output,
pub digest: Digest,
}
Expand description
Abstraction over a block header for a substrate chain.
Fields
parent_hash: Hash::Output
The parent hash.
number: Number
The block number.
state_root: Hash::Output
The state trie merkle root
extrinsics_root: Hash::Output
The merkle root of the extrinsics.
digest: Digest
A chain-specific digest of data useful for light clients or referencing auxiliary data.
Implementations
A new header with the given number and default hash for all other fields.
Trait Implementations
impl<'de, Number: Copy + Into<U256> + TryFrom<U256>, Hash: HashT> Deserialize<'de> for Header<Number, Hash> where
Hash::Output: Deserialize<'de>,
Hash::Output: Deserialize<'de>,
Hash::Output: Deserialize<'de>,
impl<'de, Number: Copy + Into<U256> + TryFrom<U256>, Hash: HashT> Deserialize<'de> for Header<Number, Hash> where
Hash::Output: Deserialize<'de>,
Hash::Output: Deserialize<'de>,
Hash::Output: Deserialize<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl<Number, Hash> Header for Header<Number, Hash> where
Number: Member + MaybeSerializeDeserialize + Debug + Hash + MaybeDisplay + AtLeast32BitUnsigned + Codec + Copy + Into<U256> + TryFrom<U256> + FromStr + MaybeMallocSizeOf,
Hash: HashT,
Hash::Output: Default + Hash + Copy + Member + Ord + MaybeSerialize + Debug + MaybeDisplay + SimpleBitOps + Codec + MaybeMallocSizeOf,
impl<Number, Hash> Header for Header<Number, Hash> where
Number: Member + MaybeSerializeDeserialize + Debug + Hash + MaybeDisplay + AtLeast32BitUnsigned + Codec + Copy + Into<U256> + TryFrom<U256> + FromStr + MaybeMallocSizeOf,
Hash: HashT,
Hash::Output: Default + Hash + Copy + Member + Ord + MaybeSerialize + Debug + MaybeDisplay + SimpleBitOps + Codec + MaybeMallocSizeOf,
type Number = Number
type Number = Number
Header number.
type Hashing = Hash
type Hashing = Hash
Hashing algorithm
Sets the header number.
Returns a reference to the extrinsics root.
Sets the extrinsic root.
Returns a reference to the state root.
Sets the state root.
Returns a reference to the parent hash.
Sets the parent hash.
Get a mutable reference to the digest.
Creates new header.
impl<Number, Hash> MallocSizeOf for Header<Number, Hash> where
Number: Copy + Into<U256> + TryFrom<U256> + MallocSizeOf,
Hash: HashT,
Hash::Output: MallocSizeOf,
impl<Number, Hash> MallocSizeOf for Header<Number, Hash> where
Number: Copy + Into<U256> + TryFrom<U256> + MallocSizeOf,
Hash: HashT,
Hash::Output: MallocSizeOf,
Measure the heap usage of all descendant heap-allocated structures, but
not the space taken up by the value itself.
If T::size_of
is a constant, consider implementing constant_size
as well. Read more
Used to optimize MallocSizeOf
implementation for collections
like Vec
and HashMap
to avoid iterating over them unnecessarily.
The Self: Sized
bound is for object safety. Read more
impl<Number: Copy + Into<U256> + TryFrom<U256>, Hash: HashT> TypeInfo for Header<Number, Hash> where
Hash::Output: TypeInfo + 'static,
Number: HasCompact,
Hash::Output: TypeInfo + 'static,
Hash::Output: TypeInfo + 'static,
Number: Copy + Into<U256> + TryFrom<U256> + TypeInfo + 'static,
Hash: HashT + TypeInfo + 'static,
impl<Number: Copy + Into<U256> + TryFrom<U256>, Hash: HashT> TypeInfo for Header<Number, Hash> where
Hash::Output: TypeInfo + 'static,
Number: HasCompact,
Hash::Output: TypeInfo + 'static,
Hash::Output: TypeInfo + 'static,
Number: Copy + Into<U256> + TryFrom<U256> + TypeInfo + 'static,
Hash: HashT + TypeInfo + 'static,
impl<Number: Copy + Into<U256> + TryFrom<U256>, Hash: HashT> EncodeLike<Header<Number, Hash>> for Header<Number, Hash> where
Hash::Output: Encode,
Hash::Output: Encode,
Hash::Output: Encode,
Hash::Output: Encode,
Hash::Output: Encode,
Hash::Output: Encode,
Number: HasCompact,
impl<Number: Eq + Copy + Into<U256> + TryFrom<U256>, Hash: Eq + HashT> Eq for Header<Number, Hash> where
Hash::Output: Eq,
Hash::Output: Eq,
Hash::Output: Eq,
Auto Trait Implementations
impl<Number, Hash> RefUnwindSafe for Header<Number, Hash> where
Number: RefUnwindSafe,
<Hash as Hash>::Output: RefUnwindSafe,
impl<Number, Hash> Unpin for Header<Number, Hash> where
Number: Unpin,
<Hash as Hash>::Output: Unpin,
impl<Number, Hash> UnwindSafe for Header<Number, Hash> where
Number: UnwindSafe,
<Hash as Hash>::Output: UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more
pub fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>ⓘimpl<W> Write for Box<W, Global> where
W: Write + ?Sized, impl<R> Read for Box<R, Global> where
R: Read + ?Sized, impl<I, A> Iterator for Box<I, A> where
I: Iterator + ?Sized,
A: Allocator, type Item = <I as Iterator>::Item;impl<F, A> Future for Box<F, A> where
F: Future + Unpin + ?Sized,
A: Allocator + 'static, type Output = <F as Future>::Output;
pub fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>ⓘimpl<W> Write for Box<W, Global> where
W: Write + ?Sized, impl<R> Read for Box<R, Global> where
R: Read + ?Sized, impl<I, A> Iterator for Box<I, A> where
I: Iterator + ?Sized,
A: Allocator, type Item = <I as Iterator>::Item;impl<F, A> Future for Box<F, A> where
F: Future + Unpin + ?Sized,
A: Allocator + 'static, type Output = <F as Future>::Output;
impl<W> Write for Box<W, Global> where
W: Write + ?Sized, impl<R> Read for Box<R, Global> where
R: Read + ?Sized, impl<I, A> Iterator for Box<I, A> where
I: Iterator + ?Sized,
A: Allocator, type Item = <I as Iterator>::Item;impl<F, A> Future for Box<F, A> where
F: Future + Unpin + ?Sized,
A: Allocator + 'static, type Output = <F as Future>::Output;
Convert Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
. Read more
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read more
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read more
Convert &mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s. Read more
Method to launch a heapsize measurement with a fresh state. Read more
The counterpart to unchecked_from
.
Consume self to return an equivalent value of T
.
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more