Struct cranelift_isle::ir::ExprSequence
source · pub struct ExprSequence {
pub insts: Vec<ExprInst>,
pub pos: Pos,
}
Expand description
A linear sequence of instructions that produce a new value from the
right-hand side of a rule, given bindings that come from a Pattern
derived
from the left-hand side.
Fields§
§insts: Vec<ExprInst>
Instruction sequence for expression.
InstId
indexes into this sequence for Value::Expr
values.
pos: Pos
Position at which the rule producing this sequence was located.
Implementations§
source§impl ExprSequence
impl ExprSequence
sourcepub fn is_const_int(&self) -> Option<(TypeId, i128)>
pub fn is_const_int(&self) -> Option<(TypeId, i128)>
Is this expression sequence producing a constant integer?
If so, return the integer type and the constant.
Trait Implementations§
source§impl Clone for ExprSequence
impl Clone for ExprSequence
source§fn clone(&self) -> ExprSequence
fn clone(&self) -> ExprSequence
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for ExprSequence
impl Debug for ExprSequence
source§impl Default for ExprSequence
impl Default for ExprSequence
source§fn default() -> ExprSequence
fn default() -> ExprSequence
Returns the “default value” for a type. Read more
source§impl ExprVisitor for ExprSequence
impl ExprVisitor for ExprSequence
source§impl Hash for ExprSequence
impl Hash for ExprSequence
source§impl Ord for ExprSequence
impl Ord for ExprSequence
source§fn cmp(&self, other: &ExprSequence) -> Ordering
fn cmp(&self, other: &ExprSequence) -> Ordering
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere Self: Sized,
Compares and returns the maximum of two values. Read more
source§impl PartialEq<ExprSequence> for ExprSequence
impl PartialEq<ExprSequence> for ExprSequence
source§fn eq(&self, other: &ExprSequence) -> bool
fn eq(&self, other: &ExprSequence) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.source§impl PartialOrd<ExprSequence> for ExprSequence
impl PartialOrd<ExprSequence> for ExprSequence
source§fn partial_cmp(&self, other: &ExprSequence) -> Option<Ordering>
fn partial_cmp(&self, other: &ExprSequence) -> Option<Ordering>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read more