Struct orzir::dialects::std::func::CallOp

source ·
pub struct CallOp { /* private fields */ }
Expand description

A direct call operation.

This represents a direct call to a function by the symbol.

Implementations§

source§

impl CallOp

source

pub fn new( ctx: &mut Context, self_ptr: ArenaPtr<OpObj>, results: Vec<ArenaPtr<Value>>, operands: Vec<ArenaPtr<Value>>, callee: Symbol ) -> ArenaPtr<OpObj>

Trait Implementations§

source§

impl ControlFlow for CallOp

source§

fn num_successors(&self) -> usize

Get the number of successors.
source§

fn get_successor(&self, index: usize) -> Option<&Successor>

Get the successor at the given index.
source§

fn set_successor( &mut self, index: usize, successor: Successor ) -> Option<Successor>

Set the successor at the given index and return the old successor (if any).
source§

fn successors(&self) -> Vec<&Successor>

Get all successors.
source§

impl DataFlow for CallOp

source§

fn num_operands(&self) -> usize

Get the number of operands. Read more
source§

fn get_operand(&self, index: usize) -> Option<ArenaPtr<Value>>

Get the operand at the given index.
source§

fn set_operand( &mut self, index: usize, value: ArenaPtr<Value> ) -> Option<ArenaPtr<Value>>

Set the operand at the given index and return the old operand (if any).
source§

fn num_results(&self) -> usize

Get the number of results. Read more
source§

fn get_result(&self, index: usize) -> Option<ArenaPtr<Value>>

Get the result at the given index.
source§

fn set_result( &mut self, index: usize, value: ArenaPtr<Value> ) -> Option<ArenaPtr<Value>>

Set the result at the given index and return the old result (if any).
source§

fn operands(&self) -> Vec<ArenaPtr<Value>>

Get all operands.
source§

fn results(&self) -> Vec<ArenaPtr<Value>>

Get all results.
source§

fn operand_tys(&self, ctx: &Context) -> Vec<ArenaPtr<TyObj>>

Get all operand types.
source§

fn result_tys(&self, ctx: &Context) -> Vec<ArenaPtr<TyObj>>

Get all result types.
source§

impl NumRegions<0> for CallOp

source§

impl Op for CallOp

source§

fn mnemonic(&self) -> Mnemonic

Get the mnemonic of the type.
source§

fn mnemonic_static() -> Mnemonic

Get the mnemonic of the type statically.
source§

fn register(ctx: &mut Context, parse_fn: OpParseFn)
where Self: Sized,

Register the operation to the context. Read more
source§

fn metadata(&self) -> &OpMetadata

source§

fn metadata_mut(&mut self) -> &mut OpMetadata

source§

fn self_ptr(&self) -> ArenaPtr<OpObj>

Get the self ptr.
source§

fn parent_block(&self) -> Option<ArenaPtr<Block>>

Get the parent block of the operation.
source§

fn set_parent_block( &mut self, parent_block: Option<ArenaPtr<Block>> ) -> Option<ArenaPtr<Block>>

Set the parent block of the operation.
source§

fn parent_region(&self, ctx: &Context) -> Option<ArenaPtr<Region>>

Get the parent region of the operation. Read more
source§

impl Parse for CallOp

§

type Item = ArenaPtr<OpObj>

source§

fn parse( __ctx: &mut Context, __state: &mut ParseState<'_> ) -> ParseResult<Self::Item>

source§

impl Print for CallOp

source§

fn print(&self, __ctx: &Context, __state: &mut PrintState) -> PrintResult<()>

source§

impl RegionInterface for CallOp

source§

fn num_regions(&self) -> usize

Get the number of regions.
source§

fn get_region(&self, index: usize) -> Option<ArenaPtr<Region>>

Get the region at the given index.
source§

fn set_region( &mut self, index: usize, region: ArenaPtr<Region> ) -> Option<ArenaPtr<Region>>

Set the region at the given index and return the old region (if any).
source§

fn regions(&self) -> Vec<ArenaPtr<Region>>

Get all regions.
source§

fn get_region_kind(&self, ctx: &Context, index: usize) -> RegionKind

Get the region kind at the given index.
source§

fn has_ssa_dominance(&self, ctx: &Context, index: usize) -> bool

Check if the region has SSA dominance.
source§

impl RunVerifiers for CallOp

source§

impl VariadicOperands for CallOp

source§

impl VariadicResults for CallOp

source§

impl Verify for CallOp

Auto Trait Implementations§

§

impl Freeze for CallOp

§

impl !RefUnwindSafe for CallOp

§

impl !Send for CallOp

§

impl !Sync for CallOp

§

impl Unpin for CallOp

§

impl !UnwindSafe for CallOp

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
§

impl<T> Downcast for T
where T: Any,

§

fn into_any(self: Box<T>) -> Box<dyn Any>

Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.
§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait.
§

fn as_any(&self) -> &(dyn Any + 'static)

Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Any’s vtable from &Trait’s.
§

fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s.
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>,

§

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>,

§

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.