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::OutputThe parent hash.
number: NumberThe block number.
state_root: Hash::OutputThe state trie merkle root
extrinsics_root: Hash::OutputThe merkle root of the extrinsics.
digest: DigestA 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