[−][src]Struct libfirm_rs::nodes::Mod
returns the remainder of its operands from an implied division.
Examples:
- mod(5,3) produces 2
- mod(5,-3) produces 2
- mod(-5,3) produces -2
- mod(-5,-3) produces -2
Methods
impl Mod[src]
impl Modpub fn mem(self) -> Node[src]
pub fn mem(self) -> NodeGets memory dependency.
pub fn set_mem(
self,
val: impl NodeTrait
)[src]
pub fn set_mem(
self,
val: impl NodeTrait
)Sets memory dependency.
pub fn left(self) -> Node[src]
pub fn left(self) -> NodeGets first operand.
pub fn set_left(
self,
val: impl NodeTrait
)[src]
pub fn set_left(
self,
val: impl NodeTrait
)Sets first operand.
pub fn right(self) -> Node[src]
pub fn right(self) -> NodeGets second operand.
pub fn set_right(
self,
val: impl NodeTrait
)[src]
pub fn set_right(
self,
val: impl NodeTrait
)Sets second operand.
pub fn resmode(self) -> Mode[src]
pub fn resmode(self) -> ModeGets mode of the result.
pub fn set_resmode(self, val: Mode)[src]
pub fn set_resmode(self, val: Mode)Sets mode of the result.
pub fn new_proj_m(self) -> Proj[src]
pub fn new_proj_m(self) -> Projmemory result.
pub fn new_proj_res(self, mode: Mode) -> Proj[src]
pub fn new_proj_res(self, mode: Mode) -> Projresult of computation.
pub fn new_proj_x_regular(self) -> Proj[src]
pub fn new_proj_x_regular(self) -> Projcontrol flow when no exception occurs.
pub fn new_proj_x_except(self) -> Proj[src]
pub fn new_proj_x_except(self) -> Projcontrol flow when exception occurred.
pub fn out_proj_m(self) -> Option<Proj>[src]
pub fn out_proj_m(self) -> Option<Proj>memory result.
pub fn out_proj_res(self) -> Option<Proj>[src]
pub fn out_proj_res(self) -> Option<Proj>result of computation.
pub fn out_proj_x_regular(self) -> Option<Proj>[src]
pub fn out_proj_x_regular(self) -> Option<Proj>control flow when no exception occurs.
pub fn out_proj_x_except(self) -> Option<Proj>[src]
pub fn out_proj_x_except(self) -> Option<Proj>control flow when exception occurred.
Trait Implementations
impl NodeTrait for Mod[src]
impl NodeTrait for Modfn internal_ir_node(&self) -> *mut ir_node[src]
fn internal_ir_node(&self) -> *mut ir_nodefn as_node(&self) -> Node[src]
fn as_node(&self) -> Nodefn keep_alive(&self)[src]
fn keep_alive(&self)fn mode(&self) -> Mode[src]
fn mode(&self) -> Modefn block(&self) -> Block[src]
fn block(&self) -> Blockfn set_block(&self, block: Block)[src]
fn set_block(&self, block: Block)ⓘImportant traits for OutNodeIteratorfn out_nodes(&self) -> OutNodeIterator[src]
fn out_nodes(&self) -> OutNodeIteratorⓘImportant traits for OutNodeExIteratorfn out_nodes_ex(&self) -> OutNodeExIterator[src]
fn out_nodes_ex(&self) -> OutNodeExIteratorfn 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]
fn in_nodes(&self) -> InNodeIteratorfn 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) -> i64fn is_pinned(&self) -> bool[src]
fn is_pinned(&self) -> boolfn is_commutative(&self) -> bool[src]
fn is_commutative(&self) -> boolfn is_only_valid_in_start_block(&self) -> bool[src]
fn is_only_valid_in_start_block(&self) -> boolfn graph(&self) -> Graph[src]
fn graph(&self) -> Graphfn 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 Mod[src]
impl NodeDebug for Modfn fmt(&self, f: &mut Formatter, _opts: NodeDebugOpts) -> Result[src]
fn fmt(&self, f: &mut Formatter, _opts: NodeDebugOpts) -> Resultfn debug_fmt(self) -> NodeDebugFmt<Self> where
Self: Sized + Copy, [src]
fn debug_fmt(self) -> NodeDebugFmt<Self> where
Self: Sized + Copy, impl ValueNode for Mod[src]
impl ValueNode for Modfn value_nodes(&self) -> Vec<Box<dyn ValueNode>>[src]
fn value_nodes(&self) -> Vec<Box<dyn ValueNode>>fn compute(&self, values: Vec<Tarval>) -> Tarval[src]
fn compute(&self, values: Vec<Tarval>) -> Tarvalimpl BinOp for Mod[src]
impl BinOp for Modfn left(&self) -> Box<dyn ValueNode>[src]
fn left(&self) -> Box<dyn ValueNode>fn right(&self) -> Box<dyn ValueNode>[src]
fn right(&self) -> Box<dyn ValueNode>fn compute(&self, left: Tarval, right: Tarval) -> Tarval[src]
fn compute(&self, left: Tarval, right: Tarval) -> Tarvalimpl PartialEq<Mod> for Mod[src]
impl PartialEq<Mod> for Modimpl From<Mod> for Node[src]
impl From<Mod> for Nodeimpl Clone for Mod[src]
impl Clone for Modfn clone(&self) -> Mod[src]
fn clone(&self) -> Modfn clone_from(&mut self, source: &Self)1.0.0[src]
fn clone_from(&mut self, source: &Self)Performs copy-assignment from source. Read more
impl Copy for Mod[src]
impl Copy for Modimpl Eq for Mod[src]
impl Eq for Modimpl Debug for Mod[src]
impl Debug for Modimpl Hash for Mod[src]
impl Hash for ModAuto Trait Implementations
Blanket Implementations
impl<T> From for T[src]
impl<T> From for Timpl<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 = !
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 Timpl<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
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