Struct wasm_bindgen_externref_xform::Context
source · pub struct Context { /* private fields */ }
Expand description
State of the externref pass, used to collect information while bindings are generated and used eventually to actually execute the entire pass.
Implementations§
source§impl Context
impl Context
sourcepub fn prepare(&mut self, module: &mut Module) -> Result<(), Error>
pub fn prepare(&mut self, module: &mut Module) -> Result<(), Error>
Executed first very early over a wasm module, used to learn about how large the function table is so we know what indexes to hand out when we’re appending entries.
sourcepub fn import_xform(
&mut self,
id: ImportId,
externref: &[(usize, bool)],
ret_externref: bool,
) -> &mut Self
pub fn import_xform( &mut self, id: ImportId, externref: &[(usize, bool)], ret_externref: bool, ) -> &mut Self
Store information about an imported function that needs to be
transformed. The actual transformation happens later during run
.
sourcepub fn export_xform(
&mut self,
id: ExportId,
externref: &[(usize, bool)],
ret_externref: bool,
) -> &mut Self
pub fn export_xform( &mut self, id: ExportId, externref: &[(usize, bool)], ret_externref: bool, ) -> &mut Self
Store information about an exported function that needs to be
transformed. The actual transformation happens later during run
.
sourcepub fn table_element_xform(
&mut self,
idx: u32,
externref: &[(usize, bool)],
ret_externref: bool,
) -> Option<u32>
pub fn table_element_xform( &mut self, idx: u32, externref: &[(usize, bool)], ret_externref: bool, ) -> Option<u32>
Store information about a function pointer that needs to be transformed.
The actual transformation happens later during run
. Returns an index
that the new wrapped function pointer will be injected at.