pub struct FunctionBindgen<'a> {Show 25 fields
pub resource_map: &'a ResourceMap,
pub remote_resource_map: &'a RemoteResourceMap,
pub clear_resource_borrows: bool,
pub intrinsics: &'a mut BTreeSet<Intrinsic>,
pub valid_lifting_optimization: bool,
pub sizes: &'a SizeAlign,
pub err: ErrHandling,
pub tmp: usize,
pub src: Source,
pub block_storage: Vec<Source>,
pub blocks: Vec<(String, Vec<String>)>,
pub params: Vec<String>,
pub memory: Option<&'a String>,
pub realloc: Option<&'a String>,
pub post_return: Option<&'a String>,
pub tracing_prefix: &'a String,
pub tracing_enabled: bool,
pub encoding: StringEncoding,
pub callee: &'a str,
pub callee_resource_dynamic: bool,
pub resolve: &'a Resolve,
pub requires_async_porcelain: bool,
pub is_guest_async_lifted: bool,
pub canon_opts: &'a CanonicalOptions,
pub iface_name: Option<&'a str>,
}
Fields§
§resource_map: &'a ResourceMap
Mapping of resources for types that have corresponding definitions locally
remote_resource_map: &'a RemoteResourceMap
Mapping of resources for types that are defined only in the remote component and must be auto-vivicated locally.
clear_resource_borrows: bool
Whether current resource borrows need to be deactivated
intrinsics: &'a mut BTreeSet<Intrinsic>
Set of intrinsics
valid_lifting_optimization: bool
Whether to perform valid lifting optimization
sizes: &'a SizeAlign
Sizes and alignments for sub elements
err: ErrHandling
Method of error handling
tmp: usize
Temporary values
src: Source
Source code of the function
block_storage: Vec<Source>
Block storage
blocks: Vec<(String, Vec<String>)>
Blocks of the fucntion
params: Vec<String>
Parameters of the function
memory: Option<&'a String>
Memory variable
realloc: Option<&'a String>
Realloc function name
post_return: Option<&'a String>
Post return function name
tracing_prefix: &'a String
Prefix to use when printing tracing information
tracing_enabled: bool
Whether tracing is enabled
encoding: StringEncoding
Method if string encoding
callee: &'a str
Callee of the function
callee_resource_dynamic: bool
Whether the callee is dynamic (i.e. has multiple operands)
resolve: &'a Resolve
The [wit_bindgen::Resolve
] containing extracted WIT information
requires_async_porcelain: bool
Whether the function requires async porcelain
In the case of an import this likely implies the use of JSPI and in the case of an export this is simply code generation metadata.
is_guest_async_lifted: bool
Whether the function is guest async lifted (i.e. WASI P3)
canon_opts: &'a CanonicalOptions
Canon opts
iface_name: Option<&'a str>
Interface name
Trait Implementations§
Source§impl Bindgen for FunctionBindgen<'_>
impl Bindgen for FunctionBindgen<'_>
Source§fn sizes(&self) -> &SizeAlign
fn sizes(&self) -> &SizeAlign
Source§fn push_block(&mut self)
fn push_block(&mut self)
Source§fn finish_block(&mut self, operands: &mut Vec<String>)
fn finish_block(&mut self, operands: &mut Vec<String>)
operand
specified was the resulting value of the block. Read more