Trait Step

Source
pub trait Step:
    Any
    + Send
    + Sync
    + Debug
    + 'static {
    // Required methods
    fn name(&self) -> String;
    fn apply(
        &self,
        dart: &mut Tree,
        schema: Arc<Schema>,
    ) -> Result<StepResult, Error>;
    fn serialize(&self) -> Option<Vec<u8>>;
    fn invert(&self, dart: &Arc<Tree>) -> Option<Arc<dyn Step>>;
}

Required Methods§

Source

fn name(&self) -> String

Source

fn apply( &self, dart: &mut Tree, schema: Arc<Schema>, ) -> Result<StepResult, Error>

Source

fn serialize(&self) -> Option<Vec<u8>>

Source

fn invert(&self, dart: &Arc<Tree>) -> Option<Arc<dyn Step>>

Implementations§

Source§

impl dyn Step

Source

pub fn downcast_ref<E>(&self) -> Option<&E>
where E: Step,

Implementors§