pub trait DoubleState {
    // Required methods
    fn name(&self) -> &'static str;
    fn linear_transition(&self) -> Self;
    fn arbitrary_transition(&self, next_state: &Self) -> Self;
    fn to_string(&self) -> String;
    fn parse_arbs(&self, arbs: &str) -> Vec<String>;
}

Required Methods§

source

fn name(&self) -> &'static str

Returns the name of the enum

source

fn linear_transition(&self) -> Self

Attempts to find a valid linear transition for the current self state.

panics if no valid linear transition was found for self

source

fn arbitrary_transition(&self, next_state: &Self) -> Self

Attempts to find a valid arbirary transition for the current self state.

panics if no valid arbitrary transition was found for self

source

fn to_string(&self) -> String

Converts the current self state to a String

source

fn parse_arbs(&self, arbs: &str) -> Vec<String>

Parse the arbitrary transition String from StateFields into a Vec<String>

Object Safety§

This trait is not object safe.

Implementors§