LikeNamespace

Trait LikeNamespace 

Source
pub trait LikeNamespace {
    // Required methods
    fn get_export(&self, name: &str) -> Option<Export>;
    fn get_exports(&self) -> Vec<(String, Export)>;
    fn maybe_insert(&mut self, name: &str, export: Export) -> Option<()>;
}
Expand description

This trait represents objects that act as a namespace for imports. For example, an Instance or ImportObject could be considered namespaces that could provide imports to an instance.

Required Methods§

Source

fn get_export(&self, name: &str) -> Option<Export>

Gets an export by name.

Source

fn get_exports(&self) -> Vec<(String, Export)>

Gets all exports in the namespace.

Source

fn maybe_insert(&mut self, name: &str, export: Export) -> Option<()>

Maybe insert an Export by name into the namespace.

Implementations on Foreign Types§

Source§

impl LikeNamespace for Rc<Instance>

Source§

fn get_export(&self, name: &str) -> Option<Export>

Source§

fn get_exports(&self) -> Vec<(String, Export)>

Source§

fn maybe_insert(&mut self, _name: &str, _export: Export) -> Option<()>

Source§

impl LikeNamespace for Arc<Mutex<Instance>>

Source§

fn get_export(&self, name: &str) -> Option<Export>

Source§

fn get_exports(&self) -> Vec<(String, Export)>

Source§

fn maybe_insert(&mut self, _name: &str, _export: Export) -> Option<()>

Implementors§