[][src]Struct cranelift_codegen::cursor::EncCursor

pub struct EncCursor<'f> {
    pub func: &'f mut Function,
    pub isa: &'f dyn TargetIsa,
    // some fields omitted
}

Encoding cursor.

An EncCursor can be used to insert instructions that are immediately assigned an encoding. The cursor holds a mutable reference to the whole function which can be re-borrowed from the public pos.func member.

Fields

func: &'f mut Function

The referenced function.

isa: &'f dyn TargetIsa

The target ISA that will be used to encode instructions.

Methods

impl<'f> EncCursor<'f>[src]

pub fn new(func: &'f mut Function, isa: &'f dyn TargetIsa) -> Self[src]

Create a new EncCursor pointing nowhere.

pub fn use_srcloc(&mut self, inst: Inst)[src]

Use the source location of inst for future instructions.

pub fn ins(&mut self) -> InsertBuilder<&mut EncCursor<'f>>[src]

Create an instruction builder that will insert an encoded instruction at the current position.

The builder will panic if it is used to insert an instruction that can't be encoded for self.isa.

pub fn built_inst(&self) -> Inst[src]

Get the last built instruction.

This returns the last instruction that was built using the ins() method on this cursor. Panics if no instruction was built.

pub fn display_inst(&self, inst: Inst) -> DisplayInst[src]

Return an object that can display inst.

This is a convenience wrapper for the DFG equivalent.

Trait Implementations

impl<'f> Cursor for EncCursor<'f>[src]

impl<'c, 'f> InstInserterBase<'c> for &'c mut EncCursor<'f>[src]

Auto Trait Implementations

impl<'f> !RefUnwindSafe for EncCursor<'f>

impl<'f> Send for EncCursor<'f>

impl<'f> Sync for EncCursor<'f>

impl<'f> Unpin for EncCursor<'f>

impl<'f> !UnwindSafe for EncCursor<'f>

Blanket Implementations

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

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

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

impl<T> From<T> for T[src]

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

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

type Error = Infallible

The type returned in the event of a conversion error.

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

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

The type returned in the event of a conversion error.