Enum rune_ssa::Term[][src]

pub enum Term {
    Panic,
    JumpIf {
        condition: Assign,
        then_block: BlockId,
        else_block: BlockId,
    },
    Jump {
        block: BlockId,
    },
    Return {
        var: Assign,
    },
}

An operation that terminates a block.

Variants

Panic

Default termination. The procedure will panic.

JumpIf

Conditionally jump to the given block if the given condition is true.

Fields of JumpIf

condition: Assign

The condition of the jump.

then_block: BlockId

Where to jump if the condition is true.

else_block: BlockId

Where to jump if the condition is false.

Jump

Unconditionally jump to the given block.

Fields of Jump

block: BlockId

Block to jump to.

Return

Return from the current procedure with the given value.

Fields of Return

var: Assign

The value to return.

Auto Trait Implementations

impl !RefUnwindSafe for Term

impl !Send for Term

impl !Sync for Term

impl Unpin for Term

impl !UnwindSafe for Term

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.