devela::_core::ops

Trait Not

1.6.0 · Source
pub trait Not {
    type Output;

    // Required method
    fn not(self) -> Self::Output;
}
Expand description

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§

1.0.0 · Source

type Output

The resulting type after applying the ! operator.

Required Methods§

1.0.0 · Source

fn not(self) -> Self::Output

Performs the unary ! operation.

§Examples
assert_eq!(!true, false);
assert_eq!(!false, true);
assert_eq!(!1u8, 254);
assert_eq!(!0u8, 255);

Implementors§

1.0.0 · Source§

impl Not for &bool

1.0.0 · Source§

impl Not for &i8

1.0.0 · Source§

impl Not for &i16

1.0.0 · Source§

impl Not for &i32

1.0.0 · Source§

impl Not for &i64

1.0.0 · Source§

impl Not for &i128

1.0.0 · Source§

impl Not for &isize

1.0.0 · Source§

impl Not for &u8

1.0.0 · Source§

impl Not for &u16

1.0.0 · Source§

impl Not for &u32

1.0.0 · Source§

impl Not for &u64

1.0.0 · Source§

impl Not for &u128

1.0.0 · Source§

impl Not for &usize

Source§

impl Not for &BigInt

Source§

impl Not for &Boolean

Source§

impl Not for &Number

Source§

impl Not for &JsValue

§

impl Not for &f32x4

§

impl Not for &i8x16

§

impl Not for &i8x32

§

impl Not for &i16x8

§

impl Not for &i16x16

§

impl Not for &i32x4

§

impl Not for &i64x2

§

impl Not for &u8x16

§

impl Not for &u16x8

§

impl Not for &u16x16

§

impl Not for &u32x4

§

impl Not for &u64x2

1.74.0 · Source§

impl Not for &Saturating<i8>

1.74.0 · Source§

impl Not for &Saturating<i16>

1.74.0 · Source§

impl Not for &Saturating<i32>

1.74.0 · Source§

impl Not for &Saturating<i64>

1.74.0 · Source§

impl Not for &Saturating<i128>

1.74.0 · Source§

impl Not for &Saturating<isize>

1.74.0 · Source§

impl Not for &Saturating<u8>

1.74.0 · Source§

impl Not for &Saturating<u16>

1.74.0 · Source§

impl Not for &Saturating<u32>

1.74.0 · Source§

impl Not for &Saturating<u64>

1.74.0 · Source§

impl Not for &Saturating<u128>

1.74.0 · Source§

impl Not for &Saturating<usize>

1.14.0 · Source§

impl Not for &Wrapping<i8>

1.14.0 · Source§

impl Not for &Wrapping<i16>

1.14.0 · Source§

impl Not for &Wrapping<i32>

1.14.0 · Source§

impl Not for &Wrapping<i64>

1.14.0 · Source§

impl Not for &Wrapping<i128>

1.14.0 · Source§

impl Not for &Wrapping<isize>

1.14.0 · Source§

impl Not for &Wrapping<u8>

1.14.0 · Source§

impl Not for &Wrapping<u16>

1.14.0 · Source§

impl Not for &Wrapping<u32>

1.14.0 · Source§

impl Not for &Wrapping<u64>

1.14.0 · Source§

impl Not for &Wrapping<u128>

1.14.0 · Source§

impl Not for &Wrapping<usize>

1.75.0 · Source§

impl Not for &Ipv4Addr

1.75.0 · Source§

impl Not for &Ipv6Addr

1.0.0 · Source§

impl Not for bool

1.0.0 · Source§

impl Not for i8

1.0.0 · Source§

impl Not for i16

1.0.0 · Source§

impl Not for i32

1.0.0 · Source§

impl Not for i64

1.0.0 · Source§

impl Not for i128

1.0.0 · Source§

impl Not for isize

1.60.0 · Source§

impl Not for !

1.0.0 · Source§

impl Not for u8

1.0.0 · Source§

impl Not for u16

1.0.0 · Source§

impl Not for u32

1.0.0 · Source§

impl Not for u64

1.0.0 · Source§

impl Not for u128

1.0.0 · Source§

impl Not for usize

§

impl Not for KeyEventState

§

impl Not for KeyModifiers

§

impl Not for KeyboardEnhancementFlags

Source§

impl Not for BigInt

Source§

type Output = <&'static BigInt as Not>::Output

Source§

impl Not for Boolean

Source§

type Output = <&'static Boolean as Not>::Output

Source§

impl Not for Number

Source§

type Output = <&'static Number as Not>::Output

§

impl Not for i16_be

§

type Output = <i16 as Not>::Output

§

impl Not for i16_le

§

type Output = <i16 as Not>::Output

§

impl Not for i32_be

§

type Output = <i32 as Not>::Output

§

impl Not for i32_le

§

type Output = <i32 as Not>::Output

§

impl Not for i64_be

§

type Output = <i64 as Not>::Output

§

impl Not for i64_le

§

type Output = <i64 as Not>::Output

§

impl Not for i128_be

§

type Output = <i128 as Not>::Output

§

impl Not for i128_le

§

type Output = <i128 as Not>::Output

§

impl Not for u16_be

§

type Output = <u16 as Not>::Output

§

impl Not for u16_le

§

type Output = <u16 as Not>::Output

§

impl Not for u32_be

§

type Output = <u32 as Not>::Output

§

impl Not for u32_le

§

type Output = <u32 as Not>::Output

§

impl Not for u64_be

§

type Output = <u64 as Not>::Output

§

impl Not for u64_le

§

type Output = <u64 as Not>::Output

§

impl Not for u128_be

§

type Output = <u128 as Not>::Output

§

impl Not for u128_le

§

type Output = <u128 as Not>::Output

§

impl Not for i16_ube

§

type Output = <i16 as Not>::Output

§

impl Not for i16_ule

§

type Output = <i16 as Not>::Output

§

impl Not for i32_ube

§

type Output = <i32 as Not>::Output

§

impl Not for i32_ule

§

type Output = <i32 as Not>::Output

§

impl Not for i64_ube

§

type Output = <i64 as Not>::Output

§

impl Not for i64_ule

§

type Output = <i64 as Not>::Output

§

impl Not for i128_ube

§

type Output = <i128 as Not>::Output

§

impl Not for i128_ule

§

type Output = <i128 as Not>::Output

§

impl Not for u16_ube

§

type Output = <u16 as Not>::Output

§

impl Not for u16_ule

§

type Output = <u16 as Not>::Output

§

impl Not for u32_ube

§

type Output = <u32 as Not>::Output

§

impl Not for u32_ule

§

type Output = <u32 as Not>::Output

§

impl Not for u64_ube

§

type Output = <u64 as Not>::Output

§

impl Not for u64_ule

§

type Output = <u64 as Not>::Output

§

impl Not for u128_ube

§

type Output = <u128 as Not>::Output

§

impl Not for u128_ule

§

type Output = <u128 as Not>::Output

§

impl Not for I24

§

type Output = I24

§

impl Not for I48

§

type Output = I48

§

impl Not for U24

§

type Output = U24

§

impl Not for U48

§

type Output = U48

§

impl Not for devela::_dep::rustix::event::epoll::CreateFlags

§

impl Not for EventfdFlags

§

impl Not for PollFlags

§

impl Not for devela::_dep::rustix::fs::inotify::CreateFlags

§

impl Not for ReadFlags

§

impl Not for WatchFlags

§

impl Not for Access

§

impl Not for AtFlags

§

impl Not for FallocateFlags

§

impl Not for FdFlags

§

impl Not for IFlags

§

impl Not for MemfdFlags

§

impl Not for Mode

§

type Output = Mode

§

impl Not for MountFlags

§

impl Not for MountPropagationFlags

§

impl Not for OFlags

§

impl Not for RenameFlags

§

impl Not for ResolveFlags

§

impl Not for SealFlags

§

impl Not for StatVfsMountFlags

§

impl Not for StatxFlags

§

impl Not for UnmountFlags

§

impl Not for XattrFlags

§

impl Not for DupFlags

§

impl Not for ReadWriteFlags

§

impl Not for EventFlags

§

impl Not for IoringAcceptFlags

§

impl Not for IoringAsyncCancelFlags

§

impl Not for IoringCqFlags

§

impl Not for IoringCqeFlags

§

impl Not for IoringEnterFlags

§

impl Not for IoringFeatureFlags

§

impl Not for IoringFsyncFlags

§

impl Not for IoringMsgringFlags

§

impl Not for IoringOpFlags

§

impl Not for IoringPollFlags

§

impl Not for IoringRecvFlags

§

impl Not for IoringRegisterFlags

§

impl Not for IoringRsrcFlags

§

impl Not for IoringSendFlags

§

impl Not for IoringSetupFlags

§

impl Not for IoringSqFlags

§

impl Not for IoringSqeFlags

§

impl Not for IoringTimeoutFlags

§

impl Not for RecvFlags

§

impl Not for RecvmsgOutFlags

§

impl Not for SendFlags

§

impl Not for SocketFlags

§

impl Not for devela::_dep::rustix::io_uring::SpliceFlags

§

impl Not for MapFlags

§

impl Not for MlockAllFlags

§

impl Not for MlockFlags

§

impl Not for MprotectFlags

§

impl Not for MremapFlags

§

impl Not for MsyncFlags

§

impl Not for ProtFlags

§

impl Not for UserfaultfdFlags

§

impl Not for FsMountFlags

§

impl Not for FsOpenFlags

§

impl Not for FsPickFlags

§

impl Not for MountAttrFlags

§

impl Not for MoveMountFlags

§

impl Not for OpenTreeFlags

§

impl Not for SockaddrXdpFlags

§

impl Not for XdpDescOptions

§

impl Not for XdpOptionsFlags

§

impl Not for XdpRingFlags

§

impl Not for XdpUmemRegFlags

§

impl Not for PipeFlags

§

impl Not for devela::_dep::rustix::pipe::SpliceFlags

§

impl Not for FloatingPointEmulationControl

§

impl Not for FloatingPointExceptionMode

§

impl Not for MembarrierQuery

§

impl Not for PidfdFlags

§

impl Not for PidfdGetfdFlags

§

impl Not for SpeculationFeatureControl

§

impl Not for SpeculationFeatureState

§

impl Not for UnalignedAccessControl

§

impl Not for WaitOptions

§

impl Not for WaitidOptions

§

impl Not for OpenptFlags

§

impl Not for GetRandomFlags

§

impl Not for ShmOFlags

§

impl Not for ControlModes

§

impl Not for InputModes

§

impl Not for LocalModes

§

impl Not for OutputModes

§

impl Not for CapabilitiesSecureBits

§

impl Not for CapabilityFlags

§

impl Not for devela::_dep::rustix::thread::FutexFlags

§

impl Not for TaggedAddressMode

§

impl Not for ThreadNameSpaceType

§

impl Not for UnshareFlags

§

impl Not for TimerfdFlags

§

impl Not for TimerfdTimerFlags

§

impl Not for Channels

§

impl Not for i24

§

type Output = i24

§

impl Not for u24

§

type Output = u24

Source§

impl Not for JsValue

Source§

type Output = <&'static JsValue as Not>::Output

§

impl Not for f32x4

§

impl Not for f32x8

§

impl Not for f64x2

§

impl Not for f64x4

§

impl Not for i8x16

§

impl Not for i8x32

§

impl Not for i16x8

§

impl Not for i16x16

§

impl Not for i32x4

§

impl Not for i32x8

§

impl Not for i64x2

§

impl Not for i64x4

§

impl Not for u8x16

§

impl Not for u16x8

§

impl Not for u16x16

§

impl Not for u32x4

§

impl Not for u32x8

§

impl Not for u64x2

§

impl Not for u64x4

1.74.0 · Source§

impl Not for Saturating<i8>

1.74.0 · Source§

impl Not for Saturating<i16>

1.74.0 · Source§

impl Not for Saturating<i32>

1.74.0 · Source§

impl Not for Saturating<i64>

1.74.0 · Source§

impl Not for Saturating<i128>

1.74.0 · Source§

impl Not for Saturating<isize>

1.74.0 · Source§

impl Not for Saturating<u8>

1.74.0 · Source§

impl Not for Saturating<u16>

1.74.0 · Source§

impl Not for Saturating<u32>

1.74.0 · Source§

impl Not for Saturating<u64>

1.74.0 · Source§

impl Not for Saturating<u128>

1.74.0 · Source§

impl Not for Saturating<usize>

1.0.0 · Source§

impl Not for Wrapping<i8>

1.0.0 · Source§

impl Not for Wrapping<i16>

1.0.0 · Source§

impl Not for Wrapping<i32>

1.0.0 · Source§

impl Not for Wrapping<i64>

1.0.0 · Source§

impl Not for Wrapping<i128>

1.0.0 · Source§

impl Not for Wrapping<isize>

1.0.0 · Source§

impl Not for Wrapping<u8>

1.0.0 · Source§

impl Not for Wrapping<u16>

1.0.0 · Source§

impl Not for Wrapping<u32>

1.0.0 · Source§

impl Not for Wrapping<u64>

1.0.0 · Source§

impl Not for Wrapping<u128>

1.0.0 · Source§

impl Not for Wrapping<usize>

§

impl Not for m128

§

type Output = m128

§

impl Not for m128d

§

impl Not for m128i

1.75.0 · Source§

impl Not for Ipv4Addr

1.75.0 · Source§

impl Not for Ipv6Addr

Source§

impl Not for BVec2

Source§

impl Not for BVec3

Source§

impl Not for BVec4

Source§

impl Not for BVec3A

Source§

impl Not for BVec4A

Source§

impl Not for I8Vec2

Source§

impl Not for I8Vec3

Source§

impl Not for I8Vec4

Source§

impl Not for I16Vec2

Source§

impl Not for I16Vec3

Source§

impl Not for I16Vec4

Source§

impl Not for IVec2

Source§

impl Not for IVec3

Source§

impl Not for IVec4

Source§

impl Not for I64Vec2

Source§

impl Not for I64Vec3

Source§

impl Not for I64Vec4

Source§

impl Not for U8Vec2

Source§

impl Not for U8Vec3

Source§

impl Not for U8Vec4

Source§

impl Not for U16Vec2

Source§

impl Not for U16Vec3

Source§

impl Not for U16Vec4

Source§

impl Not for UVec2

Source§

impl Not for UVec3

Source§

impl Not for UVec4

Source§

impl Not for U64Vec2

Source§

impl Not for U64Vec3

Source§

impl Not for U64Vec4

§

impl Not for Flags

§

type Output = Flags

§

impl Not for I11

§

type Output = I11

§

impl Not for I20

§

type Output = I20

§

impl Not for PortCap

§

type Output = PortCap

§

impl Not for PortType

§

type Output = PortType

§

impl Not for Remove

§

type Output = Remove

§

impl Not for U11

§

type Output = U11

§

impl Not for U20

§

type Output = U20

Source§

impl<T, const CAP: usize, S: Storage> Not for Array<T, CAP, S>
where S::Stored<[T; CAP]>: Clone, T: Not<Output = T> + Copy,

Source§

type Output = Array<T, CAP, S>

Source§

impl<T, const N: usize> Not for Mask<T, N>

Source§

type Output = Mask<T, N>

Source§

impl<const N: usize> Not for Simd<i8, N>

Source§

impl<const N: usize> Not for Simd<i16, N>

Source§

impl<const N: usize> Not for Simd<i32, N>

Source§

impl<const N: usize> Not for Simd<i64, N>

Source§

impl<const N: usize> Not for Simd<isize, N>

Source§

impl<const N: usize> Not for Simd<u8, N>

Source§

impl<const N: usize> Not for Simd<u16, N>

Source§

impl<const N: usize> Not for Simd<u32, N>

Source§

impl<const N: usize> Not for Simd<u64, N>

Source§

impl<const N: usize> Not for Simd<usize, N>