Trait std::ops::NotStable
[-] [+]
[src]
pub trait Not where <Self as Not>::Output: Sized {
type Output;
fn not(self) -> <Self as Not>::Output;
}
The Not
trait is used to specify the functionality of unary !
.
Example
A trivial implementation of Not
. When !Foo
happens, it ends up calling
not
, and therefore, main
prints Not-ing!
.
use std::ops::Not; #[derive(Copy)] struct Foo; impl Not for Foo { type Output = Foo; fn not(self) -> Foo { println!("Not-ing!"); self } } fn main() { !Foo; }
Associated Types
Required Methods
Implementors
impl Not for bool
impl<'a> Not for &'a bool
impl Not for usize
impl<'a> Not for &'a usize
impl Not for u8
impl<'a> Not for &'a u8
impl Not for u16
impl<'a> Not for &'a u16
impl Not for u32
impl<'a> Not for &'a u32
impl Not for u64
impl<'a> Not for &'a u64
impl Not for isize
impl<'a> Not for &'a isize
impl Not for i8
impl<'a> Not for &'a i8
impl Not for i16
impl<'a> Not for &'a i16
impl Not for i32
impl<'a> Not for &'a i32
impl Not for i64
impl<'a> Not for &'a i64
impl Not for FilePermission