Skip to main content

Inner

Trait Inner 

Source
pub trait Inner<E: Context>: Mutable + Persistable<Error = Error> {
    type Config: Clone + Send;

    // Required method
    fn init<F: Family, H: Hasher>(
        context: E,
        merkle_cfg: Config,
        journal_cfg: Self::Config,
        rewind_predicate: fn(&Self::Item) -> bool,
    ) -> impl Future<Output = Result<Journal<F, E, Self, H>, Error<F>>> + Send
       where Self: Sized,
             Self::Item: EncodeShared;
}
Expand description

A Mutable journal that can serve as the inner journal of an authenticated Journal.

Required Associated Types§

Source

type Config: Clone + Send

The configuration needed to initialize this journal.

Required Methods§

Source

fn init<F: Family, H: Hasher>( context: E, merkle_cfg: Config, journal_cfg: Self::Config, rewind_predicate: fn(&Self::Item) -> bool, ) -> impl Future<Output = Result<Journal<F, E, Self, H>, Error<F>>> + Send
where Self: Sized, Self::Item: EncodeShared,

Initialize an authenticated Journal backed by this journal 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.

Implementors§

Source§

impl<E: Context, A: CodecFixedShared> Inner<E> for commonware_storage::journal::contiguous::fixed::Journal<E, A>

Available on neither commonware_stability_BETA nor commonware_stability_GAMMA nor commonware_stability_DELTA nor commonware_stability_EPSILON nor commonware_stability_RESERVED.
Source§

impl<E: Context, V: CodecShared> Inner<E> for commonware_storage::journal::contiguous::variable::Journal<E, V>

Available on neither commonware_stability_BETA nor commonware_stability_GAMMA nor commonware_stability_DELTA nor commonware_stability_EPSILON nor commonware_stability_RESERVED.
Source§

type Config = Config<<V as Read>::Cfg>