[][src]Trait gluon::compiler_pipeline::Executable

pub trait Executable<'vm, Extra> {
    type Expr;
#[must_use]    fn run_expr<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait, T>(
        self,
        compiler: &'life0 mut ModuleCompiler<'life1, 'life2>,
        vm: T,
        name: &'life3 str,
        expr_str: &'life4 str,
        arg: Extra
    ) -> Pin<Box<dyn Future<Output = Result<ExecuteValue<RootedThread, Self::Expr>>> + Send + 'async_trait>>
    where
        T: Send + Sync + VmRoot<'vm>,
        Extra: 'async_trait,
        'vm: 'async_trait,
        T: 'async_trait,
        'life0: 'async_trait,
        'life1: 'async_trait,
        'life2: 'async_trait,
        'life3: 'async_trait,
        'life4: 'async_trait,
        Self: 'async_trait
;
#[must_use] fn load_script<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait, T>(
        self,
        compiler: &'life0 mut ModuleCompiler<'life1, 'life2>,
        vm: T,
        filename: &'life3 str,
        expr_str: &'life4 str,
        arg: Extra
    ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
    where
        T: Send + Sync + VmRoot<'vm>,
        Extra: 'async_trait,
        'vm: 'async_trait,
        T: 'async_trait,
        'life0: 'async_trait,
        'life1: 'async_trait,
        'life2: 'async_trait,
        'life3: 'async_trait,
        'life4: 'async_trait,
        Self: 'async_trait
; }

Associated Types

type Expr

Loading content...

Required methods

#[must_use]fn run_expr<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait, T>(
    self,
    compiler: &'life0 mut ModuleCompiler<'life1, 'life2>,
    vm: T,
    name: &'life3 str,
    expr_str: &'life4 str,
    arg: Extra
) -> Pin<Box<dyn Future<Output = Result<ExecuteValue<RootedThread, Self::Expr>>> + Send + 'async_trait>> where
    T: Send + Sync + VmRoot<'vm>,
    Extra: 'async_trait,
    'vm: 'async_trait,
    T: 'async_trait,
    'life0: 'async_trait,
    'life1: 'async_trait,
    'life2: 'async_trait,
    'life3: 'async_trait,
    'life4: 'async_trait,
    Self: 'async_trait, 

#[must_use]fn load_script<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait, T>(
    self,
    compiler: &'life0 mut ModuleCompiler<'life1, 'life2>,
    vm: T,
    filename: &'life3 str,
    expr_str: &'life4 str,
    arg: Extra
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
    T: Send + Sync + VmRoot<'vm>,
    Extra: 'async_trait,
    'vm: 'async_trait,
    T: 'async_trait,
    'life0: 'async_trait,
    'life1: 'async_trait,
    'life2: 'async_trait,
    'life3: 'async_trait,
    'life4: 'async_trait,
    Self: 'async_trait, 

Loading content...

Implementors

impl<'vm, C, Extra> Executable<'vm, Extra> for C where
    C: Compileable<Extra> + Send,
    C::Expr: Send + 'vm,
    Extra: Send
[src]

type Expr = C::Expr

impl<'vm, D> Executable<'vm, ()> for Precompiled<D> where
    D: Deserializer<'vm> + Send
[src]

type Expr = ()

impl<'vm, E> Executable<'vm, ()> for CompileValue<E> where
    E: Send + 'vm, 
[src]

type Expr = E

Loading content...