pub trait ScriptFunctionGenerator<SE>
where SE: ScriptExpression,
{ type Input; type Output; // Required method fn generate_function_body( script: Arc<Vec<ScriptOperation<'static, SE>>>, input: Self::Input ) -> Option<(FunctionBody, Self::Output)>; // Provided method fn generate_function( function: &ScriptFunction<'static, SE>, registry: &Registry, input: Self::Input ) -> Option<(Function, Self::Output)> { ... } }

Required Associated Types§

Required Methods§

source

fn generate_function_body( script: Arc<Vec<ScriptOperation<'static, SE>>>, input: Self::Input ) -> Option<(FunctionBody, Self::Output)>

Provided Methods§

source

fn generate_function( function: &ScriptFunction<'static, SE>, registry: &Registry, input: Self::Input ) -> Option<(Function, Self::Output)>

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<SE> ScriptFunctionGenerator<SE> for VmScope<'static, SE>
where SE: ScriptExpression + 'static,

§

type Input = Option<Arc<RwLock<dyn VmDebugger<SE> + Send + Sync>>>

§

type Output = ID<()>