Struct cranelift_codegen::ir::entities::Inst[][src]

pub struct Inst(_);
Expand description

An opaque reference to an instruction in a Function.

Most usage of Inst is internal. Instructions are returned by InstBuilder instructions that do not return a Value, such as control flow and trap instructions.

If you look around the API, you can find many inventive uses for Inst, such as annotating specific instructions with a comment or performing reflection at compile time on the type of instruction.

While the order is stable, it is arbitrary and does not necessarily resemble the layout order.

Implementations

impl Inst[src]

pub fn from_u32(x: u32) -> Self[src]

Create a new instance from a u32.

pub fn as_u32(self) -> u32[src]

Return the underlying index value as a u32.

Trait Implementations

impl Clone for Inst[src]

fn clone(&self) -> Inst[src]

Returns a copy of the value. Read more

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl Debug for Inst[src]

fn fmt(&self, f: &mut Formatter<'_>) -> Result[src]

Formats the value using the given formatter. Read more

impl Display for Inst[src]

fn fmt(&self, f: &mut Formatter<'_>) -> Result[src]

Formats the value using the given formatter. Read more

impl EntityRef for Inst[src]

fn new(index: usize) -> Self[src]

Create a new entity reference from a small integer. This should crash if the requested index is not representable. Read more

fn index(self) -> usize[src]

Get the index that was used to create this entity reference.

impl From<Inst> for AnyEntity[src]

fn from(r: Inst) -> Self[src]

Performs the conversion.

impl From<Inst> for ProgramPoint[src]

fn from(inst: Inst) -> Self[src]

Performs the conversion.

impl From<Inst> for ExpandedProgramPoint[src]

fn from(inst: Inst) -> Self[src]

Performs the conversion.

impl Hash for Inst[src]

fn hash<__H: Hasher>(&self, state: &mut __H)[src]

Feeds this value into the given Hasher. Read more

fn hash_slice<H>(data: &[Self], state: &mut H) where
    H: Hasher
1.3.0[src]

Feeds a slice of this type into the given Hasher. Read more

impl Index<Inst> for DataFlowGraph[src]

Allow immutable access to instructions via indexing.

type Output = InstructionData

The returned type after indexing.

fn index(&self, inst: Inst) -> &InstructionData[src]

Performs the indexing (container[index]) operation. Read more

impl IndexMut<Inst> for DataFlowGraph[src]

Allow mutable access to instructions via indexing.

fn index_mut(&mut self, inst: Inst) -> &mut InstructionData[src]

Performs the mutable indexing (container[index]) operation. Read more

impl Ord for Inst[src]

fn cmp(&self, other: &Inst) -> Ordering[src]

This method returns an Ordering between self and other. Read more

#[must_use]
fn max(self, other: Self) -> Self
1.21.0[src]

Compares and returns the maximum of two values. Read more

#[must_use]
fn min(self, other: Self) -> Self
1.21.0[src]

Compares and returns the minimum of two values. Read more

#[must_use]
fn clamp(self, min: Self, max: Self) -> Self
1.50.0[src]

Restrict a value to a certain interval. Read more

impl PartialEq<Inst> for Inst[src]

fn eq(&self, other: &Inst) -> bool[src]

This method tests for self and other values to be equal, and is used by ==. Read more

fn ne(&self, other: &Inst) -> bool[src]

This method tests for !=.

impl PartialOrd<Inst> for Inst[src]

fn partial_cmp(&self, other: &Inst) -> Option<Ordering>[src]

This method returns an ordering between self and other values if one exists. Read more

#[must_use]
fn lt(&self, other: &Rhs) -> bool
1.0.0[src]

This method tests less than (for self and other) and is used by the < operator. Read more

#[must_use]
fn le(&self, other: &Rhs) -> bool
1.0.0[src]

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more

#[must_use]
fn gt(&self, other: &Rhs) -> bool
1.0.0[src]

This method tests greater than (for self and other) and is used by the > operator. Read more

#[must_use]
fn ge(&self, other: &Rhs) -> bool
1.0.0[src]

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more

impl ReservedValue for Inst[src]

fn reserved_value() -> Inst[src]

Create an instance of the reserved value.

fn is_reserved_value(&self) -> bool[src]

Checks whether value is the reserved one.

impl Copy for Inst[src]

impl Eq for Inst[src]

impl StructuralEq for Inst[src]

impl StructuralPartialEq for Inst[src]

Auto Trait Implementations

impl RefUnwindSafe for Inst

impl Send for Inst

impl Sync for Inst

impl Unpin for Inst

impl UnwindSafe for Inst

Blanket Implementations

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

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

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

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

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

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

impl<Q, K> Equivalent<K> for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?Sized
[src]

pub fn equivalent(&self, key: &K) -> bool[src]

Compare self to key and return true if they are equal.

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

pub fn from(t: T) -> T[src]

Performs the conversion.

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

pub fn into(self) -> U[src]

Performs the conversion.

impl<T> SparseMapValue<T> for T where
    T: EntityRef
[src]

pub fn key(&self) -> T[src]

Get the key of this sparse map value. This key is not allowed to change while the value is a member of the map. Read more

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

pub fn to_owned(&self) -> T[src]

Creates owned data from borrowed data, usually by cloning. Read more

pub fn clone_into(&self, target: &mut T)[src]

🔬 This is a nightly-only experimental API. (toowned_clone_into)

recently added

Uses borrowed data to replace owned data, usually by cloning. Read more

impl<T> ToString for T where
    T: Display + ?Sized
[src]

pub default fn to_string(&self) -> String[src]

Converts the given value to a String. Read more

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.

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

Performs the conversion.

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.

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

Performs the conversion.