Skip to main content

CheckpointContentsExt

Trait CheckpointContentsExt 

Source
pub trait CheckpointContentsExt: Sized + Sealed {
    // Required methods
    fn new_with_digests_and_signatures(
        contents: impl IntoIterator<Item = ExecutionDigests>,
        user_signatures: Vec<Vec<UserSignature>>,
    ) -> Self;
    fn new_with_causally_ordered_execution_data<'a>(
        contents: impl IntoIterator<Item = &'a VerifiedExecutionData>,
    ) -> Self;
    fn new_with_digests_only_for_tests(
        contents: impl IntoIterator<Item = ExecutionDigests>,
    ) -> Self;
    fn iter(
        &self,
    ) -> impl DoubleEndedIterator<Item = ExecutionDigests> + ExactSizeIterator + '_;
    fn into_iter_with_signatures(
        self,
    ) -> impl Iterator<Item = (ExecutionDigests, Vec<UserSignature>)>;
    fn enumerate_transactions(
        &self,
        ckpt: &CheckpointSummary,
    ) -> impl Iterator<Item = (u64, ExecutionDigests)> + '_;
}
Expand description

Node-only helpers for CheckpointContents, which is defined in iota_sdk_types. They bridge the node’s ExecutionDigests representation to the SDK type’s parallel [CheckpointTransactionInfo] form.

Required Methods§

Source

fn new_with_digests_and_signatures( contents: impl IntoIterator<Item = ExecutionDigests>, user_signatures: Vec<Vec<UserSignature>>, ) -> Self

Source

fn new_with_causally_ordered_execution_data<'a>( contents: impl IntoIterator<Item = &'a VerifiedExecutionData>, ) -> Self

Source

fn new_with_digests_only_for_tests( contents: impl IntoIterator<Item = ExecutionDigests>, ) -> Self

Source

fn iter( &self, ) -> impl DoubleEndedIterator<Item = ExecutionDigests> + ExactSizeIterator + '_

Source

fn into_iter_with_signatures( self, ) -> impl Iterator<Item = (ExecutionDigests, Vec<UserSignature>)>

Source

fn enumerate_transactions( &self, ckpt: &CheckpointSummary, ) -> impl Iterator<Item = (u64, ExecutionDigests)> + '_

Enumerate the transactions in the contents, pairing each with its index in the global ordering of executed transactions since genesis.

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.

Implementors§