pub enum SignDomain {
Bottom,
Neg,
Zero,
Pos,
Nonzero,
NonNeg,
NonPos,
Top,
}Expand description
Abstract sign domain for numeric expressions.
Variants§
Bottom
No information (least element).
Neg
Strictly negative.
Zero
Exactly zero.
Pos
Strictly positive.
Nonzero
Non-zero (either negative or positive).
NonNeg
Non-negative (zero or positive).
NonPos
Non-positive (zero or negative).
Top
All values (greatest element).
Implementations§
Source§impl SignDomain
impl SignDomain
Sourcepub fn negate(&self) -> SignDomain
pub fn negate(&self) -> SignDomain
Negate a sign value.
Sourcepub fn add(s1: SignDomain, s2: SignDomain) -> SignDomain
pub fn add(s1: SignDomain, s2: SignDomain) -> SignDomain
Abstract addition of two sign values.
Sourcepub fn mul(s1: SignDomain, s2: SignDomain) -> SignDomain
pub fn mul(s1: SignDomain, s2: SignDomain) -> SignDomain
Abstract multiplication of two sign values.
Trait Implementations§
Source§impl AbstractDomain for SignDomain
impl AbstractDomain for SignDomain
Source§impl Clone for SignDomain
impl Clone for SignDomain
Source§fn clone(&self) -> SignDomain
fn clone(&self) -> SignDomain
Returns a duplicate 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 SignDomain
impl Debug for SignDomain
Source§impl PartialEq for SignDomain
impl PartialEq for SignDomain
impl Copy for SignDomain
impl Eq for SignDomain
impl StructuralPartialEq for SignDomain
Auto Trait Implementations§
impl Freeze for SignDomain
impl RefUnwindSafe for SignDomain
impl Send for SignDomain
impl Sync for SignDomain
impl Unpin for SignDomain
impl UnsafeUnpin for SignDomain
impl UnwindSafe for SignDomain
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