pub trait Not {
type Output;
// Required method
fn not(self) -> Self::Output;
}Expand description
∧
core
The unary logical negation operator !.
📍code/ops re-exported from core::ops
📜
The unary logical negation operator !.
§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 = Self;
fn not(self) -> Self::Output {
match self {
Answer::Yes => Answer::No,
Answer::No => Answer::Yes
}
}
}
assert_eq!(!Answer::Yes, Answer::No);
assert_eq!(!Answer::No, Answer::Yes);Required Associated Types§
Required Methods§
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".
Implementors§
Source§impl Not for AppControlSet
impl Not for AppControlSet
type Output = AppControlSet
Source§impl Not for EnumSetExample
Available on doc or test only.
impl Not for EnumSetExample
Available on
doc or test only.type Output = EnumSetExample
Source§impl Not for EventButtons
Available on crate feature event only.
impl Not for EventButtons
Available on crate feature
event only.type Output = EventButtons
Source§impl Not for EventTagSet
Available on crate feature event only.
impl Not for EventTagSet
Available on crate feature
event only.type Output = EventTagSet
Source§impl Not for LinuxSigactionFlags
Available on crate feature linux only.
impl Not for LinuxSigactionFlags
Available on crate feature
linux only.type Output = LinuxSigactionFlags
Source§impl Not for LinuxSignalSet
Available on crate feature linux only.
impl Not for LinuxSignalSet
Available on crate feature
linux only.type Output = LinuxSignalSet
Source§impl Not for LinuxTermiosControlFlags
Available on crate feature linux only.
impl Not for LinuxTermiosControlFlags
Available on crate feature
linux only.Source§impl Not for LinuxTermiosInputFlags
Available on crate feature linux only.
impl Not for LinuxTermiosInputFlags
Available on crate feature
linux only.Source§impl Not for LinuxTermiosLocalFlags
Available on crate feature linux only.
impl Not for LinuxTermiosLocalFlags
Available on crate feature
linux only.Source§impl Not for LinuxTermiosOutputFlags
Available on crate feature linux only.
impl Not for LinuxTermiosOutputFlags
Available on crate feature
linux only.Source§impl Not for RandQualities
impl Not for RandQualities
type Output = RandQualities
Source§impl Not for RunCapInput
impl Not for RunCapInput
type Output = RunCapInput
Source§impl Not for RunCapSystem
impl Not for RunCapSystem
type Output = RunCapSystem
Source§impl Not for RunCapText
impl Not for RunCapText
type Output = RunCapText
1.74.0 (const: unstable) · Source§impl Not for Saturating<i128>
impl Not for Saturating<i128>
type Output = Saturating<i128>
1.74.0 (const: unstable) · Source§impl Not for Saturating<isize>
impl Not for Saturating<isize>
type Output = Saturating<isize>
1.74.0 (const: unstable) · Source§impl Not for Saturating<u128>
impl Not for Saturating<u128>
type Output = Saturating<u128>
1.74.0 (const: unstable) · Source§impl Not for Saturating<usize>
impl Not for Saturating<usize>
type Output = Saturating<usize>
Source§impl Not for TermStyleExt
Available on crate feature term only.
impl Not for TermStyleExt
Available on crate feature
term only.