pub trait Validator {
    type Input;
    type Output;
    type FuncValidator: FuncValidator;

    // Required methods
    fn new(module: &Module, input: Self::Input) -> Self;
    fn func_validator_input(
        &mut self
    ) -> <Self::FuncValidator as FuncValidator>::Input;
    fn on_function_validated(
        &mut self,
        index: u32,
        output: <<Self as Validator>::FuncValidator as FuncValidator>::Output
    );
    fn finish(self) -> Self::Output;
}

Required Associated Types§

source

type Input

Custom inputs to the validator constructor.

source

type Output

source

type FuncValidator: FuncValidator

Required Methods§

source

fn new(module: &Module, input: Self::Input) -> Self

source

fn func_validator_input( &mut self ) -> <Self::FuncValidator as FuncValidator>::Input

source

fn on_function_validated( &mut self, index: u32, output: <<Self as Validator>::FuncValidator as FuncValidator>::Output )

source

fn finish(self) -> Self::Output

Implementors§