Struct FunctionBindgen

Source
pub struct FunctionBindgen<'a> {
Show 20 fields pub resource_map: &'a ResourceMap, pub cur_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: Option<&'a String>, pub encoding: StringEncoding, pub callee: &'a str, pub callee_resource_dynamic: bool, pub resolve: &'a Resolve, pub is_async: bool,
}

Fields§

§resource_map: &'a ResourceMap§cur_resource_borrows: bool§intrinsics: &'a mut BTreeSet<Intrinsic>§valid_lifting_optimization: bool§sizes: &'a SizeAlign§err: ErrHandling§tmp: usize§src: Source§block_storage: Vec<Source>§blocks: Vec<(String, Vec<String>)>§params: Vec<String>§memory: Option<&'a String>§realloc: Option<&'a String>§post_return: Option<&'a String>§tracing_prefix: Option<&'a String>§encoding: StringEncoding§callee: &'a str§callee_resource_dynamic: bool§resolve: &'a Resolve§is_async: bool

Trait Implementations§

Source§

impl Bindgen for FunctionBindgen<'_>

Source§

type Operand = String

The intermediate type for fragments of code for this type. Read more
Source§

fn sizes(&self) -> &SizeAlign

Returns size information that was previously calculated for all types.
Source§

fn push_block(&mut self)

Enters a new block of code to generate code for. Read more
Source§

fn finish_block(&mut self, operands: &mut Vec<String>)

Indicates to the code generator that a block is completed, and the operand specified was the resulting value of the block. Read more
Source§

fn return_pointer( &mut self, _size: ArchitectureSize, _align: Alignment, ) -> String

Gets a operand reference to the return pointer area. Read more
Source§

fn is_list_canonical(&self, resolve: &Resolve, ty: &Type) -> bool

Returns whether or not the specified element type is represented in a “canonical” form for lists. This dictates whether the ListCanonLower and ListCanonLift instructions are used or not.
Source§

fn emit( &mut self, resolve: &Resolve, inst: &Instruction<'_>, operands: &mut Vec<String>, results: &mut Vec<String>, )

Emit code to implement the given instruction. Read more

Auto Trait Implementations§

§

impl<'a> Freeze for FunctionBindgen<'a>

§

impl<'a> RefUnwindSafe for FunctionBindgen<'a>

§

impl<'a> Send for FunctionBindgen<'a>

§

impl<'a> Sync for FunctionBindgen<'a>

§

impl<'a> Unpin for FunctionBindgen<'a>

§

impl<'a> !UnwindSafe for FunctionBindgen<'a>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> ErasedDestructor for T
where T: 'static,