Trait NodePrimitives
pub trait NodePrimitives:
Send
+ Sync
+ Unpin
+ Clone
+ Default
+ Debug
+ PartialEq
+ Eq
+ 'static {
type Block: Block<Header = Self::BlockHeader, Body = Self::BlockBody>;
type BlockHeader: BlockHeader;
type BlockBody: BlockBody<Transaction = Self::SignedTx, OmmerHeader = Self::BlockHeader>;
type SignedTx: Send + Sync + Unpin + Clone + Debug + PartialEq + Eq + MaybeSerde + MaybeArbitrary + 'static;
type TxType: Send + Sync + Unpin + Clone + Default + Debug + PartialEq + Eq + MaybeArbitrary + 'static;
type Receipt: Send + Sync + Unpin + Clone + Default + Debug + PartialEq + Eq + MaybeSerde + MaybeArbitrary + 'static;
}
Expand description
Configures all the primitive types of the node.
Required Associated Types§
type Block: Block<Header = Self::BlockHeader, Body = Self::BlockBody>
type Block: Block<Header = Self::BlockHeader, Body = Self::BlockBody>
Block primitive.
type BlockHeader: BlockHeader
type BlockHeader: BlockHeader
Block header primitive.
type BlockBody: BlockBody<Transaction = Self::SignedTx, OmmerHeader = Self::BlockHeader>
type BlockBody: BlockBody<Transaction = Self::SignedTx, OmmerHeader = Self::BlockHeader>
Block body primitive.
type SignedTx: Send + Sync + Unpin + Clone + Debug + PartialEq + Eq + MaybeSerde + MaybeArbitrary + 'static
type SignedTx: Send + Sync + Unpin + Clone + Debug + PartialEq + Eq + MaybeSerde + MaybeArbitrary + 'static
Signed version of the transaction type.
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.