MagicStateMachines 0.1.0

Ergonomic typestate wrappers for compiler-enforced state machines with separable contracts
Documentation
mod owned;
mod storage;

pub use owned::{SPin, StateOwned, TransitionCall, transition};
pub use storage::{
    ConcreteProofTransitionCall, DiscriminatedTransitionCall, EffectTransitionCall, InferenceKind,
    InnerInference, InnerStateInference, KindProofTransitionCall, OuterInference,
    PinnedDiscriminatedTransitionCall, PinnedEffectTransitionCall,
    PinnedStateUnionProofTransitionCall, PinnedTransitionEffect, PinnedTransitionEffectSelector,
    SBox, SMove, SMut, SOwned, SPinBox, SPinMut, SPinRef, SRef, SResult, State, StateInference,
    StateStorage, StateStorageNew, StateTransitionCall, StateUnionProofTransitionCall,
    StorageStateOwned, StorageStateOwnedBox, StorageStateOwnedPinBox, TransitionCallsite,
    TransitionEffect, TransitionEffectSelector, complete_transition_after_effect, pin_mut, pin_ref,
    proven_state, proven_union_state, transition_callsite, transition_concrete_after_effect,
    transition_concrete_after_pinned_effect, transition_discriminated_state,
    transition_discriminated_state_pinned, transition_state,
    transition_state_with_concrete_kind_proof, transition_state_with_concrete_proof,
    transition_state_with_concrete_transition_proof, transition_state_with_effect,
    transition_state_with_erased_transition_proof, transition_state_with_kind_proof,
    transition_state_with_pinned_effect, transition_state_with_static_union_pinned_proof,
    transition_state_with_static_union_proof, transition_state_with_union_proof,
    transition_state_with_union_transition_proof,
};
#[cfg(feature = "unique-rc-arc")]
pub use storage::{StorageStateOwnedUniqueArc, StorageStateOwnedUniqueRc};