[−][src]Enum libfirm_rs::nodes::Node
Variants
Add(Add)
Address(Address)
Align(Align)
Alloc(Alloc)
Anchor(Anchor)
And(And)
Bad(Bad)
Bitcast(Bitcast)
Block(Block)
Builtin(Builtin)
Call(Call)
Cmp(Cmp)
Cond(Cond)
Confirm(Confirm)
Const(Const)
Conv(Conv)
CopyB(CopyB)
Deleted(Deleted)
Div(Div)
Dummy(Dummy)
End(End)
Eor(Eor)
Free(Free)
IJmp(IJmp)
Id(Id)
Jmp(Jmp)
Load(Load)
Member(Member)
Minus(Minus)
Mod(Mod)
Mul(Mul)
Mulh(Mulh)
Mux(Mux)
NoMem(NoMem)
Not(Not)
Offset(Offset)
Or(Or)
Phi(Phi)
Pin(Pin)
Proj(Proj, ProjKind)
Raise(Raise)
Return(Return)
Sel(Sel)
Shl(Shl)
Shr(Shr)
Shrs(Shrs)
Size(Size)
Start(Start)
Store(Store)
Sub(Sub)
Switch(Switch)
Sync(Sync)
Tuple(Tuple)
Unknown(Unknown)
Methods
impl Node
[src]
impl Node
pub fn wrap(ir_node: *mut ir_node) -> Self
[src]
pub fn wrap(ir_node: *mut ir_node) -> Self
pub fn is_proj_kind_argtuple_arg(n: Self) -> bool
[src]
pub fn is_proj_kind_argtuple_arg(n: Self) -> bool
pub fn must_member(self) -> Member
[src]
pub fn must_member(self) -> Member
pub fn must_sel(self) -> Sel
[src]
pub fn must_sel(self) -> Sel
pub fn must_phi(self) -> Phi
[src]
pub fn must_phi(self) -> Phi
pub fn opt_phi(self) -> Option<Phi>
[src]
pub fn opt_phi(self) -> Option<Phi>
impl Node
[src]
impl Node
pub fn is_add(node: Node) -> bool
[src]
pub fn is_add(node: Node) -> bool
pub fn as_add(node: Node) -> Option<Add>
[src]
pub fn as_add(node: Node) -> Option<Add>
pub fn is_address(node: Node) -> bool
[src]
pub fn is_address(node: Node) -> bool
pub fn as_address(node: Node) -> Option<Address>
[src]
pub fn as_address(node: Node) -> Option<Address>
pub fn is_align(node: Node) -> bool
[src]
pub fn is_align(node: Node) -> bool
pub fn as_align(node: Node) -> Option<Align>
[src]
pub fn as_align(node: Node) -> Option<Align>
pub fn is_alloc(node: Node) -> bool
[src]
pub fn is_alloc(node: Node) -> bool
pub fn as_alloc(node: Node) -> Option<Alloc>
[src]
pub fn as_alloc(node: Node) -> Option<Alloc>
pub fn is_anchor(node: Node) -> bool
[src]
pub fn is_anchor(node: Node) -> bool
pub fn as_anchor(node: Node) -> Option<Anchor>
[src]
pub fn as_anchor(node: Node) -> Option<Anchor>
pub fn is_and(node: Node) -> bool
[src]
pub fn is_and(node: Node) -> bool
pub fn as_and(node: Node) -> Option<And>
[src]
pub fn as_and(node: Node) -> Option<And>
pub fn is_bad(node: Node) -> bool
[src]
pub fn is_bad(node: Node) -> bool
pub fn as_bad(node: Node) -> Option<Bad>
[src]
pub fn as_bad(node: Node) -> Option<Bad>
pub fn is_bitcast(node: Node) -> bool
[src]
pub fn is_bitcast(node: Node) -> bool
pub fn as_bitcast(node: Node) -> Option<Bitcast>
[src]
pub fn as_bitcast(node: Node) -> Option<Bitcast>
pub fn is_block(node: Node) -> bool
[src]
pub fn is_block(node: Node) -> bool
pub fn as_block(node: Node) -> Option<Block>
[src]
pub fn as_block(node: Node) -> Option<Block>
pub fn is_builtin(node: Node) -> bool
[src]
pub fn is_builtin(node: Node) -> bool
pub fn as_builtin(node: Node) -> Option<Builtin>
[src]
pub fn as_builtin(node: Node) -> Option<Builtin>
pub fn is_call(node: Node) -> bool
[src]
pub fn is_call(node: Node) -> bool
pub fn as_call(node: Node) -> Option<Call>
[src]
pub fn as_call(node: Node) -> Option<Call>
pub fn is_cmp(node: Node) -> bool
[src]
pub fn is_cmp(node: Node) -> bool
pub fn as_cmp(node: Node) -> Option<Cmp>
[src]
pub fn as_cmp(node: Node) -> Option<Cmp>
pub fn is_cond(node: Node) -> bool
[src]
pub fn is_cond(node: Node) -> bool
pub fn as_cond(node: Node) -> Option<Cond>
[src]
pub fn as_cond(node: Node) -> Option<Cond>
pub fn is_confirm(node: Node) -> bool
[src]
pub fn is_confirm(node: Node) -> bool
pub fn as_confirm(node: Node) -> Option<Confirm>
[src]
pub fn as_confirm(node: Node) -> Option<Confirm>
pub fn is_const(node: Node) -> bool
[src]
pub fn is_const(node: Node) -> bool
pub fn as_const(node: Node) -> Option<Const>
[src]
pub fn as_const(node: Node) -> Option<Const>
pub fn is_conv(node: Node) -> bool
[src]
pub fn is_conv(node: Node) -> bool
pub fn as_conv(node: Node) -> Option<Conv>
[src]
pub fn as_conv(node: Node) -> Option<Conv>
pub fn is_copyb(node: Node) -> bool
[src]
pub fn is_copyb(node: Node) -> bool
pub fn as_copyb(node: Node) -> Option<CopyB>
[src]
pub fn as_copyb(node: Node) -> Option<CopyB>
pub fn is_deleted(node: Node) -> bool
[src]
pub fn is_deleted(node: Node) -> bool
pub fn as_deleted(node: Node) -> Option<Deleted>
[src]
pub fn as_deleted(node: Node) -> Option<Deleted>
pub fn is_div(node: Node) -> bool
[src]
pub fn is_div(node: Node) -> bool
pub fn as_div(node: Node) -> Option<Div>
[src]
pub fn as_div(node: Node) -> Option<Div>
pub fn is_dummy(node: Node) -> bool
[src]
pub fn is_dummy(node: Node) -> bool
pub fn as_dummy(node: Node) -> Option<Dummy>
[src]
pub fn as_dummy(node: Node) -> Option<Dummy>
pub fn is_end(node: Node) -> bool
[src]
pub fn is_end(node: Node) -> bool
pub fn as_end(node: Node) -> Option<End>
[src]
pub fn as_end(node: Node) -> Option<End>
pub fn is_eor(node: Node) -> bool
[src]
pub fn is_eor(node: Node) -> bool
pub fn as_eor(node: Node) -> Option<Eor>
[src]
pub fn as_eor(node: Node) -> Option<Eor>
pub fn is_free(node: Node) -> bool
[src]
pub fn is_free(node: Node) -> bool
pub fn as_free(node: Node) -> Option<Free>
[src]
pub fn as_free(node: Node) -> Option<Free>
pub fn is_ijmp(node: Node) -> bool
[src]
pub fn is_ijmp(node: Node) -> bool
pub fn as_ijmp(node: Node) -> Option<IJmp>
[src]
pub fn as_ijmp(node: Node) -> Option<IJmp>
pub fn is_id(node: Node) -> bool
[src]
pub fn is_id(node: Node) -> bool
pub fn as_id(node: Node) -> Option<Id>
[src]
pub fn as_id(node: Node) -> Option<Id>
pub fn is_jmp(node: Node) -> bool
[src]
pub fn is_jmp(node: Node) -> bool
pub fn as_jmp(node: Node) -> Option<Jmp>
[src]
pub fn as_jmp(node: Node) -> Option<Jmp>
pub fn is_load(node: Node) -> bool
[src]
pub fn is_load(node: Node) -> bool
pub fn as_load(node: Node) -> Option<Load>
[src]
pub fn as_load(node: Node) -> Option<Load>
pub fn is_member(node: Node) -> bool
[src]
pub fn is_member(node: Node) -> bool
pub fn as_member(node: Node) -> Option<Member>
[src]
pub fn as_member(node: Node) -> Option<Member>
pub fn is_minus(node: Node) -> bool
[src]
pub fn is_minus(node: Node) -> bool
pub fn as_minus(node: Node) -> Option<Minus>
[src]
pub fn as_minus(node: Node) -> Option<Minus>
pub fn is_mod(node: Node) -> bool
[src]
pub fn is_mod(node: Node) -> bool
pub fn as_mod(node: Node) -> Option<Mod>
[src]
pub fn as_mod(node: Node) -> Option<Mod>
pub fn is_mul(node: Node) -> bool
[src]
pub fn is_mul(node: Node) -> bool
pub fn as_mul(node: Node) -> Option<Mul>
[src]
pub fn as_mul(node: Node) -> Option<Mul>
pub fn is_mulh(node: Node) -> bool
[src]
pub fn is_mulh(node: Node) -> bool
pub fn as_mulh(node: Node) -> Option<Mulh>
[src]
pub fn as_mulh(node: Node) -> Option<Mulh>
pub fn is_mux(node: Node) -> bool
[src]
pub fn is_mux(node: Node) -> bool
pub fn as_mux(node: Node) -> Option<Mux>
[src]
pub fn as_mux(node: Node) -> Option<Mux>
pub fn is_nomem(node: Node) -> bool
[src]
pub fn is_nomem(node: Node) -> bool
pub fn as_nomem(node: Node) -> Option<NoMem>
[src]
pub fn as_nomem(node: Node) -> Option<NoMem>
pub fn is_not(node: Node) -> bool
[src]
pub fn is_not(node: Node) -> bool
pub fn as_not(node: Node) -> Option<Not>
[src]
pub fn as_not(node: Node) -> Option<Not>
pub fn is_offset(node: Node) -> bool
[src]
pub fn is_offset(node: Node) -> bool
pub fn as_offset(node: Node) -> Option<Offset>
[src]
pub fn as_offset(node: Node) -> Option<Offset>
pub fn is_or(node: Node) -> bool
[src]
pub fn is_or(node: Node) -> bool
pub fn as_or(node: Node) -> Option<Or>
[src]
pub fn as_or(node: Node) -> Option<Or>
pub fn is_phi(node: Node) -> bool
[src]
pub fn is_phi(node: Node) -> bool
pub fn as_phi(node: Node) -> Option<Phi>
[src]
pub fn as_phi(node: Node) -> Option<Phi>
pub fn is_pin(node: Node) -> bool
[src]
pub fn is_pin(node: Node) -> bool
pub fn as_pin(node: Node) -> Option<Pin>
[src]
pub fn as_pin(node: Node) -> Option<Pin>
pub fn is_proj(node: Node) -> bool
[src]
pub fn is_proj(node: Node) -> bool
pub fn as_proj(node: Node) -> Option<Proj>
[src]
pub fn as_proj(node: Node) -> Option<Proj>
pub fn is_raise(node: Node) -> bool
[src]
pub fn is_raise(node: Node) -> bool
pub fn as_raise(node: Node) -> Option<Raise>
[src]
pub fn as_raise(node: Node) -> Option<Raise>
pub fn is_return(node: Node) -> bool
[src]
pub fn is_return(node: Node) -> bool
pub fn as_return(node: Node) -> Option<Return>
[src]
pub fn as_return(node: Node) -> Option<Return>
pub fn is_sel(node: Node) -> bool
[src]
pub fn is_sel(node: Node) -> bool
pub fn as_sel(node: Node) -> Option<Sel>
[src]
pub fn as_sel(node: Node) -> Option<Sel>
pub fn is_shl(node: Node) -> bool
[src]
pub fn is_shl(node: Node) -> bool
pub fn as_shl(node: Node) -> Option<Shl>
[src]
pub fn as_shl(node: Node) -> Option<Shl>
pub fn is_shr(node: Node) -> bool
[src]
pub fn is_shr(node: Node) -> bool
pub fn as_shr(node: Node) -> Option<Shr>
[src]
pub fn as_shr(node: Node) -> Option<Shr>
pub fn is_shrs(node: Node) -> bool
[src]
pub fn is_shrs(node: Node) -> bool
pub fn as_shrs(node: Node) -> Option<Shrs>
[src]
pub fn as_shrs(node: Node) -> Option<Shrs>
pub fn is_size(node: Node) -> bool
[src]
pub fn is_size(node: Node) -> bool
pub fn as_size(node: Node) -> Option<Size>
[src]
pub fn as_size(node: Node) -> Option<Size>
pub fn is_start(node: Node) -> bool
[src]
pub fn is_start(node: Node) -> bool
pub fn as_start(node: Node) -> Option<Start>
[src]
pub fn as_start(node: Node) -> Option<Start>
pub fn is_store(node: Node) -> bool
[src]
pub fn is_store(node: Node) -> bool
pub fn as_store(node: Node) -> Option<Store>
[src]
pub fn as_store(node: Node) -> Option<Store>
pub fn is_sub(node: Node) -> bool
[src]
pub fn is_sub(node: Node) -> bool
pub fn as_sub(node: Node) -> Option<Sub>
[src]
pub fn as_sub(node: Node) -> Option<Sub>
pub fn is_switch(node: Node) -> bool
[src]
pub fn is_switch(node: Node) -> bool
pub fn as_switch(node: Node) -> Option<Switch>
[src]
pub fn as_switch(node: Node) -> Option<Switch>
pub fn is_sync(node: Node) -> bool
[src]
pub fn is_sync(node: Node) -> bool
pub fn as_sync(node: Node) -> Option<Sync>
[src]
pub fn as_sync(node: Node) -> Option<Sync>
pub fn is_tuple(node: Node) -> bool
[src]
pub fn is_tuple(node: Node) -> bool
pub fn as_tuple(node: Node) -> Option<Tuple>
[src]
pub fn as_tuple(node: Node) -> Option<Tuple>
pub fn is_unknown(node: Node) -> bool
[src]
pub fn is_unknown(node: Node) -> bool
pub fn as_unknown(node: Node) -> Option<Unknown>
[src]
pub fn as_unknown(node: Node) -> Option<Unknown>
Trait Implementations
impl NodeTrait for Node
[src]
impl NodeTrait for Node
fn internal_ir_node(&self) -> *mut ir_node
[src]
fn internal_ir_node(&self) -> *mut ir_node
fn as_node(&self) -> Node
[src]
fn as_node(&self) -> Node
fn keep_alive(&self)
[src]
fn keep_alive(&self)
fn mode(&self) -> Mode
[src]
fn mode(&self) -> Mode
fn block(&self) -> Block
[src]
fn block(&self) -> Block
fn set_block(&self, block: Block)
[src]
fn set_block(&self, block: Block)
ⓘImportant traits for OutNodeIteratorfn out_nodes(&self) -> OutNodeIterator
[src]
ⓘImportant traits for OutNodeIterator
fn out_nodes(&self) -> OutNodeIterator
ⓘImportant traits for OutNodeExIteratorfn out_nodes_ex(&self) -> OutNodeExIterator
[src]
ⓘImportant traits for OutNodeExIterator
fn out_nodes_ex(&self) -> OutNodeExIterator
fn all_out_projs(&self) -> Vec<Proj>
[src]
fn all_out_projs(&self) -> Vec<Proj>
fn collect_all_out_projs(&self, projs: &mut Vec<Proj>)
[src]
fn collect_all_out_projs(&self, projs: &mut Vec<Proj>)
ⓘImportant traits for InNodeIteratorfn in_nodes(&self) -> InNodeIterator
[src]
ⓘImportant traits for InNodeIterator
fn in_nodes(&self) -> InNodeIterator
fn set_input_at(&self, idx: i32, pred: Node)
[src]
fn set_input_at(&self, idx: i32, pred: Node)
fn set_in_nodes(&self, nodes: &[Node])
[src]
fn set_in_nodes(&self, nodes: &[Node])
fn node_id(&self) -> i64
[src]
fn node_id(&self) -> i64
fn is_pinned(&self) -> bool
[src]
fn is_pinned(&self) -> bool
fn is_commutative(&self) -> bool
[src]
fn is_commutative(&self) -> bool
fn is_only_valid_in_start_block(&self) -> bool
[src]
fn is_only_valid_in_start_block(&self) -> bool
fn graph(&self) -> Graph
[src]
fn graph(&self) -> Graph
fn walk<F>(&self, walker: F) where
F: FnMut(VisitTime, Node),
Self: Sized,
[src]
fn walk<F>(&self, walker: F) where
F: FnMut(VisitTime, Node),
Self: Sized,
libifrm irg_walk wrapper Read more
fn walk_dfs_in_block_stop_at_phi_node<Callback>(
&self,
block: Block,
callback: &mut Callback
) where
Callback: FnMut(Node),
Self: Sized,
[src]
fn walk_dfs_in_block_stop_at_phi_node<Callback>(
&self,
block: Block,
callback: &mut Callback
) where
Callback: FnMut(Node),
Self: Sized,
Perform a DFS over all nodes within block
starting at self
. As soon as a Phi node is reached, that branch of the DFS is canceled. There is no callback for a Phi node. The primary use case for this API is in codegen. Read more
impl NodeDebug for Node
[src]
impl NodeDebug for Node
fn fmt(&self, f: &mut Formatter, opts: NodeDebugOpts) -> Result
[src]
fn fmt(&self, f: &mut Formatter, opts: NodeDebugOpts) -> Result
fn debug_fmt(self) -> NodeDebugFmt<Self> where
Self: Sized + Copy,
[src]
fn debug_fmt(self) -> NodeDebugFmt<Self> where
Self: Sized + Copy,
impl PartialEq<Node> for Node
[src]
impl PartialEq<Node> for Node
fn eq(&self, other: &Self) -> bool
[src]
fn eq(&self, other: &Self) -> bool
#[must_use]
fn ne(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]
fn ne(&self, other: &Rhs) -> bool
1.0.0
[src]This method tests for !=
.
impl From<Node> for *mut ir_node
[src]
impl From<Node> for *mut ir_node
impl From<Add> for Node
[src]
impl From<Add> for Node
impl From<Address> for Node
[src]
impl From<Address> for Node
impl From<Align> for Node
[src]
impl From<Align> for Node
impl From<Alloc> for Node
[src]
impl From<Alloc> for Node
impl From<Anchor> for Node
[src]
impl From<Anchor> for Node
impl From<And> for Node
[src]
impl From<And> for Node
impl From<Bad> for Node
[src]
impl From<Bad> for Node
impl From<Bitcast> for Node
[src]
impl From<Bitcast> for Node
impl From<Block> for Node
[src]
impl From<Block> for Node
impl From<Builtin> for Node
[src]
impl From<Builtin> for Node
impl From<Call> for Node
[src]
impl From<Call> for Node
impl From<Cmp> for Node
[src]
impl From<Cmp> for Node
impl From<Cond> for Node
[src]
impl From<Cond> for Node
impl From<Confirm> for Node
[src]
impl From<Confirm> for Node
impl From<Const> for Node
[src]
impl From<Const> for Node
impl From<Conv> for Node
[src]
impl From<Conv> for Node
impl From<CopyB> for Node
[src]
impl From<CopyB> for Node
impl From<Deleted> for Node
[src]
impl From<Deleted> for Node
impl From<Div> for Node
[src]
impl From<Div> for Node
impl From<Dummy> for Node
[src]
impl From<Dummy> for Node
impl From<End> for Node
[src]
impl From<End> for Node
impl From<Eor> for Node
[src]
impl From<Eor> for Node
impl From<Free> for Node
[src]
impl From<Free> for Node
impl From<IJmp> for Node
[src]
impl From<IJmp> for Node
impl From<Id> for Node
[src]
impl From<Id> for Node
impl From<Jmp> for Node
[src]
impl From<Jmp> for Node
impl From<Load> for Node
[src]
impl From<Load> for Node
impl From<Member> for Node
[src]
impl From<Member> for Node
impl From<Minus> for Node
[src]
impl From<Minus> for Node
impl From<Mod> for Node
[src]
impl From<Mod> for Node
impl From<Mul> for Node
[src]
impl From<Mul> for Node
impl From<Mulh> for Node
[src]
impl From<Mulh> for Node
impl From<Mux> for Node
[src]
impl From<Mux> for Node
impl From<NoMem> for Node
[src]
impl From<NoMem> for Node
impl From<Not> for Node
[src]
impl From<Not> for Node
impl From<Offset> for Node
[src]
impl From<Offset> for Node
impl From<Or> for Node
[src]
impl From<Or> for Node
impl From<Phi> for Node
[src]
impl From<Phi> for Node
impl From<Pin> for Node
[src]
impl From<Pin> for Node
impl From<Proj> for Node
[src]
impl From<Proj> for Node
impl From<Raise> for Node
[src]
impl From<Raise> for Node
impl From<Return> for Node
[src]
impl From<Return> for Node
impl From<Sel> for Node
[src]
impl From<Sel> for Node
impl From<Shl> for Node
[src]
impl From<Shl> for Node
impl From<Shr> for Node
[src]
impl From<Shr> for Node
impl From<Shrs> for Node
[src]
impl From<Shrs> for Node
impl From<Size> for Node
[src]
impl From<Size> for Node
impl From<Start> for Node
[src]
impl From<Start> for Node
impl From<Store> for Node
[src]
impl From<Store> for Node
impl From<Sub> for Node
[src]
impl From<Sub> for Node
impl From<Switch> for Node
[src]
impl From<Switch> for Node
impl From<Sync> for Node
[src]
impl From<Sync> for Node
impl From<Tuple> for Node
[src]
impl From<Tuple> for Node
impl From<Unknown> for Node
[src]
impl From<Unknown> for Node
impl From<Box<dyn ValueNode + 'static>> for Node
[src]
impl From<Box<dyn ValueNode + 'static>> for Node
impl<'_> From<&'_ Box<dyn ValueNode + 'static>> for Node
[src]
impl<'_> From<&'_ Box<dyn ValueNode + 'static>> for Node
impl<'_> From<&'_ (dyn ValueNode + '_)> for Node
[src]
impl<'_> From<&'_ (dyn ValueNode + '_)> for Node
impl Send for Node
[src]
impl Send for Node
impl Clone for Node
[src]
impl Clone for Node
fn clone(&self) -> Node
[src]
fn clone(&self) -> Node
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
1.0.0
[src]Performs copy-assignment from source
. Read more
impl Copy for Node
[src]
impl Copy for Node
impl Eq for Node
[src]
impl Eq for Node
impl Debug for Node
[src]
impl Debug for Node
impl Hash for Node
[src]
impl Hash for Node
Auto Trait Implementations
Blanket Implementations
impl<T> From for T
[src]
impl<T> From for T
impl<T, U> Into for T where
U: From<T>,
[src]
impl<T, U> Into for T where
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
impl<T> ToOwned for T where
T: Clone,
impl<T, U> TryFrom for T where
T: From<U>,
[src]
impl<T, U> TryFrom for T where
T: From<U>,
type Error = !
🔬 This is a nightly-only experimental API. (
try_from
)The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
impl<T> Borrow for T where
T: ?Sized,
[src]
impl<T> Borrow for T where
T: ?Sized,
impl<T> BorrowMut for T where
T: ?Sized,
[src]
impl<T> BorrowMut for T where
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
fn borrow_mut(&mut self) -> &mut T
impl<T, U> TryInto for T where
U: TryFrom<T>,
[src]
impl<T, U> TryInto for T where
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
🔬 This is a nightly-only experimental API. (
try_from
)The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
impl<T> Any for T where
T: 'static + ?Sized,
[src]
impl<T> Any for T where
T: 'static + ?Sized,
fn get_type_id(&self) -> TypeId
[src]
fn get_type_id(&self) -> TypeId