pub enum Expr {
Sym(String),
Eq(BTreeSet<Expr>),
Ne(BTreeSet<Expr>),
Lt(BTreeSet<Expr>),
Gt(BTreeSet<Expr>),
Lte(BTreeSet<Expr>),
Gte(BTreeSet<Expr>),
And(BTreeSet<Expr>),
Or(BTreeSet<Expr>),
Sub(Box<Expr>),
Not(Box<Expr>),
}
Expand description
An expression can be a symbol, a comparison expression, a negation, a subexpression (with parentheses) and an ‘bitwise and’ or ‘bitwise or’ expression. It can also be a macro resulting into a valid value.
Variants§
Sym(String)
Eq(BTreeSet<Expr>)
Ne(BTreeSet<Expr>)
Lt(BTreeSet<Expr>)
Gt(BTreeSet<Expr>)
Lte(BTreeSet<Expr>)
Gte(BTreeSet<Expr>)
And(BTreeSet<Expr>)
Or(BTreeSet<Expr>)
Sub(Box<Expr>)
Not(Box<Expr>)
Implementations§
Source§impl Expr
impl Expr
pub fn is_sym(&self) -> bool
pub fn is_not(&self) -> bool
pub fn is_sub(&self) -> bool
pub fn is_comparison(&self) -> bool
pub fn contains(&self, expr: &Expr) -> bool
pub fn is_eq(&self) -> bool
pub fn is_ne(&self) -> bool
pub fn is_lt(&self) -> bool
pub fn is_gt(&self) -> bool
pub fn is_gte(&self) -> bool
pub fn is_lte(&self) -> bool
pub fn is_and(&self) -> bool
pub fn is_or(&self) -> bool
pub fn get_sym(&self) -> Option<String>
pub fn get_not_expr(&self) -> Option<Expr>
pub fn get_sub_expr(&self) -> Option<Expr>
pub fn len(&self) -> usize
Trait Implementations§
Source§impl IntoIterator for Expr
impl IntoIterator for Expr
Source§impl Ord for Expr
impl Ord for Expr
Source§impl PartialOrd for Expr
impl PartialOrd for Expr
impl Eq for Expr
impl StructuralPartialEq for Expr
Auto Trait Implementations§
impl Freeze for Expr
impl RefUnwindSafe for Expr
impl Send for Expr
impl Sync for Expr
impl Unpin for Expr
impl UnwindSafe for Expr
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more