pub enum BinOp {
Show 19 variants
BitXor,
BitAnd,
BitOr,
Eq,
Lt,
Le,
Ne,
Ge,
Gt,
Div,
Rem,
Add,
Sub,
Mul,
CheckedAdd,
CheckedSub,
CheckedMul,
Shl,
Shr,
}
Expand description
Binary operations.
Variants§
BitXor
BitAnd
BitOr
Eq
Lt
Le
Ne
Ge
Gt
Div
Fails if the divisor is 0, or if the operation is int::MIN / -1
.
Rem
Fails if the divisor is 0, or if the operation is int::MIN % -1
.
Add
Fails on overflow.
Sub
Fails on overflow.
Mul
Fails on overflow.
CheckedAdd
Returns (result, did_overflow)
, where result
is the result of the operation with
wrapping semantics, and did_overflow
is a boolean that indicates whether the operation
overflowed. This operation does not fail.
CheckedSub
Like CheckedAdd
.
CheckedMul
Like CheckedAdd
.
Shl
Fails if the shift is bigger than the bit-size of the type.
Shr
Fails if the shift is bigger than the bit-size of the type.
Implementations§
source§impl BinOp
impl BinOp
pub fn is_bit_xor(&self) -> bool
pub fn is_bit_and(&self) -> bool
pub fn is_bit_or(&self) -> bool
pub fn is_eq(&self) -> bool
pub fn is_lt(&self) -> bool
pub fn is_le(&self) -> bool
pub fn is_ne(&self) -> bool
pub fn is_ge(&self) -> bool
pub fn is_gt(&self) -> bool
pub fn is_div(&self) -> bool
pub fn is_rem(&self) -> bool
pub fn is_add(&self) -> bool
pub fn is_sub(&self) -> bool
pub fn is_mul(&self) -> bool
pub fn is_checked_add(&self) -> bool
pub fn is_checked_sub(&self) -> bool
pub fn is_checked_mul(&self) -> bool
pub fn is_shl(&self) -> bool
pub fn is_shr(&self) -> bool
Trait Implementations§
source§impl<'de> Deserialize<'de> for BinOp
impl<'de> Deserialize<'de> for BinOp
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Copy for BinOp
impl Eq for BinOp
impl StructuralPartialEq for BinOp
Auto Trait Implementations§
impl Freeze for BinOp
impl RefUnwindSafe for BinOp
impl Send for BinOp
impl Sync for BinOp
impl Unpin for BinOp
impl UnwindSafe for BinOp
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
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.§impl<I, T> ExtractContext<I, ()> for T
impl<I, T> ExtractContext<I, ()> for T
§fn extract_context(self, _original_input: I)
fn extract_context(self, _original_input: I)
Given the context attached to a nom error, and given the original
input to the nom parser, extract more the useful context information. Read more
§impl<T> Indentable for Twhere
T: Display,
impl<T> Indentable for Twhere
T: Display,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more§impl<I> RecreateContext<I> for I
impl<I> RecreateContext<I> for I
§fn recreate_context(_original_input: I, tail: I) -> I
fn recreate_context(_original_input: I, tail: I) -> I
Given the original input, as well as the context reported by nom,
recreate a context in the original string where the error occurred. Read more