1.34.0[][src]Struct std::num::NonZeroIsize

pub struct NonZeroIsize(_);

An integer that is known not to equal zero.

This enables some memory layout optimization. For example, Option<NonZeroIsize> is the same size as isize:

use std::mem::size_of;
assert_eq!(size_of::<Option<core::num::NonZeroIsize>>(), size_of::<isize>());Run


impl NonZeroIsize[src]

pub const unsafe fn new_unchecked(n: isize) -> NonZeroIsize[src]

Creates a non-zero without checking the value.


The value must not be zero.

pub fn new(n: isize) -> Option<NonZeroIsize>[src]

Creates a non-zero if the given value is not zero.

pub const fn get(self) -> isize[src]

Returns the value as a primitive type.

Trait Implementations

impl Copy for NonZeroIsize[src]

impl UpperHex for NonZeroIsize[src]

impl Octal for NonZeroIsize[src]

impl Hash for NonZeroIsize[src]

fn hash_slice<H>(data: &[Self], state: &mut H) where
    H: Hasher

Feeds a slice of this type into the given [Hasher]. Read more

impl Clone for NonZeroIsize[src]

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl Eq for NonZeroIsize[src]

impl PartialOrd<NonZeroIsize> for NonZeroIsize[src]

impl Binary for NonZeroIsize[src]

impl Ord for NonZeroIsize[src]

fn max(self, other: Self) -> Self1.21.0[src]

Compares and returns the maximum of two values. Read more

fn min(self, other: Self) -> Self1.21.0[src]

Compares and returns the minimum of two values. Read more

fn clamp(self, min: Self, max: Self) -> Self[src]

🔬 This is a nightly-only experimental API. (clamp #44095)

Restrict a value to a certain interval. Read more

impl Debug for NonZeroIsize[src]

impl PartialEq<NonZeroIsize> for NonZeroIsize[src]

impl LowerHex for NonZeroIsize[src]

impl Display for NonZeroIsize[src]

impl From<NonZeroIsize> for isize1.31.0[src]

impl FromStr for NonZeroIsize1.35.0[src]

type Err = ParseIntError

The associated error which can be returned from parsing.

Auto Trait Implementations

impl UnwindSafe for NonZeroIsize

impl RefUnwindSafe for NonZeroIsize

impl Unpin for NonZeroIsize

impl Send for NonZeroIsize

impl Sync for NonZeroIsize

Blanket Implementations

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> Into<U> for T where
    U: From<T>, 

impl<T> From<T> for T[src]

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Borrow<T> for T where
    T: ?Sized

impl<T> BorrowMut<T> for T where
    T: ?Sized

impl<T> Any for T where
    T: 'static + ?Sized

impl<T> ToOwned for T where
    T: Clone

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToString for T where
    T: Display + ?Sized