wars

Trait Plugin

Source
pub trait Plugin {
    // Required methods
    fn pre(&self, module: &mut Module<'static>);
    fn import(
        &self,
        opts: &Opts<Module<'static>>,
        module: &str,
        name: &str,
        params: Vec<TokenStream>,
    ) -> Option<TokenStream>;
    fn post(&self, opts: &Opts<Module<'static>>) -> TokenStream;

    // Provided methods
    fn mem_import(
        &self,
        opts: &Opts<Module<'static>>,
        module: &str,
        name: &str,
    ) -> Option<MemImport> { ... }
    fn bounds(&self, opts: &Opts<Module<'static>>) -> Option<TokenStream> { ... }
    fn exref_bounds(&self, opts: &Opts<Module<'static>>) -> Option<TokenStream> { ... }
}

Required Methods§

Source

fn pre(&self, module: &mut Module<'static>)

Source

fn import( &self, opts: &Opts<Module<'static>>, module: &str, name: &str, params: Vec<TokenStream>, ) -> Option<TokenStream>

Source

fn post(&self, opts: &Opts<Module<'static>>) -> TokenStream

Provided Methods§

Source

fn mem_import( &self, opts: &Opts<Module<'static>>, module: &str, name: &str, ) -> Option<MemImport>

Source

fn bounds(&self, opts: &Opts<Module<'static>>) -> Option<TokenStream>

Source

fn exref_bounds(&self, opts: &Opts<Module<'static>>) -> Option<TokenStream>

Implementors§