pub trait Header: Serialize {
type Id: BlockId;
type Date: BlockDate;
type ChainLength: ChainLength;
type Version;
// Required methods
fn id(&self) -> Self::Id;
fn parent_id(&self) -> Self::Id;
fn date(&self) -> Self::Date;
fn version(&self) -> Self::Version;
fn chain_length(&self) -> Self::ChainLength;
}
Expand description
Trait identifying the block header type.
Required Associated Types§
Sourcetype ChainLength: ChainLength
type ChainLength: ChainLength
the length of the blockchain (number of blocks)
Required Methods§
Sourcefn parent_id(&self) -> Self::Id
fn parent_id(&self) -> Self::Id
get the parent block identifier (the previous block in the blockchain).
Sourcefn chain_length(&self) -> Self::ChainLength
fn chain_length(&self) -> Self::ChainLength
get the block’s chain length. The number of block created following this thread of blocks on the blockchain (including Self).
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.