fedimint_client::sm::util

Trait MapStateTransitions

source
pub trait MapStateTransitions {
    type State: MaybeSend + MaybeSync + 'static;

    // Required method
    fn map<D, W, U>(self, wrap: W, unwrap: U) -> Vec<StateTransition<D>>
       where D: MaybeSend + MaybeSync + 'static,
             W: Fn(Self::State) -> D + Clone + MaybeSend + MaybeSync + 'static,
             U: Fn(D) -> Self::State + Clone + MaybeSend + MaybeSync + 'static;
}

Required Associated Types§

source

type State: MaybeSend + MaybeSync + 'static

Required Methods§

source

fn map<D, W, U>(self, wrap: W, unwrap: U) -> Vec<StateTransition<D>>
where D: MaybeSend + MaybeSync + 'static, W: Fn(Self::State) -> D + Clone + MaybeSend + MaybeSync + 'static, U: Fn(D) -> Self::State + Clone + MaybeSend + MaybeSync + 'static,

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl<S> MapStateTransitions for Vec<StateTransition<S>>
where S: MaybeSend + MaybeSync + 'static,

source§

type State = S

source§

fn map<D, W, U>(self, wrap: W, unwrap: U) -> Vec<StateTransition<D>>
where D: MaybeSend + MaybeSync + 'static, W: Fn(Self::State) -> D + Clone + MaybeSend + MaybeSync + 'static, U: Fn(D) -> Self::State + Clone + MaybeSend + MaybeSync + 'static,

Implementors§