[][src]Struct cranelift_codegen::ir::InsertBuilder

pub struct InsertBuilder<'f, IIB: InstInserterBase<'f>> { /* fields omitted */ }

Builder that inserts an instruction at the current position.

An InsertBuilder is a wrapper for an InstInserterBase that turns it into an instruction builder with some additional facilities for creating instructions that reuse existing values as their results.

Methods

impl<'f, IIB: InstInserterBase<'f>> InsertBuilder<'f, IIB>[src]

pub fn new(inserter: IIB) -> Self[src]

Create a new builder which inserts instructions at pos. The dfg and pos.layout references should be from the same Function.

pub fn with_results<Array>(
    self,
    reuse: Array
) -> InsertReuseBuilder<'f, IIB, Array> where
    Array: AsRef<[Option<Value>]>, 
[src]

Reuse result values in reuse.

Convert this builder into one that will reuse the provided result values instead of allocating new ones. The provided values for reuse must not be attached to anything. Any missing result values will be allocated as normal.

The reuse argument is expected to be an array of Option<Value>.

pub fn with_result(
    self,
    v: Value
) -> InsertReuseBuilder<'f, IIB, [Option<Value>; 1]>
[src]

Reuse a single result value.

Convert this into a builder that will reuse v as the single result value. The reused result value v must not be attached to anything.

This method should only be used when building an instruction with exactly one result. Use with_results() for the more general case.

Trait Implementations

impl<'f, IIB: InstInserterBase<'f>> InstBuilderBase<'f> for InsertBuilder<'f, IIB>[src]

Auto Trait Implementations

impl<'f, IIB> Send for InsertBuilder<'f, IIB> where
    IIB: Send

impl<'f, IIB> Sync for InsertBuilder<'f, IIB> where
    IIB: Sync

Blanket Implementations

impl<T> From for T[src]

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]