Trait std::ops::Not 1.0.0
[−]
[src]
pub trait Not { type Output; fn not(self) -> Self::Output; }
The Not
trait is used to specify the functionality of unary !
.
Examples
An implementation of Not
for Answer
, which enables the use of !
to
invert its value.
use std::ops::Not; #[derive(Debug, PartialEq)] enum Answer { Yes, No, } impl Not for Answer { type Output = Answer; fn not(self) -> Answer { match self { Answer::Yes => Answer::No, Answer::No => Answer::Yes } } } assert_eq!(!Answer::Yes, Answer::No); assert_eq!(!Answer::No, Answer::Yes);
Associated Types
type Output
The resulting type after applying the !
operator
Required Methods
Implementors
impl Not for std::num::Wrapping<usize>
impl Not for std::num::Wrapping<u8>
impl Not for std::num::Wrapping<u16>
impl Not for std::num::Wrapping<u32>
impl Not for std::num::Wrapping<u64>
impl Not for std::num::Wrapping<isize>
impl Not for std::num::Wrapping<i8>
impl Not for std::num::Wrapping<i16>
impl Not for std::num::Wrapping<i32>
impl Not for std::num::Wrapping<i64>
impl<'a> Not for &'a Wrapping<usize>
impl<'a> Not for &'a Wrapping<u8>
impl<'a> Not for &'a Wrapping<u16>
impl<'a> Not for &'a Wrapping<u32>
impl<'a> Not for &'a Wrapping<u64>
impl<'a> Not for &'a Wrapping<isize>
impl<'a> Not for &'a Wrapping<i8>
impl<'a> Not for &'a Wrapping<i16>
impl<'a> Not for &'a Wrapping<i32>
impl<'a> Not for &'a Wrapping<i64>
impl Not for std::num::Wrapping<u128>
impl Not for std::num::Wrapping<i128>
impl<'a> Not for &'a Wrapping<u128>
impl<'a> Not for &'a Wrapping<i128>
impl Not for bool
impl Not for usize
impl Not for u8
impl Not for u16
impl Not for u32
impl Not for u64
impl Not for isize
impl Not for i8
impl Not for i16
impl Not for i32
impl Not for i64
impl<'a> Not for &'a bool
impl<'a> Not for &'a usize
impl<'a> Not for &'a u8
impl<'a> Not for &'a u16
impl<'a> Not for &'a u32
impl<'a> Not for &'a u64
impl<'a> Not for &'a isize
impl<'a> Not for &'a i8
impl<'a> Not for &'a i16
impl<'a> Not for &'a i32
impl<'a> Not for &'a i64
impl Not for u128
impl Not for i128
impl<'a> Not for &'a u128
impl<'a> Not for &'a i128