Trait wasmer_types::lib::std::ops::Not

1.0.0 · source ·
pub trait Not {
    type Output;

    // Required method
    fn not(self) -> Self::Output;
}
Available on crate feature std only.
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

§

type Output = <bool as Not>::Output

1.0.0 · source§

impl Not for &i8

§

type Output = <i8 as Not>::Output

1.0.0 · source§

impl Not for &i16

§

type Output = <i16 as Not>::Output

1.0.0 · source§

impl Not for &i32

§

type Output = <i32 as Not>::Output

1.0.0 · source§

impl Not for &i64

§

type Output = <i64 as Not>::Output

1.0.0 · source§

impl Not for &i128

§

type Output = <i128 as Not>::Output

1.0.0 · source§

impl Not for &isize

§

type Output = <isize as Not>::Output

1.0.0 · source§

impl Not for &u8

§

type Output = <u8 as Not>::Output

1.0.0 · source§

impl Not for &u16

§

type Output = <u16 as Not>::Output

1.0.0 · source§

impl Not for &u32

§

type Output = <u32 as Not>::Output

1.0.0 · source§

impl Not for &u64

§

type Output = <u64 as Not>::Output

1.0.0 · source§

impl Not for &u128

§

type Output = <u128 as Not>::Output

1.0.0 · source§

impl Not for &usize

§

type Output = <usize as Not>::Output

1.75.0 · source§

impl Not for &Ipv4Addr

1.75.0 · source§

impl Not for &Ipv6Addr

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>

§

type Output = <Wrapping<i8> as Not>::Output

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>

§

type Output = <Wrapping<u8> as Not>::Output

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>

source§

impl Not for CpuFeature

1.0.0 · source§

impl Not for bool

§

type Output = bool

1.0.0 · source§

impl Not for i8

§

type Output = i8

1.0.0 · source§

impl Not for i16

§

type Output = i16

1.0.0 · source§

impl Not for i32

§

type Output = i32

1.0.0 · source§

impl Not for i64

§

type Output = i64

1.0.0 · source§

impl Not for i128

§

type Output = i128

1.0.0 · source§

impl Not for isize

1.60.0 · source§

impl Not for !

§

type Output = !

1.0.0 · source§

impl Not for u8

§

type Output = u8

1.0.0 · source§

impl Not for u16

§

type Output = u16

1.0.0 · source§

impl Not for u32

§

type Output = u32

1.0.0 · source§

impl Not for u64

§

type Output = u64

1.0.0 · source§

impl Not for u128

§

type Output = u128

1.0.0 · source§

impl Not for usize

1.75.0 · source§

impl Not for Ipv4Addr

1.75.0 · source§

impl Not for Ipv6Addr

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>

source§

impl Not for BigEndian<i16>

§

type Output = <i16 as Not>::Output

source§

impl Not for BigEndian<i32>

§

type Output = <i32 as Not>::Output

source§

impl Not for BigEndian<i64>

§

type Output = <i64 as Not>::Output

source§

impl Not for BigEndian<i128>

§

type Output = <i128 as Not>::Output

source§

impl Not for BigEndian<u16>

§

type Output = <u16 as Not>::Output

source§

impl Not for BigEndian<u32>

§

type Output = <u32 as Not>::Output

source§

impl Not for BigEndian<u64>

§

type Output = <u64 as Not>::Output

source§

impl Not for BigEndian<u128>

§

type Output = <u128 as Not>::Output

source§

impl Not for LittleEndian<i16>

§

type Output = <i16 as Not>::Output

source§

impl Not for LittleEndian<i32>

§

type Output = <i32 as Not>::Output

source§

impl Not for LittleEndian<i64>

§

type Output = <i64 as Not>::Output

source§

impl Not for LittleEndian<i128>

§

type Output = <i128 as Not>::Output

source§

impl Not for LittleEndian<u16>

§

type Output = <u16 as Not>::Output

source§

impl Not for LittleEndian<u32>

§

type Output = <u32 as Not>::Output

source§

impl Not for LittleEndian<u64>

§

type Output = <u64 as Not>::Output

source§

impl Not for LittleEndian<u128>

§

type Output = <u128 as Not>::Output

source§

impl Not for NativeEndian<i16>

§

type Output = <i16 as Not>::Output

source§

impl Not for NativeEndian<i32>

§

type Output = <i32 as Not>::Output

source§

impl Not for NativeEndian<i64>

§

type Output = <i64 as Not>::Output

source§

impl Not for NativeEndian<i128>

§

type Output = <i128 as Not>::Output

source§

impl Not for NativeEndian<u16>

§

type Output = <u16 as Not>::Output

source§

impl Not for NativeEndian<u32>

§

type Output = <u32 as Not>::Output

source§

impl Not for NativeEndian<u64>

§

type Output = <u64 as Not>::Output

source§

impl Not for NativeEndian<u128>

§

type Output = <u128 as Not>::Output

source§

impl Not for CreateFlags

source§

impl Not for WatchFlags

source§

impl Not for Access

source§

impl Not for AtFlags

source§

impl Not for FallocateFlags

source§

impl Not for MemfdFlags

source§

impl Not for Mode

§

type Output = Mode

source§

impl Not for OFlags

source§

impl Not for RenameFlags

source§

impl Not for ResolveFlags

source§

impl Not for SealFlags

source§

impl Not for StatVfsMountFlags

source§

impl Not for StatxFlags

source§

impl Not for DupFlags

source§

impl Not for FdFlags

source§

impl Not for ReadWriteFlags

source§

impl Not for MountFlags

source§

impl Not for MountPropagationFlags

source§

impl Not for UnmountFlags

source§

impl Not for IFlags

source§

impl Not for XattrFlags

source§

impl Not for B0

Not of 0 (!0 = 1)

§

type Output = B1

source§

impl Not for B1

Not of 1 (!1 = 0)

§

type Output = B0

source§

impl<T> Not for EnumSet<T>
where T: EnumSetType,

§

type Output = EnumSet<T>

source§

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

§

type Output = Mask<T, N>

source§

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

§

type Output = Simd<i8, N>

source§

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

§

type Output = Simd<i16, N>

source§

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

§

type Output = Simd<i32, N>

source§

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

§

type Output = Simd<i64, N>

source§

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

§

type Output = Simd<isize, N>

source§

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

§

type Output = Simd<u8, N>

source§

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

§

type Output = Simd<u16, N>

source§

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

§

type Output = Simd<u32, N>

source§

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

§

type Output = Simd<u64, N>

source§

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

§

type Output = Simd<usize, N>