Struct std::num::Saturating

source ·
#[repr(transparent)]
pub struct Saturating<T>(pub T);
🔬This is a nightly-only experimental API. (saturating_int_impl #87920)
Expand description

T 上提供有意饱和的算法。

u32 值上的 + 之类的操作旨在永不溢出,并且在某些调试配置中,检测到溢出并导致 panic。 虽然大多数算术都属于这一类,但有些代码明确期望并依赖于饱和算术。

饱和算术可以通过像 saturating_add 这样的方法或通过 Saturating<T> 类型来实现,它表示对底层值的所有标准算术运算都旨在具有饱和语义。

可以通过 Saturating 元组的 .0 索引检索底层值。

Examples

#![feature(saturating_int_impl)]
use std::num::Saturating;

let max = Saturating(u32::MAX);
let one = Saturating(1u32);

assert_eq!(u32::MAX, (max + one).0);
Run

Tuple Fields§

§0: T
🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

Implementations§

source§

impl Saturating<usize>

source

pub const MIN: Saturating<usize> = Self(usize::MIN)

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回此整数类型可以表示的最小值。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<usize>>::MIN, Saturating(usize::MIN));
Run
source

pub const MAX: Saturating<usize> = Self(usize::MAX)

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回此整数类型可以表示的最大值。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<usize>>::MAX, Saturating(usize::MAX));
Run
source

pub const BITS: u32 = 64u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

以位为单位返回此整数类型的大小。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<usize>>::BITS, usize::BITS);
Run
source

pub const fn count_ones(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的位数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b01001100usize);

assert_eq!(n.count_ones(), 3);
Run
source

pub const fn count_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的零数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(!0usize).count_zeros(), 0);
Run
source

pub const fn trailing_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的尾随零数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b0101000usize);

assert_eq!(n.trailing_zeros(), 3);
Run
source

pub const fn rotate_left(self, n: u32) -> Saturating<usize>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将位向左移动指定的量 n,将截断的位饱和到结果整数的末尾。

请注意,此操作与 << 移位运算符不同!

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i64> = Saturating(0x0123456789ABCDEF);
let m: Saturating<i64> = Saturating(-0x76543210FEDCBA99);

assert_eq!(n.rotate_left(32), m);
Run
source

pub const fn rotate_right(self, n: u32) -> Saturating<usize>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将位右移指定的量 n,将截断的位饱和到结果整数的开头。

请注意,此操作与 >> 移位运算符不同!

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i64> = Saturating(0x0123456789ABCDEF);
let m: Saturating<i64> = Saturating(-0xFEDCBA987654322);

assert_eq!(n.rotate_right(4), m);
Run
source

pub const fn swap_bytes(self) -> Saturating<usize>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

反转整数的字节顺序。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i16> = Saturating(0b0000000_01010101);
assert_eq!(n, Saturating(85));

let m = n.swap_bytes();

assert_eq!(m, Saturating(0b01010101_00000000));
assert_eq!(m, Saturating(21760));
Run
const: unstable · source

pub fn reverse_bits(self) -> Saturating<usize>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

反转整数的位模式。

Examples

请注意,此示例在整数类型之间共享。 这就解释了为什么在这里使用 i16

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b0000000_01010101i16);
assert_eq!(n, Saturating(85));

let m = n.reverse_bits();

assert_eq!(m.0 as u16, 0b10101010_00000000);
assert_eq!(m, Saturating(-22016));
Run
source

pub const fn from_be(x: Saturating<usize>) -> Saturating<usize>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将整数从大端字节序转换为目标的字节序。

在大端节序序上,这是个禁忌。 在小端字节序上,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Ausize);

if cfg!(target_endian = "big") {
    assert_eq!(<Saturating<usize>>::from_be(n), n)
} else {
    assert_eq!(<Saturating<usize>>::from_be(n), n.swap_bytes())
}
Run
source

pub const fn from_le(x: Saturating<usize>) -> Saturating<usize>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将整数从小端字节序转换为目标的字节序。

在小端字节序上,这是个禁忌。 在大字节序中,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Ausize);

if cfg!(target_endian = "little") {
    assert_eq!(<Saturating<usize>>::from_le(n), n)
} else {
    assert_eq!(<Saturating<usize>>::from_le(n), n.swap_bytes())
}
Run
source

pub const fn to_be(self) -> Saturating<usize>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

self 从目标的字节序转换为大字节序。

在大端节序序上,这是个禁忌。 在小端字节序上,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Ausize);

if cfg!(target_endian = "big") {
    assert_eq!(n.to_be(), n)
} else {
    assert_eq!(n.to_be(), n.swap_bytes())
}
Run
source

pub const fn to_le(self) -> Saturating<usize>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

self 从目标的字节序转换为 Little Endian。

在小端字节序上,这是个禁忌。 在大字节序中,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Ausize);

if cfg!(target_endian = "little") {
    assert_eq!(n.to_le(), n)
} else {
    assert_eq!(n.to_le(), n.swap_bytes())
}
Run
source

pub fn pow(self, exp: u32) -> Saturating<usize>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

通过平方运算,将自己提升到 exp 的功效。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(3usize).pow(4), Saturating(81));
Run

过大的结果是饱和的:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(3i8).pow(5), Saturating(127));
assert_eq!(Saturating(3i8).pow(6), Saturating(127));
Run
source§

impl Saturating<u8>

source

pub const MIN: Saturating<u8> = Self(u8::MIN)

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回此整数类型可以表示的最小值。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<u8>>::MIN, Saturating(u8::MIN));
Run
source

pub const MAX: Saturating<u8> = Self(u8::MAX)

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回此整数类型可以表示的最大值。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<u8>>::MAX, Saturating(u8::MAX));
Run
source

pub const BITS: u32 = 8u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

以位为单位返回此整数类型的大小。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<u8>>::BITS, u8::BITS);
Run
source

pub const fn count_ones(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的位数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b01001100u8);

assert_eq!(n.count_ones(), 3);
Run
source

pub const fn count_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的零数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(!0u8).count_zeros(), 0);
Run
source

pub const fn trailing_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的尾随零数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b0101000u8);

assert_eq!(n.trailing_zeros(), 3);
Run
source

pub const fn rotate_left(self, n: u32) -> Saturating<u8>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将位向左移动指定的量 n,将截断的位饱和到结果整数的末尾。

请注意,此操作与 << 移位运算符不同!

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i64> = Saturating(0x0123456789ABCDEF);
let m: Saturating<i64> = Saturating(-0x76543210FEDCBA99);

assert_eq!(n.rotate_left(32), m);
Run
source

pub const fn rotate_right(self, n: u32) -> Saturating<u8>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将位右移指定的量 n,将截断的位饱和到结果整数的开头。

请注意,此操作与 >> 移位运算符不同!

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i64> = Saturating(0x0123456789ABCDEF);
let m: Saturating<i64> = Saturating(-0xFEDCBA987654322);

assert_eq!(n.rotate_right(4), m);
Run
source

pub const fn swap_bytes(self) -> Saturating<u8>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

反转整数的字节顺序。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i16> = Saturating(0b0000000_01010101);
assert_eq!(n, Saturating(85));

let m = n.swap_bytes();

assert_eq!(m, Saturating(0b01010101_00000000));
assert_eq!(m, Saturating(21760));
Run
const: unstable · source

pub fn reverse_bits(self) -> Saturating<u8>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

反转整数的位模式。

Examples

请注意,此示例在整数类型之间共享。 这就解释了为什么在这里使用 i16

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b0000000_01010101i16);
assert_eq!(n, Saturating(85));

let m = n.reverse_bits();

assert_eq!(m.0 as u16, 0b10101010_00000000);
assert_eq!(m, Saturating(-22016));
Run
source

pub const fn from_be(x: Saturating<u8>) -> Saturating<u8>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将整数从大端字节序转换为目标的字节序。

在大端节序序上,这是个禁忌。 在小端字节序上,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Au8);

if cfg!(target_endian = "big") {
    assert_eq!(<Saturating<u8>>::from_be(n), n)
} else {
    assert_eq!(<Saturating<u8>>::from_be(n), n.swap_bytes())
}
Run
source

pub const fn from_le(x: Saturating<u8>) -> Saturating<u8>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将整数从小端字节序转换为目标的字节序。

在小端字节序上,这是个禁忌。 在大字节序中,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Au8);

if cfg!(target_endian = "little") {
    assert_eq!(<Saturating<u8>>::from_le(n), n)
} else {
    assert_eq!(<Saturating<u8>>::from_le(n), n.swap_bytes())
}
Run
source

pub const fn to_be(self) -> Saturating<u8>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

self 从目标的字节序转换为大字节序。

在大端节序序上,这是个禁忌。 在小端字节序上,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Au8);

if cfg!(target_endian = "big") {
    assert_eq!(n.to_be(), n)
} else {
    assert_eq!(n.to_be(), n.swap_bytes())
}
Run
source

pub const fn to_le(self) -> Saturating<u8>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

self 从目标的字节序转换为 Little Endian。

在小端字节序上,这是个禁忌。 在大字节序中,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Au8);

if cfg!(target_endian = "little") {
    assert_eq!(n.to_le(), n)
} else {
    assert_eq!(n.to_le(), n.swap_bytes())
}
Run
source

pub fn pow(self, exp: u32) -> Saturating<u8>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

通过平方运算,将自己提升到 exp 的功效。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(3u8).pow(4), Saturating(81));
Run

过大的结果是饱和的:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(3i8).pow(5), Saturating(127));
assert_eq!(Saturating(3i8).pow(6), Saturating(127));
Run
source§

impl Saturating<u16>

source

pub const MIN: Saturating<u16> = Self(u16::MIN)

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回此整数类型可以表示的最小值。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<u16>>::MIN, Saturating(u16::MIN));
Run
source

pub const MAX: Saturating<u16> = Self(u16::MAX)

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回此整数类型可以表示的最大值。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<u16>>::MAX, Saturating(u16::MAX));
Run
source

pub const BITS: u32 = 16u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

以位为单位返回此整数类型的大小。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<u16>>::BITS, u16::BITS);
Run
source

pub const fn count_ones(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的位数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b01001100u16);

assert_eq!(n.count_ones(), 3);
Run
source

pub const fn count_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的零数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(!0u16).count_zeros(), 0);
Run
source

pub const fn trailing_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的尾随零数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b0101000u16);

assert_eq!(n.trailing_zeros(), 3);
Run
source

pub const fn rotate_left(self, n: u32) -> Saturating<u16>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将位向左移动指定的量 n,将截断的位饱和到结果整数的末尾。

请注意,此操作与 << 移位运算符不同!

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i64> = Saturating(0x0123456789ABCDEF);
let m: Saturating<i64> = Saturating(-0x76543210FEDCBA99);

assert_eq!(n.rotate_left(32), m);
Run
source

pub const fn rotate_right(self, n: u32) -> Saturating<u16>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将位右移指定的量 n,将截断的位饱和到结果整数的开头。

请注意,此操作与 >> 移位运算符不同!

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i64> = Saturating(0x0123456789ABCDEF);
let m: Saturating<i64> = Saturating(-0xFEDCBA987654322);

assert_eq!(n.rotate_right(4), m);
Run
source

pub const fn swap_bytes(self) -> Saturating<u16>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

反转整数的字节顺序。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i16> = Saturating(0b0000000_01010101);
assert_eq!(n, Saturating(85));

let m = n.swap_bytes();

assert_eq!(m, Saturating(0b01010101_00000000));
assert_eq!(m, Saturating(21760));
Run
const: unstable · source

pub fn reverse_bits(self) -> Saturating<u16>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

反转整数的位模式。

Examples

请注意,此示例在整数类型之间共享。 这就解释了为什么在这里使用 i16

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b0000000_01010101i16);
assert_eq!(n, Saturating(85));

let m = n.reverse_bits();

assert_eq!(m.0 as u16, 0b10101010_00000000);
assert_eq!(m, Saturating(-22016));
Run
source

pub const fn from_be(x: Saturating<u16>) -> Saturating<u16>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将整数从大端字节序转换为目标的字节序。

在大端节序序上,这是个禁忌。 在小端字节序上,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Au16);

if cfg!(target_endian = "big") {
    assert_eq!(<Saturating<u16>>::from_be(n), n)
} else {
    assert_eq!(<Saturating<u16>>::from_be(n), n.swap_bytes())
}
Run
source

pub const fn from_le(x: Saturating<u16>) -> Saturating<u16>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将整数从小端字节序转换为目标的字节序。

在小端字节序上,这是个禁忌。 在大字节序中,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Au16);

if cfg!(target_endian = "little") {
    assert_eq!(<Saturating<u16>>::from_le(n), n)
} else {
    assert_eq!(<Saturating<u16>>::from_le(n), n.swap_bytes())
}
Run
source

pub const fn to_be(self) -> Saturating<u16>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

self 从目标的字节序转换为大字节序。

在大端节序序上,这是个禁忌。 在小端字节序上,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Au16);

if cfg!(target_endian = "big") {
    assert_eq!(n.to_be(), n)
} else {
    assert_eq!(n.to_be(), n.swap_bytes())
}
Run
source

pub const fn to_le(self) -> Saturating<u16>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

self 从目标的字节序转换为 Little Endian。

在小端字节序上,这是个禁忌。 在大字节序中,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Au16);

if cfg!(target_endian = "little") {
    assert_eq!(n.to_le(), n)
} else {
    assert_eq!(n.to_le(), n.swap_bytes())
}
Run
source

pub fn pow(self, exp: u32) -> Saturating<u16>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

通过平方运算,将自己提升到 exp 的功效。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(3u16).pow(4), Saturating(81));
Run

过大的结果是饱和的:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(3i8).pow(5), Saturating(127));
assert_eq!(Saturating(3i8).pow(6), Saturating(127));
Run
source§

impl Saturating<u32>

source

pub const MIN: Saturating<u32> = Self(u32::MIN)

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回此整数类型可以表示的最小值。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<u32>>::MIN, Saturating(u32::MIN));
Run
source

pub const MAX: Saturating<u32> = Self(u32::MAX)

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回此整数类型可以表示的最大值。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<u32>>::MAX, Saturating(u32::MAX));
Run
source

pub const BITS: u32 = 32u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

以位为单位返回此整数类型的大小。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<u32>>::BITS, u32::BITS);
Run
source

pub const fn count_ones(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的位数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b01001100u32);

assert_eq!(n.count_ones(), 3);
Run
source

pub const fn count_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的零数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(!0u32).count_zeros(), 0);
Run
source

pub const fn trailing_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的尾随零数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b0101000u32);

assert_eq!(n.trailing_zeros(), 3);
Run
source

pub const fn rotate_left(self, n: u32) -> Saturating<u32>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将位向左移动指定的量 n,将截断的位饱和到结果整数的末尾。

请注意,此操作与 << 移位运算符不同!

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i64> = Saturating(0x0123456789ABCDEF);
let m: Saturating<i64> = Saturating(-0x76543210FEDCBA99);

assert_eq!(n.rotate_left(32), m);
Run
source

pub const fn rotate_right(self, n: u32) -> Saturating<u32>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将位右移指定的量 n,将截断的位饱和到结果整数的开头。

请注意,此操作与 >> 移位运算符不同!

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i64> = Saturating(0x0123456789ABCDEF);
let m: Saturating<i64> = Saturating(-0xFEDCBA987654322);

assert_eq!(n.rotate_right(4), m);
Run
source

pub const fn swap_bytes(self) -> Saturating<u32>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

反转整数的字节顺序。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i16> = Saturating(0b0000000_01010101);
assert_eq!(n, Saturating(85));

let m = n.swap_bytes();

assert_eq!(m, Saturating(0b01010101_00000000));
assert_eq!(m, Saturating(21760));
Run
const: unstable · source

pub fn reverse_bits(self) -> Saturating<u32>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

反转整数的位模式。

Examples

请注意,此示例在整数类型之间共享。 这就解释了为什么在这里使用 i16

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b0000000_01010101i16);
assert_eq!(n, Saturating(85));

let m = n.reverse_bits();

assert_eq!(m.0 as u16, 0b10101010_00000000);
assert_eq!(m, Saturating(-22016));
Run
source

pub const fn from_be(x: Saturating<u32>) -> Saturating<u32>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将整数从大端字节序转换为目标的字节序。

在大端节序序上,这是个禁忌。 在小端字节序上,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Au32);

if cfg!(target_endian = "big") {
    assert_eq!(<Saturating<u32>>::from_be(n), n)
} else {
    assert_eq!(<Saturating<u32>>::from_be(n), n.swap_bytes())
}
Run
source

pub const fn from_le(x: Saturating<u32>) -> Saturating<u32>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将整数从小端字节序转换为目标的字节序。

在小端字节序上,这是个禁忌。 在大字节序中,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Au32);

if cfg!(target_endian = "little") {
    assert_eq!(<Saturating<u32>>::from_le(n), n)
} else {
    assert_eq!(<Saturating<u32>>::from_le(n), n.swap_bytes())
}
Run
source

pub const fn to_be(self) -> Saturating<u32>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

self 从目标的字节序转换为大字节序。

在大端节序序上,这是个禁忌。 在小端字节序上,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Au32);

if cfg!(target_endian = "big") {
    assert_eq!(n.to_be(), n)
} else {
    assert_eq!(n.to_be(), n.swap_bytes())
}
Run
source

pub const fn to_le(self) -> Saturating<u32>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

self 从目标的字节序转换为 Little Endian。

在小端字节序上,这是个禁忌。 在大字节序中,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Au32);

if cfg!(target_endian = "little") {
    assert_eq!(n.to_le(), n)
} else {
    assert_eq!(n.to_le(), n.swap_bytes())
}
Run
source

pub fn pow(self, exp: u32) -> Saturating<u32>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

通过平方运算,将自己提升到 exp 的功效。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(3u32).pow(4), Saturating(81));
Run

过大的结果是饱和的:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(3i8).pow(5), Saturating(127));
assert_eq!(Saturating(3i8).pow(6), Saturating(127));
Run
source§

impl Saturating<u64>

source

pub const MIN: Saturating<u64> = Self(u64::MIN)

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回此整数类型可以表示的最小值。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<u64>>::MIN, Saturating(u64::MIN));
Run
source

pub const MAX: Saturating<u64> = Self(u64::MAX)

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回此整数类型可以表示的最大值。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<u64>>::MAX, Saturating(u64::MAX));
Run
source

pub const BITS: u32 = 64u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

以位为单位返回此整数类型的大小。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<u64>>::BITS, u64::BITS);
Run
source

pub const fn count_ones(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的位数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b01001100u64);

assert_eq!(n.count_ones(), 3);
Run
source

pub const fn count_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的零数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(!0u64).count_zeros(), 0);
Run
source

pub const fn trailing_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的尾随零数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b0101000u64);

assert_eq!(n.trailing_zeros(), 3);
Run
source

pub const fn rotate_left(self, n: u32) -> Saturating<u64>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将位向左移动指定的量 n,将截断的位饱和到结果整数的末尾。

请注意,此操作与 << 移位运算符不同!

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i64> = Saturating(0x0123456789ABCDEF);
let m: Saturating<i64> = Saturating(-0x76543210FEDCBA99);

assert_eq!(n.rotate_left(32), m);
Run
source

pub const fn rotate_right(self, n: u32) -> Saturating<u64>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将位右移指定的量 n,将截断的位饱和到结果整数的开头。

请注意,此操作与 >> 移位运算符不同!

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i64> = Saturating(0x0123456789ABCDEF);
let m: Saturating<i64> = Saturating(-0xFEDCBA987654322);

assert_eq!(n.rotate_right(4), m);
Run
source

pub const fn swap_bytes(self) -> Saturating<u64>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

反转整数的字节顺序。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i16> = Saturating(0b0000000_01010101);
assert_eq!(n, Saturating(85));

let m = n.swap_bytes();

assert_eq!(m, Saturating(0b01010101_00000000));
assert_eq!(m, Saturating(21760));
Run
const: unstable · source

pub fn reverse_bits(self) -> Saturating<u64>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

反转整数的位模式。

Examples

请注意,此示例在整数类型之间共享。 这就解释了为什么在这里使用 i16

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b0000000_01010101i16);
assert_eq!(n, Saturating(85));

let m = n.reverse_bits();

assert_eq!(m.0 as u16, 0b10101010_00000000);
assert_eq!(m, Saturating(-22016));
Run
source

pub const fn from_be(x: Saturating<u64>) -> Saturating<u64>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将整数从大端字节序转换为目标的字节序。

在大端节序序上,这是个禁忌。 在小端字节序上,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Au64);

if cfg!(target_endian = "big") {
    assert_eq!(<Saturating<u64>>::from_be(n), n)
} else {
    assert_eq!(<Saturating<u64>>::from_be(n), n.swap_bytes())
}
Run
source

pub const fn from_le(x: Saturating<u64>) -> Saturating<u64>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将整数从小端字节序转换为目标的字节序。

在小端字节序上,这是个禁忌。 在大字节序中,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Au64);

if cfg!(target_endian = "little") {
    assert_eq!(<Saturating<u64>>::from_le(n), n)
} else {
    assert_eq!(<Saturating<u64>>::from_le(n), n.swap_bytes())
}
Run
source

pub const fn to_be(self) -> Saturating<u64>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

self 从目标的字节序转换为大字节序。

在大端节序序上,这是个禁忌。 在小端字节序上,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Au64);

if cfg!(target_endian = "big") {
    assert_eq!(n.to_be(), n)
} else {
    assert_eq!(n.to_be(), n.swap_bytes())
}
Run
source

pub const fn to_le(self) -> Saturating<u64>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

self 从目标的字节序转换为 Little Endian。

在小端字节序上,这是个禁忌。 在大字节序中,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Au64);

if cfg!(target_endian = "little") {
    assert_eq!(n.to_le(), n)
} else {
    assert_eq!(n.to_le(), n.swap_bytes())
}
Run
source

pub fn pow(self, exp: u32) -> Saturating<u64>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

通过平方运算,将自己提升到 exp 的功效。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(3u64).pow(4), Saturating(81));
Run

过大的结果是饱和的:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(3i8).pow(5), Saturating(127));
assert_eq!(Saturating(3i8).pow(6), Saturating(127));
Run
source§

impl Saturating<u128>

source

pub const MIN: Saturating<u128> = Self(u128::MIN)

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回此整数类型可以表示的最小值。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<u128>>::MIN, Saturating(u128::MIN));
Run
source

pub const MAX: Saturating<u128> = Self(u128::MAX)

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回此整数类型可以表示的最大值。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<u128>>::MAX, Saturating(u128::MAX));
Run
source

pub const BITS: u32 = 128u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

以位为单位返回此整数类型的大小。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<u128>>::BITS, u128::BITS);
Run
source

pub const fn count_ones(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的位数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b01001100u128);

assert_eq!(n.count_ones(), 3);
Run
source

pub const fn count_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的零数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(!0u128).count_zeros(), 0);
Run
source

pub const fn trailing_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的尾随零数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b0101000u128);

assert_eq!(n.trailing_zeros(), 3);
Run
source

pub const fn rotate_left(self, n: u32) -> Saturating<u128>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将位向左移动指定的量 n,将截断的位饱和到结果整数的末尾。

请注意,此操作与 << 移位运算符不同!

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i64> = Saturating(0x0123456789ABCDEF);
let m: Saturating<i64> = Saturating(-0x76543210FEDCBA99);

assert_eq!(n.rotate_left(32), m);
Run
source

pub const fn rotate_right(self, n: u32) -> Saturating<u128>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将位右移指定的量 n,将截断的位饱和到结果整数的开头。

请注意,此操作与 >> 移位运算符不同!

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i64> = Saturating(0x0123456789ABCDEF);
let m: Saturating<i64> = Saturating(-0xFEDCBA987654322);

assert_eq!(n.rotate_right(4), m);
Run
source

pub const fn swap_bytes(self) -> Saturating<u128>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

反转整数的字节顺序。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i16> = Saturating(0b0000000_01010101);
assert_eq!(n, Saturating(85));

let m = n.swap_bytes();

assert_eq!(m, Saturating(0b01010101_00000000));
assert_eq!(m, Saturating(21760));
Run
const: unstable · source

pub fn reverse_bits(self) -> Saturating<u128>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

反转整数的位模式。

Examples

请注意,此示例在整数类型之间共享。 这就解释了为什么在这里使用 i16

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b0000000_01010101i16);
assert_eq!(n, Saturating(85));

let m = n.reverse_bits();

assert_eq!(m.0 as u16, 0b10101010_00000000);
assert_eq!(m, Saturating(-22016));
Run
source

pub const fn from_be(x: Saturating<u128>) -> Saturating<u128>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将整数从大端字节序转换为目标的字节序。

在大端节序序上,这是个禁忌。 在小端字节序上,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Au128);

if cfg!(target_endian = "big") {
    assert_eq!(<Saturating<u128>>::from_be(n), n)
} else {
    assert_eq!(<Saturating<u128>>::from_be(n), n.swap_bytes())
}
Run
source

pub const fn from_le(x: Saturating<u128>) -> Saturating<u128>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将整数从小端字节序转换为目标的字节序。

在小端字节序上,这是个禁忌。 在大字节序中,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Au128);

if cfg!(target_endian = "little") {
    assert_eq!(<Saturating<u128>>::from_le(n), n)
} else {
    assert_eq!(<Saturating<u128>>::from_le(n), n.swap_bytes())
}
Run
source

pub const fn to_be(self) -> Saturating<u128>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

self 从目标的字节序转换为大字节序。

在大端节序序上,这是个禁忌。 在小端字节序上,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Au128);

if cfg!(target_endian = "big") {
    assert_eq!(n.to_be(), n)
} else {
    assert_eq!(n.to_be(), n.swap_bytes())
}
Run
source

pub const fn to_le(self) -> Saturating<u128>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

self 从目标的字节序转换为 Little Endian。

在小端字节序上,这是个禁忌。 在大字节序中,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Au128);

if cfg!(target_endian = "little") {
    assert_eq!(n.to_le(), n)
} else {
    assert_eq!(n.to_le(), n.swap_bytes())
}
Run
source

pub fn pow(self, exp: u32) -> Saturating<u128>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

通过平方运算,将自己提升到 exp 的功效。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(3u128).pow(4), Saturating(81));
Run

过大的结果是饱和的:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(3i8).pow(5), Saturating(127));
assert_eq!(Saturating(3i8).pow(6), Saturating(127));
Run
source§

impl Saturating<isize>

source

pub const MIN: Saturating<isize> = Self(isize::MIN)

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回此整数类型可以表示的最小值。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<isize>>::MIN, Saturating(isize::MIN));
Run
source

pub const MAX: Saturating<isize> = Self(isize::MAX)

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回此整数类型可以表示的最大值。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<isize>>::MAX, Saturating(isize::MAX));
Run
source

pub const BITS: u32 = 64u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

以位为单位返回此整数类型的大小。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<isize>>::BITS, isize::BITS);
Run
source

pub const fn count_ones(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的位数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b01001100isize);

assert_eq!(n.count_ones(), 3);
Run
source

pub const fn count_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的零数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(!0isize).count_zeros(), 0);
Run
source

pub const fn trailing_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的尾随零数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b0101000isize);

assert_eq!(n.trailing_zeros(), 3);
Run
source

pub const fn rotate_left(self, n: u32) -> Saturating<isize>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将位向左移动指定的量 n,将截断的位饱和到结果整数的末尾。

请注意,此操作与 << 移位运算符不同!

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i64> = Saturating(0x0123456789ABCDEF);
let m: Saturating<i64> = Saturating(-0x76543210FEDCBA99);

assert_eq!(n.rotate_left(32), m);
Run
source

pub const fn rotate_right(self, n: u32) -> Saturating<isize>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将位右移指定的量 n,将截断的位饱和到结果整数的开头。

请注意,此操作与 >> 移位运算符不同!

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i64> = Saturating(0x0123456789ABCDEF);
let m: Saturating<i64> = Saturating(-0xFEDCBA987654322);

assert_eq!(n.rotate_right(4), m);
Run
source

pub const fn swap_bytes(self) -> Saturating<isize>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

反转整数的字节顺序。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i16> = Saturating(0b0000000_01010101);
assert_eq!(n, Saturating(85));

let m = n.swap_bytes();

assert_eq!(m, Saturating(0b01010101_00000000));
assert_eq!(m, Saturating(21760));
Run
const: unstable · source

pub fn reverse_bits(self) -> Saturating<isize>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

反转整数的位模式。

Examples

请注意,此示例在整数类型之间共享。 这就解释了为什么在这里使用 i16

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b0000000_01010101i16);
assert_eq!(n, Saturating(85));

let m = n.reverse_bits();

assert_eq!(m.0 as u16, 0b10101010_00000000);
assert_eq!(m, Saturating(-22016));
Run
source

pub const fn from_be(x: Saturating<isize>) -> Saturating<isize>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将整数从大端字节序转换为目标的字节序。

在大端节序序上,这是个禁忌。 在小端字节序上,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Aisize);

if cfg!(target_endian = "big") {
    assert_eq!(<Saturating<isize>>::from_be(n), n)
} else {
    assert_eq!(<Saturating<isize>>::from_be(n), n.swap_bytes())
}
Run
source

pub const fn from_le(x: Saturating<isize>) -> Saturating<isize>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将整数从小端字节序转换为目标的字节序。

在小端字节序上,这是个禁忌。 在大字节序中,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Aisize);

if cfg!(target_endian = "little") {
    assert_eq!(<Saturating<isize>>::from_le(n), n)
} else {
    assert_eq!(<Saturating<isize>>::from_le(n), n.swap_bytes())
}
Run
source

pub const fn to_be(self) -> Saturating<isize>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

self 从目标的字节序转换为大字节序。

在大端节序序上,这是个禁忌。 在小端字节序上,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Aisize);

if cfg!(target_endian = "big") {
    assert_eq!(n.to_be(), n)
} else {
    assert_eq!(n.to_be(), n.swap_bytes())
}
Run
source

pub const fn to_le(self) -> Saturating<isize>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

self 从目标的字节序转换为 Little Endian。

在小端字节序上,这是个禁忌。 在大字节序中,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Aisize);

if cfg!(target_endian = "little") {
    assert_eq!(n.to_le(), n)
} else {
    assert_eq!(n.to_le(), n.swap_bytes())
}
Run
source

pub fn pow(self, exp: u32) -> Saturating<isize>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

通过平方运算,将自己提升到 exp 的功效。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(3isize).pow(4), Saturating(81));
Run

过大的结果是饱和的:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(3i8).pow(5), Saturating(127));
assert_eq!(Saturating(3i8).pow(6), Saturating(127));
Run
source§

impl Saturating<i8>

source

pub const MIN: Saturating<i8> = Self(i8::MIN)

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回此整数类型可以表示的最小值。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<i8>>::MIN, Saturating(i8::MIN));
Run
source

pub const MAX: Saturating<i8> = Self(i8::MAX)

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回此整数类型可以表示的最大值。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<i8>>::MAX, Saturating(i8::MAX));
Run
source

pub const BITS: u32 = 8u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

以位为单位返回此整数类型的大小。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<i8>>::BITS, i8::BITS);
Run
source

pub const fn count_ones(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的位数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b01001100i8);

assert_eq!(n.count_ones(), 3);
Run
source

pub const fn count_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的零数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(!0i8).count_zeros(), 0);
Run
source

pub const fn trailing_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的尾随零数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b0101000i8);

assert_eq!(n.trailing_zeros(), 3);
Run
source

pub const fn rotate_left(self, n: u32) -> Saturating<i8>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将位向左移动指定的量 n,将截断的位饱和到结果整数的末尾。

请注意,此操作与 << 移位运算符不同!

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i64> = Saturating(0x0123456789ABCDEF);
let m: Saturating<i64> = Saturating(-0x76543210FEDCBA99);

assert_eq!(n.rotate_left(32), m);
Run
source

pub const fn rotate_right(self, n: u32) -> Saturating<i8>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将位右移指定的量 n,将截断的位饱和到结果整数的开头。

请注意,此操作与 >> 移位运算符不同!

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i64> = Saturating(0x0123456789ABCDEF);
let m: Saturating<i64> = Saturating(-0xFEDCBA987654322);

assert_eq!(n.rotate_right(4), m);
Run
source

pub const fn swap_bytes(self) -> Saturating<i8>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

反转整数的字节顺序。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i16> = Saturating(0b0000000_01010101);
assert_eq!(n, Saturating(85));

let m = n.swap_bytes();

assert_eq!(m, Saturating(0b01010101_00000000));
assert_eq!(m, Saturating(21760));
Run
const: unstable · source

pub fn reverse_bits(self) -> Saturating<i8>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

反转整数的位模式。

Examples

请注意,此示例在整数类型之间共享。 这就解释了为什么在这里使用 i16

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b0000000_01010101i16);
assert_eq!(n, Saturating(85));

let m = n.reverse_bits();

assert_eq!(m.0 as u16, 0b10101010_00000000);
assert_eq!(m, Saturating(-22016));
Run
source

pub const fn from_be(x: Saturating<i8>) -> Saturating<i8>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将整数从大端字节序转换为目标的字节序。

在大端节序序上,这是个禁忌。 在小端字节序上,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Ai8);

if cfg!(target_endian = "big") {
    assert_eq!(<Saturating<i8>>::from_be(n), n)
} else {
    assert_eq!(<Saturating<i8>>::from_be(n), n.swap_bytes())
}
Run
source

pub const fn from_le(x: Saturating<i8>) -> Saturating<i8>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将整数从小端字节序转换为目标的字节序。

在小端字节序上,这是个禁忌。 在大字节序中,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Ai8);

if cfg!(target_endian = "little") {
    assert_eq!(<Saturating<i8>>::from_le(n), n)
} else {
    assert_eq!(<Saturating<i8>>::from_le(n), n.swap_bytes())
}
Run
source

pub const fn to_be(self) -> Saturating<i8>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

self 从目标的字节序转换为大字节序。

在大端节序序上,这是个禁忌。 在小端字节序上,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Ai8);

if cfg!(target_endian = "big") {
    assert_eq!(n.to_be(), n)
} else {
    assert_eq!(n.to_be(), n.swap_bytes())
}
Run
source

pub const fn to_le(self) -> Saturating<i8>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

self 从目标的字节序转换为 Little Endian。

在小端字节序上,这是个禁忌。 在大字节序中,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Ai8);

if cfg!(target_endian = "little") {
    assert_eq!(n.to_le(), n)
} else {
    assert_eq!(n.to_le(), n.swap_bytes())
}
Run
source

pub fn pow(self, exp: u32) -> Saturating<i8>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

通过平方运算,将自己提升到 exp 的功效。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(3i8).pow(4), Saturating(81));
Run

过大的结果是饱和的:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(3i8).pow(5), Saturating(127));
assert_eq!(Saturating(3i8).pow(6), Saturating(127));
Run
source§

impl Saturating<i16>

source

pub const MIN: Saturating<i16> = Self(i16::MIN)

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回此整数类型可以表示的最小值。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<i16>>::MIN, Saturating(i16::MIN));
Run
source

pub const MAX: Saturating<i16> = Self(i16::MAX)

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回此整数类型可以表示的最大值。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<i16>>::MAX, Saturating(i16::MAX));
Run
source

pub const BITS: u32 = 16u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

以位为单位返回此整数类型的大小。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<i16>>::BITS, i16::BITS);
Run
source

pub const fn count_ones(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的位数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b01001100i16);

assert_eq!(n.count_ones(), 3);
Run
source

pub const fn count_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的零数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(!0i16).count_zeros(), 0);
Run
source

pub const fn trailing_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的尾随零数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b0101000i16);

assert_eq!(n.trailing_zeros(), 3);
Run
source

pub const fn rotate_left(self, n: u32) -> Saturating<i16>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将位向左移动指定的量 n,将截断的位饱和到结果整数的末尾。

请注意,此操作与 << 移位运算符不同!

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i64> = Saturating(0x0123456789ABCDEF);
let m: Saturating<i64> = Saturating(-0x76543210FEDCBA99);

assert_eq!(n.rotate_left(32), m);
Run
source

pub const fn rotate_right(self, n: u32) -> Saturating<i16>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将位右移指定的量 n,将截断的位饱和到结果整数的开头。

请注意,此操作与 >> 移位运算符不同!

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i64> = Saturating(0x0123456789ABCDEF);
let m: Saturating<i64> = Saturating(-0xFEDCBA987654322);

assert_eq!(n.rotate_right(4), m);
Run
source

pub const fn swap_bytes(self) -> Saturating<i16>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

反转整数的字节顺序。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i16> = Saturating(0b0000000_01010101);
assert_eq!(n, Saturating(85));

let m = n.swap_bytes();

assert_eq!(m, Saturating(0b01010101_00000000));
assert_eq!(m, Saturating(21760));
Run
const: unstable · source

pub fn reverse_bits(self) -> Saturating<i16>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

反转整数的位模式。

Examples

请注意,此示例在整数类型之间共享。 这就解释了为什么在这里使用 i16

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b0000000_01010101i16);
assert_eq!(n, Saturating(85));

let m = n.reverse_bits();

assert_eq!(m.0 as u16, 0b10101010_00000000);
assert_eq!(m, Saturating(-22016));
Run
source

pub const fn from_be(x: Saturating<i16>) -> Saturating<i16>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将整数从大端字节序转换为目标的字节序。

在大端节序序上,这是个禁忌。 在小端字节序上,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Ai16);

if cfg!(target_endian = "big") {
    assert_eq!(<Saturating<i16>>::from_be(n), n)
} else {
    assert_eq!(<Saturating<i16>>::from_be(n), n.swap_bytes())
}
Run
source

pub const fn from_le(x: Saturating<i16>) -> Saturating<i16>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将整数从小端字节序转换为目标的字节序。

在小端字节序上,这是个禁忌。 在大字节序中,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Ai16);

if cfg!(target_endian = "little") {
    assert_eq!(<Saturating<i16>>::from_le(n), n)
} else {
    assert_eq!(<Saturating<i16>>::from_le(n), n.swap_bytes())
}
Run
source

pub const fn to_be(self) -> Saturating<i16>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

self 从目标的字节序转换为大字节序。

在大端节序序上,这是个禁忌。 在小端字节序上,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Ai16);

if cfg!(target_endian = "big") {
    assert_eq!(n.to_be(), n)
} else {
    assert_eq!(n.to_be(), n.swap_bytes())
}
Run
source

pub const fn to_le(self) -> Saturating<i16>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

self 从目标的字节序转换为 Little Endian。

在小端字节序上,这是个禁忌。 在大字节序中,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Ai16);

if cfg!(target_endian = "little") {
    assert_eq!(n.to_le(), n)
} else {
    assert_eq!(n.to_le(), n.swap_bytes())
}
Run
source

pub fn pow(self, exp: u32) -> Saturating<i16>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

通过平方运算,将自己提升到 exp 的功效。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(3i16).pow(4), Saturating(81));
Run

过大的结果是饱和的:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(3i8).pow(5), Saturating(127));
assert_eq!(Saturating(3i8).pow(6), Saturating(127));
Run
source§

impl Saturating<i32>

source

pub const MIN: Saturating<i32> = Self(i32::MIN)

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回此整数类型可以表示的最小值。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<i32>>::MIN, Saturating(i32::MIN));
Run
source

pub const MAX: Saturating<i32> = Self(i32::MAX)

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回此整数类型可以表示的最大值。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<i32>>::MAX, Saturating(i32::MAX));
Run
source

pub const BITS: u32 = 32u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

以位为单位返回此整数类型的大小。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<i32>>::BITS, i32::BITS);
Run
source

pub const fn count_ones(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的位数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b01001100i32);

assert_eq!(n.count_ones(), 3);
Run
source

pub const fn count_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的零数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(!0i32).count_zeros(), 0);
Run
source

pub const fn trailing_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的尾随零数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b0101000i32);

assert_eq!(n.trailing_zeros(), 3);
Run
source

pub const fn rotate_left(self, n: u32) -> Saturating<i32>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将位向左移动指定的量 n,将截断的位饱和到结果整数的末尾。

请注意,此操作与 << 移位运算符不同!

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i64> = Saturating(0x0123456789ABCDEF);
let m: Saturating<i64> = Saturating(-0x76543210FEDCBA99);

assert_eq!(n.rotate_left(32), m);
Run
source

pub const fn rotate_right(self, n: u32) -> Saturating<i32>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将位右移指定的量 n,将截断的位饱和到结果整数的开头。

请注意,此操作与 >> 移位运算符不同!

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i64> = Saturating(0x0123456789ABCDEF);
let m: Saturating<i64> = Saturating(-0xFEDCBA987654322);

assert_eq!(n.rotate_right(4), m);
Run
source

pub const fn swap_bytes(self) -> Saturating<i32>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

反转整数的字节顺序。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i16> = Saturating(0b0000000_01010101);
assert_eq!(n, Saturating(85));

let m = n.swap_bytes();

assert_eq!(m, Saturating(0b01010101_00000000));
assert_eq!(m, Saturating(21760));
Run
const: unstable · source

pub fn reverse_bits(self) -> Saturating<i32>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

反转整数的位模式。

Examples

请注意,此示例在整数类型之间共享。 这就解释了为什么在这里使用 i16

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b0000000_01010101i16);
assert_eq!(n, Saturating(85));

let m = n.reverse_bits();

assert_eq!(m.0 as u16, 0b10101010_00000000);
assert_eq!(m, Saturating(-22016));
Run
source

pub const fn from_be(x: Saturating<i32>) -> Saturating<i32>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将整数从大端字节序转换为目标的字节序。

在大端节序序上,这是个禁忌。 在小端字节序上,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Ai32);

if cfg!(target_endian = "big") {
    assert_eq!(<Saturating<i32>>::from_be(n), n)
} else {
    assert_eq!(<Saturating<i32>>::from_be(n), n.swap_bytes())
}
Run
source

pub const fn from_le(x: Saturating<i32>) -> Saturating<i32>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将整数从小端字节序转换为目标的字节序。

在小端字节序上,这是个禁忌。 在大字节序中,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Ai32);

if cfg!(target_endian = "little") {
    assert_eq!(<Saturating<i32>>::from_le(n), n)
} else {
    assert_eq!(<Saturating<i32>>::from_le(n), n.swap_bytes())
}
Run
source

pub const fn to_be(self) -> Saturating<i32>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

self 从目标的字节序转换为大字节序。

在大端节序序上,这是个禁忌。 在小端字节序上,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Ai32);

if cfg!(target_endian = "big") {
    assert_eq!(n.to_be(), n)
} else {
    assert_eq!(n.to_be(), n.swap_bytes())
}
Run
source

pub const fn to_le(self) -> Saturating<i32>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

self 从目标的字节序转换为 Little Endian。

在小端字节序上,这是个禁忌。 在大字节序中,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Ai32);

if cfg!(target_endian = "little") {
    assert_eq!(n.to_le(), n)
} else {
    assert_eq!(n.to_le(), n.swap_bytes())
}
Run
source

pub fn pow(self, exp: u32) -> Saturating<i32>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

通过平方运算,将自己提升到 exp 的功效。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(3i32).pow(4), Saturating(81));
Run

过大的结果是饱和的:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(3i8).pow(5), Saturating(127));
assert_eq!(Saturating(3i8).pow(6), Saturating(127));
Run
source§

impl Saturating<i64>

source

pub const MIN: Saturating<i64> = Self(i64::MIN)

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回此整数类型可以表示的最小值。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<i64>>::MIN, Saturating(i64::MIN));
Run
source

pub const MAX: Saturating<i64> = Self(i64::MAX)

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回此整数类型可以表示的最大值。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<i64>>::MAX, Saturating(i64::MAX));
Run
source

pub const BITS: u32 = 64u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

以位为单位返回此整数类型的大小。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<i64>>::BITS, i64::BITS);
Run
source

pub const fn count_ones(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的位数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b01001100i64);

assert_eq!(n.count_ones(), 3);
Run
source

pub const fn count_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的零数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(!0i64).count_zeros(), 0);
Run
source

pub const fn trailing_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的尾随零数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b0101000i64);

assert_eq!(n.trailing_zeros(), 3);
Run
source

pub const fn rotate_left(self, n: u32) -> Saturating<i64>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将位向左移动指定的量 n,将截断的位饱和到结果整数的末尾。

请注意,此操作与 << 移位运算符不同!

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i64> = Saturating(0x0123456789ABCDEF);
let m: Saturating<i64> = Saturating(-0x76543210FEDCBA99);

assert_eq!(n.rotate_left(32), m);
Run
source

pub const fn rotate_right(self, n: u32) -> Saturating<i64>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将位右移指定的量 n,将截断的位饱和到结果整数的开头。

请注意,此操作与 >> 移位运算符不同!

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i64> = Saturating(0x0123456789ABCDEF);
let m: Saturating<i64> = Saturating(-0xFEDCBA987654322);

assert_eq!(n.rotate_right(4), m);
Run
source

pub const fn swap_bytes(self) -> Saturating<i64>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

反转整数的字节顺序。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i16> = Saturating(0b0000000_01010101);
assert_eq!(n, Saturating(85));

let m = n.swap_bytes();

assert_eq!(m, Saturating(0b01010101_00000000));
assert_eq!(m, Saturating(21760));
Run
const: unstable · source

pub fn reverse_bits(self) -> Saturating<i64>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

反转整数的位模式。

Examples

请注意,此示例在整数类型之间共享。 这就解释了为什么在这里使用 i16

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b0000000_01010101i16);
assert_eq!(n, Saturating(85));

let m = n.reverse_bits();

assert_eq!(m.0 as u16, 0b10101010_00000000);
assert_eq!(m, Saturating(-22016));
Run
source

pub const fn from_be(x: Saturating<i64>) -> Saturating<i64>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将整数从大端字节序转换为目标的字节序。

在大端节序序上,这是个禁忌。 在小端字节序上,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Ai64);

if cfg!(target_endian = "big") {
    assert_eq!(<Saturating<i64>>::from_be(n), n)
} else {
    assert_eq!(<Saturating<i64>>::from_be(n), n.swap_bytes())
}
Run
source

pub const fn from_le(x: Saturating<i64>) -> Saturating<i64>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将整数从小端字节序转换为目标的字节序。

在小端字节序上,这是个禁忌。 在大字节序中,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Ai64);

if cfg!(target_endian = "little") {
    assert_eq!(<Saturating<i64>>::from_le(n), n)
} else {
    assert_eq!(<Saturating<i64>>::from_le(n), n.swap_bytes())
}
Run
source

pub const fn to_be(self) -> Saturating<i64>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

self 从目标的字节序转换为大字节序。

在大端节序序上,这是个禁忌。 在小端字节序上,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Ai64);

if cfg!(target_endian = "big") {
    assert_eq!(n.to_be(), n)
} else {
    assert_eq!(n.to_be(), n.swap_bytes())
}
Run
source

pub const fn to_le(self) -> Saturating<i64>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

self 从目标的字节序转换为 Little Endian。

在小端字节序上,这是个禁忌。 在大字节序中,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Ai64);

if cfg!(target_endian = "little") {
    assert_eq!(n.to_le(), n)
} else {
    assert_eq!(n.to_le(), n.swap_bytes())
}
Run
source

pub fn pow(self, exp: u32) -> Saturating<i64>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

通过平方运算,将自己提升到 exp 的功效。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(3i64).pow(4), Saturating(81));
Run

过大的结果是饱和的:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(3i8).pow(5), Saturating(127));
assert_eq!(Saturating(3i8).pow(6), Saturating(127));
Run
source§

impl Saturating<i128>

source

pub const MIN: Saturating<i128> = Self(i128::MIN)

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回此整数类型可以表示的最小值。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<i128>>::MIN, Saturating(i128::MIN));
Run
source

pub const MAX: Saturating<i128> = Self(i128::MAX)

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回此整数类型可以表示的最大值。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<i128>>::MAX, Saturating(i128::MAX));
Run
source

pub const BITS: u32 = 128u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

以位为单位返回此整数类型的大小。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(<Saturating<i128>>::BITS, i128::BITS);
Run
source

pub const fn count_ones(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的位数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b01001100i128);

assert_eq!(n.count_ones(), 3);
Run
source

pub const fn count_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的零数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(!0i128).count_zeros(), 0);
Run
source

pub const fn trailing_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中的尾随零数。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b0101000i128);

assert_eq!(n.trailing_zeros(), 3);
Run
source

pub const fn rotate_left(self, n: u32) -> Saturating<i128>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将位向左移动指定的量 n,将截断的位饱和到结果整数的末尾。

请注意,此操作与 << 移位运算符不同!

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i64> = Saturating(0x0123456789ABCDEF);
let m: Saturating<i64> = Saturating(-0x76543210FEDCBA99);

assert_eq!(n.rotate_left(32), m);
Run
source

pub const fn rotate_right(self, n: u32) -> Saturating<i128>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将位右移指定的量 n,将截断的位饱和到结果整数的开头。

请注意,此操作与 >> 移位运算符不同!

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i64> = Saturating(0x0123456789ABCDEF);
let m: Saturating<i64> = Saturating(-0xFEDCBA987654322);

assert_eq!(n.rotate_right(4), m);
Run
source

pub const fn swap_bytes(self) -> Saturating<i128>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

反转整数的字节顺序。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n: Saturating<i16> = Saturating(0b0000000_01010101);
assert_eq!(n, Saturating(85));

let m = n.swap_bytes();

assert_eq!(m, Saturating(0b01010101_00000000));
assert_eq!(m, Saturating(21760));
Run
const: unstable · source

pub fn reverse_bits(self) -> Saturating<i128>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

反转整数的位模式。

Examples

请注意,此示例在整数类型之间共享。 这就解释了为什么在这里使用 i16

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0b0000000_01010101i16);
assert_eq!(n, Saturating(85));

let m = n.reverse_bits();

assert_eq!(m.0 as u16, 0b10101010_00000000);
assert_eq!(m, Saturating(-22016));
Run
source

pub const fn from_be(x: Saturating<i128>) -> Saturating<i128>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将整数从大端字节序转换为目标的字节序。

在大端节序序上,这是个禁忌。 在小端字节序上,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Ai128);

if cfg!(target_endian = "big") {
    assert_eq!(<Saturating<i128>>::from_be(n), n)
} else {
    assert_eq!(<Saturating<i128>>::from_be(n), n.swap_bytes())
}
Run
source

pub const fn from_le(x: Saturating<i128>) -> Saturating<i128>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

将整数从小端字节序转换为目标的字节序。

在小端字节序上,这是个禁忌。 在大字节序中,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Ai128);

if cfg!(target_endian = "little") {
    assert_eq!(<Saturating<i128>>::from_le(n), n)
} else {
    assert_eq!(<Saturating<i128>>::from_le(n), n.swap_bytes())
}
Run
source

pub const fn to_be(self) -> Saturating<i128>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

self 从目标的字节序转换为大字节序。

在大端节序序上,这是个禁忌。 在小端字节序上,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Ai128);

if cfg!(target_endian = "big") {
    assert_eq!(n.to_be(), n)
} else {
    assert_eq!(n.to_be(), n.swap_bytes())
}
Run
source

pub const fn to_le(self) -> Saturating<i128>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

self 从目标的字节序转换为 Little Endian。

在小端字节序上,这是个禁忌。 在大字节序中,字节被交换。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(0x1Ai128);

if cfg!(target_endian = "little") {
    assert_eq!(n.to_le(), n)
} else {
    assert_eq!(n.to_le(), n.swap_bytes())
}
Run
source

pub fn pow(self, exp: u32) -> Saturating<i128>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

通过平方运算,将自己提升到 exp 的功效。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(3i128).pow(4), Saturating(81));
Run

过大的结果是饱和的:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(3i8).pow(5), Saturating(127));
assert_eq!(Saturating(3i8).pow(6), Saturating(127));
Run
source§

impl Saturating<isize>

source

pub const fn leading_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中前导零的数目。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(isize::MAX >> 2);

assert_eq!(n.leading_zeros(), 3);
Run
source

pub fn abs(self) -> Saturating<isize>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

饱和绝对值。 计算 self.abs(),如果 self == MIN 则返回 MAX 而不是溢出。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(100isize).abs(), Saturating(100));
assert_eq!(Saturating(-100isize).abs(), Saturating(100));
assert_eq!(Saturating(isize::MIN).abs(), Saturating((isize::MIN + 1).abs()));
assert_eq!(Saturating(isize::MIN).abs(), Saturating(isize::MIN.saturating_abs()));
assert_eq!(Saturating(isize::MIN).abs(), Saturating(isize::MAX));
Run
source

pub fn signum(self) -> Saturating<isize>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回一个表示 self 的符号的数字。

  • 0 如果数字为零
  • 1 如果数字是正数
  • -1 如果数字是负数
Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(10isize).signum(), Saturating(1));
assert_eq!(Saturating(0isize).signum(), Saturating(0));
assert_eq!(Saturating(-10isize).signum(), Saturating(-1));
Run
source

pub const fn is_positive(self) -> bool

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

如果 self 为正数,则返回 true; 如果数字为零或负数,则返回 false

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert!(Saturating(10isize).is_positive());
assert!(!Saturating(-10isize).is_positive());
Run
source

pub const fn is_negative(self) -> bool

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

如果 self 为负,则返回 true; 如果数字为零或正,则返回 false

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert!(Saturating(-10isize).is_negative());
assert!(!Saturating(10isize).is_negative());
Run
source§

impl Saturating<i8>

source

pub const fn leading_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中前导零的数目。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(i8::MAX >> 2);

assert_eq!(n.leading_zeros(), 3);
Run
source

pub fn abs(self) -> Saturating<i8>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

饱和绝对值。 计算 self.abs(),如果 self == MIN 则返回 MAX 而不是溢出。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(100i8).abs(), Saturating(100));
assert_eq!(Saturating(-100i8).abs(), Saturating(100));
assert_eq!(Saturating(i8::MIN).abs(), Saturating((i8::MIN + 1).abs()));
assert_eq!(Saturating(i8::MIN).abs(), Saturating(i8::MIN.saturating_abs()));
assert_eq!(Saturating(i8::MIN).abs(), Saturating(i8::MAX));
Run
source

pub fn signum(self) -> Saturating<i8>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回一个表示 self 的符号的数字。

  • 0 如果数字为零
  • 1 如果数字是正数
  • -1 如果数字是负数
Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(10i8).signum(), Saturating(1));
assert_eq!(Saturating(0i8).signum(), Saturating(0));
assert_eq!(Saturating(-10i8).signum(), Saturating(-1));
Run
source

pub const fn is_positive(self) -> bool

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

如果 self 为正数,则返回 true; 如果数字为零或负数,则返回 false

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert!(Saturating(10i8).is_positive());
assert!(!Saturating(-10i8).is_positive());
Run
source

pub const fn is_negative(self) -> bool

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

如果 self 为负,则返回 true; 如果数字为零或正,则返回 false

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert!(Saturating(-10i8).is_negative());
assert!(!Saturating(10i8).is_negative());
Run
source§

impl Saturating<i16>

source

pub const fn leading_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中前导零的数目。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(i16::MAX >> 2);

assert_eq!(n.leading_zeros(), 3);
Run
source

pub fn abs(self) -> Saturating<i16>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

饱和绝对值。 计算 self.abs(),如果 self == MIN 则返回 MAX 而不是溢出。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(100i16).abs(), Saturating(100));
assert_eq!(Saturating(-100i16).abs(), Saturating(100));
assert_eq!(Saturating(i16::MIN).abs(), Saturating((i16::MIN + 1).abs()));
assert_eq!(Saturating(i16::MIN).abs(), Saturating(i16::MIN.saturating_abs()));
assert_eq!(Saturating(i16::MIN).abs(), Saturating(i16::MAX));
Run
source

pub fn signum(self) -> Saturating<i16>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回一个表示 self 的符号的数字。

  • 0 如果数字为零
  • 1 如果数字是正数
  • -1 如果数字是负数
Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(10i16).signum(), Saturating(1));
assert_eq!(Saturating(0i16).signum(), Saturating(0));
assert_eq!(Saturating(-10i16).signum(), Saturating(-1));
Run
source

pub const fn is_positive(self) -> bool

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

如果 self 为正数,则返回 true; 如果数字为零或负数,则返回 false

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert!(Saturating(10i16).is_positive());
assert!(!Saturating(-10i16).is_positive());
Run
source

pub const fn is_negative(self) -> bool

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

如果 self 为负,则返回 true; 如果数字为零或正,则返回 false

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert!(Saturating(-10i16).is_negative());
assert!(!Saturating(10i16).is_negative());
Run
source§

impl Saturating<i32>

source

pub const fn leading_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中前导零的数目。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(i32::MAX >> 2);

assert_eq!(n.leading_zeros(), 3);
Run
source

pub fn abs(self) -> Saturating<i32>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

饱和绝对值。 计算 self.abs(),如果 self == MIN 则返回 MAX 而不是溢出。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(100i32).abs(), Saturating(100));
assert_eq!(Saturating(-100i32).abs(), Saturating(100));
assert_eq!(Saturating(i32::MIN).abs(), Saturating((i32::MIN + 1).abs()));
assert_eq!(Saturating(i32::MIN).abs(), Saturating(i32::MIN.saturating_abs()));
assert_eq!(Saturating(i32::MIN).abs(), Saturating(i32::MAX));
Run
source

pub fn signum(self) -> Saturating<i32>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回一个表示 self 的符号的数字。

  • 0 如果数字为零
  • 1 如果数字是正数
  • -1 如果数字是负数
Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(10i32).signum(), Saturating(1));
assert_eq!(Saturating(0i32).signum(), Saturating(0));
assert_eq!(Saturating(-10i32).signum(), Saturating(-1));
Run
source

pub const fn is_positive(self) -> bool

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

如果 self 为正数,则返回 true; 如果数字为零或负数,则返回 false

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert!(Saturating(10i32).is_positive());
assert!(!Saturating(-10i32).is_positive());
Run
source

pub const fn is_negative(self) -> bool

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

如果 self 为负,则返回 true; 如果数字为零或正,则返回 false

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert!(Saturating(-10i32).is_negative());
assert!(!Saturating(10i32).is_negative());
Run
source§

impl Saturating<i64>

source

pub const fn leading_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中前导零的数目。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(i64::MAX >> 2);

assert_eq!(n.leading_zeros(), 3);
Run
source

pub fn abs(self) -> Saturating<i64>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

饱和绝对值。 计算 self.abs(),如果 self == MIN 则返回 MAX 而不是溢出。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(100i64).abs(), Saturating(100));
assert_eq!(Saturating(-100i64).abs(), Saturating(100));
assert_eq!(Saturating(i64::MIN).abs(), Saturating((i64::MIN + 1).abs()));
assert_eq!(Saturating(i64::MIN).abs(), Saturating(i64::MIN.saturating_abs()));
assert_eq!(Saturating(i64::MIN).abs(), Saturating(i64::MAX));
Run
source

pub fn signum(self) -> Saturating<i64>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回一个表示 self 的符号的数字。

  • 0 如果数字为零
  • 1 如果数字是正数
  • -1 如果数字是负数
Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(10i64).signum(), Saturating(1));
assert_eq!(Saturating(0i64).signum(), Saturating(0));
assert_eq!(Saturating(-10i64).signum(), Saturating(-1));
Run
source

pub const fn is_positive(self) -> bool

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

如果 self 为正数,则返回 true; 如果数字为零或负数,则返回 false

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert!(Saturating(10i64).is_positive());
assert!(!Saturating(-10i64).is_positive());
Run
source

pub const fn is_negative(self) -> bool

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

如果 self 为负,则返回 true; 如果数字为零或正,则返回 false

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert!(Saturating(-10i64).is_negative());
assert!(!Saturating(10i64).is_negative());
Run
source§

impl Saturating<i128>

source

pub const fn leading_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中前导零的数目。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(i128::MAX >> 2);

assert_eq!(n.leading_zeros(), 3);
Run
source

pub fn abs(self) -> Saturating<i128>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

饱和绝对值。 计算 self.abs(),如果 self == MIN 则返回 MAX 而不是溢出。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(100i128).abs(), Saturating(100));
assert_eq!(Saturating(-100i128).abs(), Saturating(100));
assert_eq!(Saturating(i128::MIN).abs(), Saturating((i128::MIN + 1).abs()));
assert_eq!(Saturating(i128::MIN).abs(), Saturating(i128::MIN.saturating_abs()));
assert_eq!(Saturating(i128::MIN).abs(), Saturating(i128::MAX));
Run
source

pub fn signum(self) -> Saturating<i128>

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回一个表示 self 的符号的数字。

  • 0 如果数字为零
  • 1 如果数字是正数
  • -1 如果数字是负数
Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert_eq!(Saturating(10i128).signum(), Saturating(1));
assert_eq!(Saturating(0i128).signum(), Saturating(0));
assert_eq!(Saturating(-10i128).signum(), Saturating(-1));
Run
source

pub const fn is_positive(self) -> bool

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

如果 self 为正数,则返回 true; 如果数字为零或负数,则返回 false

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert!(Saturating(10i128).is_positive());
assert!(!Saturating(-10i128).is_positive());
Run
source

pub const fn is_negative(self) -> bool

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

如果 self 为负,则返回 true; 如果数字为零或正,则返回 false

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert!(Saturating(-10i128).is_negative());
assert!(!Saturating(10i128).is_negative());
Run
source§

impl Saturating<usize>

source

pub const fn leading_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中前导零的数目。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(usize::MAX >> 2);

assert_eq!(n.leading_zeros(), 2);
Run
source

pub fn is_power_of_two(self) -> bool

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

当且仅当某些 kself == 2^k 时,才返回 true

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert!(Saturating(16usize).is_power_of_two());
assert!(!Saturating(10usize).is_power_of_two());
Run
source§

impl Saturating<u8>

source

pub const fn leading_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中前导零的数目。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(u8::MAX >> 2);

assert_eq!(n.leading_zeros(), 2);
Run
source

pub fn is_power_of_two(self) -> bool

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

当且仅当某些 kself == 2^k 时,才返回 true

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert!(Saturating(16u8).is_power_of_two());
assert!(!Saturating(10u8).is_power_of_two());
Run
source§

impl Saturating<u16>

source

pub const fn leading_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中前导零的数目。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(u16::MAX >> 2);

assert_eq!(n.leading_zeros(), 2);
Run
source

pub fn is_power_of_two(self) -> bool

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

当且仅当某些 kself == 2^k 时,才返回 true

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert!(Saturating(16u16).is_power_of_two());
assert!(!Saturating(10u16).is_power_of_two());
Run
source§

impl Saturating<u32>

source

pub const fn leading_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中前导零的数目。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(u32::MAX >> 2);

assert_eq!(n.leading_zeros(), 2);
Run
source

pub fn is_power_of_two(self) -> bool

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

当且仅当某些 kself == 2^k 时,才返回 true

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert!(Saturating(16u32).is_power_of_two());
assert!(!Saturating(10u32).is_power_of_two());
Run
source§

impl Saturating<u64>

source

pub const fn leading_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中前导零的数目。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(u64::MAX >> 2);

assert_eq!(n.leading_zeros(), 2);
Run
source

pub fn is_power_of_two(self) -> bool

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

当且仅当某些 kself == 2^k 时,才返回 true

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert!(Saturating(16u64).is_power_of_two());
assert!(!Saturating(10u64).is_power_of_two());
Run
source§

impl Saturating<u128>

source

pub const fn leading_zeros(self) -> u32

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

返回 self 二进制表示形式中前导零的数目。

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

let n = Saturating(u128::MAX >> 2);

assert_eq!(n.leading_zeros(), 2);
Run
source

pub fn is_power_of_two(self) -> bool

🔬This is a nightly-only experimental API. (saturating_int_impl #87920)

当且仅当某些 kself == 2^k 时,才返回 true

Examples

基本用法:

#![feature(saturating_int_impl)]
use std::num::Saturating;

assert!(Saturating(16u128).is_power_of_two());
assert!(!Saturating(10u128).is_power_of_two());
Run

Trait Implementations§

source§

impl Add<&Saturating<i128>> for &Saturating<i128>

§

type Output = <Saturating<i128> as Add<Saturating<i128>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: &Saturating<i128> ) -> <Saturating<i128> as Add<Saturating<i128>>>::Output

执行 + 操作。 Read more
source§

impl Add<&Saturating<i128>> for Saturating<i128>

§

type Output = <Saturating<i128> as Add<Saturating<i128>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: &Saturating<i128> ) -> <Saturating<i128> as Add<Saturating<i128>>>::Output

执行 + 操作。 Read more
source§

impl Add<&Saturating<i16>> for &Saturating<i16>

§

type Output = <Saturating<i16> as Add<Saturating<i16>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: &Saturating<i16> ) -> <Saturating<i16> as Add<Saturating<i16>>>::Output

执行 + 操作。 Read more
source§

impl Add<&Saturating<i16>> for Saturating<i16>

§

type Output = <Saturating<i16> as Add<Saturating<i16>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: &Saturating<i16> ) -> <Saturating<i16> as Add<Saturating<i16>>>::Output

执行 + 操作。 Read more
source§

impl Add<&Saturating<i32>> for &Saturating<i32>

§

type Output = <Saturating<i32> as Add<Saturating<i32>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: &Saturating<i32> ) -> <Saturating<i32> as Add<Saturating<i32>>>::Output

执行 + 操作。 Read more
source§

impl Add<&Saturating<i32>> for Saturating<i32>

§

type Output = <Saturating<i32> as Add<Saturating<i32>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: &Saturating<i32> ) -> <Saturating<i32> as Add<Saturating<i32>>>::Output

执行 + 操作。 Read more
source§

impl Add<&Saturating<i64>> for &Saturating<i64>

§

type Output = <Saturating<i64> as Add<Saturating<i64>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: &Saturating<i64> ) -> <Saturating<i64> as Add<Saturating<i64>>>::Output

执行 + 操作。 Read more
source§

impl Add<&Saturating<i64>> for Saturating<i64>

§

type Output = <Saturating<i64> as Add<Saturating<i64>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: &Saturating<i64> ) -> <Saturating<i64> as Add<Saturating<i64>>>::Output

执行 + 操作。 Read more
source§

impl Add<&Saturating<i8>> for &Saturating<i8>

§

type Output = <Saturating<i8> as Add<Saturating<i8>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: &Saturating<i8> ) -> <Saturating<i8> as Add<Saturating<i8>>>::Output

执行 + 操作。 Read more
source§

impl Add<&Saturating<i8>> for Saturating<i8>

§

type Output = <Saturating<i8> as Add<Saturating<i8>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: &Saturating<i8> ) -> <Saturating<i8> as Add<Saturating<i8>>>::Output

执行 + 操作。 Read more
source§

impl Add<&Saturating<isize>> for &Saturating<isize>

§

type Output = <Saturating<isize> as Add<Saturating<isize>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: &Saturating<isize> ) -> <Saturating<isize> as Add<Saturating<isize>>>::Output

执行 + 操作。 Read more
source§

impl Add<&Saturating<isize>> for Saturating<isize>

§

type Output = <Saturating<isize> as Add<Saturating<isize>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: &Saturating<isize> ) -> <Saturating<isize> as Add<Saturating<isize>>>::Output

执行 + 操作。 Read more
source§

impl Add<&Saturating<u128>> for &Saturating<u128>

§

type Output = <Saturating<u128> as Add<Saturating<u128>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: &Saturating<u128> ) -> <Saturating<u128> as Add<Saturating<u128>>>::Output

执行 + 操作。 Read more
source§

impl Add<&Saturating<u128>> for Saturating<u128>

§

type Output = <Saturating<u128> as Add<Saturating<u128>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: &Saturating<u128> ) -> <Saturating<u128> as Add<Saturating<u128>>>::Output

执行 + 操作。 Read more
source§

impl Add<&Saturating<u16>> for &Saturating<u16>

§

type Output = <Saturating<u16> as Add<Saturating<u16>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: &Saturating<u16> ) -> <Saturating<u16> as Add<Saturating<u16>>>::Output

执行 + 操作。 Read more
source§

impl Add<&Saturating<u16>> for Saturating<u16>

§

type Output = <Saturating<u16> as Add<Saturating<u16>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: &Saturating<u16> ) -> <Saturating<u16> as Add<Saturating<u16>>>::Output

执行 + 操作。 Read more
source§

impl Add<&Saturating<u32>> for &Saturating<u32>

§

type Output = <Saturating<u32> as Add<Saturating<u32>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: &Saturating<u32> ) -> <Saturating<u32> as Add<Saturating<u32>>>::Output

执行 + 操作。 Read more
source§

impl Add<&Saturating<u32>> for Saturating<u32>

§

type Output = <Saturating<u32> as Add<Saturating<u32>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: &Saturating<u32> ) -> <Saturating<u32> as Add<Saturating<u32>>>::Output

执行 + 操作。 Read more
source§

impl Add<&Saturating<u64>> for &Saturating<u64>

§

type Output = <Saturating<u64> as Add<Saturating<u64>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: &Saturating<u64> ) -> <Saturating<u64> as Add<Saturating<u64>>>::Output

执行 + 操作。 Read more
source§

impl Add<&Saturating<u64>> for Saturating<u64>

§

type Output = <Saturating<u64> as Add<Saturating<u64>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: &Saturating<u64> ) -> <Saturating<u64> as Add<Saturating<u64>>>::Output

执行 + 操作。 Read more
source§

impl Add<&Saturating<u8>> for &Saturating<u8>

§

type Output = <Saturating<u8> as Add<Saturating<u8>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: &Saturating<u8> ) -> <Saturating<u8> as Add<Saturating<u8>>>::Output

执行 + 操作。 Read more
source§

impl Add<&Saturating<u8>> for Saturating<u8>

§

type Output = <Saturating<u8> as Add<Saturating<u8>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: &Saturating<u8> ) -> <Saturating<u8> as Add<Saturating<u8>>>::Output

执行 + 操作。 Read more
source§

impl Add<&Saturating<usize>> for &Saturating<usize>

§

type Output = <Saturating<usize> as Add<Saturating<usize>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: &Saturating<usize> ) -> <Saturating<usize> as Add<Saturating<usize>>>::Output

执行 + 操作。 Read more
source§

impl Add<&Saturating<usize>> for Saturating<usize>

§

type Output = <Saturating<usize> as Add<Saturating<usize>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: &Saturating<usize> ) -> <Saturating<usize> as Add<Saturating<usize>>>::Output

执行 + 操作。 Read more
source§

impl<'a> Add<Saturating<i128>> for &'a Saturating<i128>

§

type Output = <Saturating<i128> as Add<Saturating<i128>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: Saturating<i128> ) -> <Saturating<i128> as Add<Saturating<i128>>>::Output

执行 + 操作。 Read more
source§

impl Add<Saturating<i128>> for Saturating<i128>

§

type Output = Saturating<i128>

应用 + 运算符后的结果类型。
source§

fn add(self, other: Saturating<i128>) -> Saturating<i128>

执行 + 操作。 Read more
source§

impl<'a> Add<Saturating<i16>> for &'a Saturating<i16>

§

type Output = <Saturating<i16> as Add<Saturating<i16>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: Saturating<i16> ) -> <Saturating<i16> as Add<Saturating<i16>>>::Output

执行 + 操作。 Read more
source§

impl Add<Saturating<i16>> for Saturating<i16>

§

type Output = Saturating<i16>

应用 + 运算符后的结果类型。
source§

fn add(self, other: Saturating<i16>) -> Saturating<i16>

执行 + 操作。 Read more
source§

impl<'a> Add<Saturating<i32>> for &'a Saturating<i32>

§

type Output = <Saturating<i32> as Add<Saturating<i32>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: Saturating<i32> ) -> <Saturating<i32> as Add<Saturating<i32>>>::Output

执行 + 操作。 Read more
source§

impl Add<Saturating<i32>> for Saturating<i32>

§

type Output = Saturating<i32>

应用 + 运算符后的结果类型。
source§

fn add(self, other: Saturating<i32>) -> Saturating<i32>

执行 + 操作。 Read more
source§

impl<'a> Add<Saturating<i64>> for &'a Saturating<i64>

§

type Output = <Saturating<i64> as Add<Saturating<i64>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: Saturating<i64> ) -> <Saturating<i64> as Add<Saturating<i64>>>::Output

执行 + 操作。 Read more
source§

impl Add<Saturating<i64>> for Saturating<i64>

§

type Output = Saturating<i64>

应用 + 运算符后的结果类型。
source§

fn add(self, other: Saturating<i64>) -> Saturating<i64>

执行 + 操作。 Read more
source§

impl<'a> Add<Saturating<i8>> for &'a Saturating<i8>

§

type Output = <Saturating<i8> as Add<Saturating<i8>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: Saturating<i8> ) -> <Saturating<i8> as Add<Saturating<i8>>>::Output

执行 + 操作。 Read more
source§

impl Add<Saturating<i8>> for Saturating<i8>

§

type Output = Saturating<i8>

应用 + 运算符后的结果类型。
source§

fn add(self, other: Saturating<i8>) -> Saturating<i8>

执行 + 操作。 Read more
source§

impl<'a> Add<Saturating<isize>> for &'a Saturating<isize>

§

type Output = <Saturating<isize> as Add<Saturating<isize>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: Saturating<isize> ) -> <Saturating<isize> as Add<Saturating<isize>>>::Output

执行 + 操作。 Read more
source§

impl Add<Saturating<isize>> for Saturating<isize>

§

type Output = Saturating<isize>

应用 + 运算符后的结果类型。
source§

fn add(self, other: Saturating<isize>) -> Saturating<isize>

执行 + 操作。 Read more
source§

impl<'a> Add<Saturating<u128>> for &'a Saturating<u128>

§

type Output = <Saturating<u128> as Add<Saturating<u128>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: Saturating<u128> ) -> <Saturating<u128> as Add<Saturating<u128>>>::Output

执行 + 操作。 Read more
source§

impl Add<Saturating<u128>> for Saturating<u128>

§

type Output = Saturating<u128>

应用 + 运算符后的结果类型。
source§

fn add(self, other: Saturating<u128>) -> Saturating<u128>

执行 + 操作。 Read more
source§

impl<'a> Add<Saturating<u16>> for &'a Saturating<u16>

§

type Output = <Saturating<u16> as Add<Saturating<u16>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: Saturating<u16> ) -> <Saturating<u16> as Add<Saturating<u16>>>::Output

执行 + 操作。 Read more
source§

impl Add<Saturating<u16>> for Saturating<u16>

§

type Output = Saturating<u16>

应用 + 运算符后的结果类型。
source§

fn add(self, other: Saturating<u16>) -> Saturating<u16>

执行 + 操作。 Read more
source§

impl<'a> Add<Saturating<u32>> for &'a Saturating<u32>

§

type Output = <Saturating<u32> as Add<Saturating<u32>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: Saturating<u32> ) -> <Saturating<u32> as Add<Saturating<u32>>>::Output

执行 + 操作。 Read more
source§

impl Add<Saturating<u32>> for Saturating<u32>

§

type Output = Saturating<u32>

应用 + 运算符后的结果类型。
source§

fn add(self, other: Saturating<u32>) -> Saturating<u32>

执行 + 操作。 Read more
source§

impl<'a> Add<Saturating<u64>> for &'a Saturating<u64>

§

type Output = <Saturating<u64> as Add<Saturating<u64>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: Saturating<u64> ) -> <Saturating<u64> as Add<Saturating<u64>>>::Output

执行 + 操作。 Read more
source§

impl Add<Saturating<u64>> for Saturating<u64>

§

type Output = Saturating<u64>

应用 + 运算符后的结果类型。
source§

fn add(self, other: Saturating<u64>) -> Saturating<u64>

执行 + 操作。 Read more
source§

impl<'a> Add<Saturating<u8>> for &'a Saturating<u8>

§

type Output = <Saturating<u8> as Add<Saturating<u8>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: Saturating<u8> ) -> <Saturating<u8> as Add<Saturating<u8>>>::Output

执行 + 操作。 Read more
source§

impl Add<Saturating<u8>> for Saturating<u8>

§

type Output = Saturating<u8>

应用 + 运算符后的结果类型。
source§

fn add(self, other: Saturating<u8>) -> Saturating<u8>

执行 + 操作。 Read more
source§

impl<'a> Add<Saturating<usize>> for &'a Saturating<usize>

§

type Output = <Saturating<usize> as Add<Saturating<usize>>>::Output

应用 + 运算符后的结果类型。
source§

fn add( self, other: Saturating<usize> ) -> <Saturating<usize> as Add<Saturating<usize>>>::Output

执行 + 操作。 Read more
source§

impl Add<Saturating<usize>> for Saturating<usize>

§

type Output = Saturating<usize>

应用 + 运算符后的结果类型。
source§

fn add(self, other: Saturating<usize>) -> Saturating<usize>

执行 + 操作。 Read more
1.22.0 · source§

impl AddAssign<&Saturating<i128>> for Saturating<i128>

source§

fn add_assign(&mut self, other: &Saturating<i128>)

执行 += 操作。 Read more
1.22.0 · source§

impl AddAssign<&Saturating<i16>> for Saturating<i16>

source§

fn add_assign(&mut self, other: &Saturating<i16>)

执行 += 操作。 Read more
1.22.0 · source§

impl AddAssign<&Saturating<i32>> for Saturating<i32>

source§

fn add_assign(&mut self, other: &Saturating<i32>)

执行 += 操作。 Read more
1.22.0 · source§

impl AddAssign<&Saturating<i64>> for Saturating<i64>

source§

fn add_assign(&mut self, other: &Saturating<i64>)

执行 += 操作。 Read more
1.22.0 · source§

impl AddAssign<&Saturating<i8>> for Saturating<i8>

source§

fn add_assign(&mut self, other: &Saturating<i8>)

执行 += 操作。 Read more
1.22.0 · source§

impl AddAssign<&Saturating<isize>> for Saturating<isize>

source§

fn add_assign(&mut self, other: &Saturating<isize>)

执行 += 操作。 Read more
1.22.0 · source§

impl AddAssign<&Saturating<u128>> for Saturating<u128>

source§

fn add_assign(&mut self, other: &Saturating<u128>)

执行 += 操作。 Read more
1.22.0 · source§

impl AddAssign<&Saturating<u16>> for Saturating<u16>

source§

fn add_assign(&mut self, other: &Saturating<u16>)

执行 += 操作。 Read more
1.22.0 · source§

impl AddAssign<&Saturating<u32>> for Saturating<u32>

source§

fn add_assign(&mut self, other: &Saturating<u32>)

执行 += 操作。 Read more
1.22.0 · source§

impl AddAssign<&Saturating<u64>> for Saturating<u64>

source§

fn add_assign(&mut self, other: &Saturating<u64>)

执行 += 操作。 Read more
1.22.0 · source§

impl AddAssign<&Saturating<u8>> for Saturating<u8>

source§

fn add_assign(&mut self, other: &Saturating<u8>)

执行 += 操作。 Read more
1.22.0 · source§

impl AddAssign<&Saturating<usize>> for Saturating<usize>

source§

fn add_assign(&mut self, other: &Saturating<usize>)

执行 += 操作。 Read more
1.22.0 · source§

impl AddAssign<&i128> for Saturating<i128>

source§

fn add_assign(&mut self, other: &i128)

执行 += 操作。 Read more
1.22.0 · source§

impl AddAssign<&i16> for Saturating<i16>

source§

fn add_assign(&mut self, other: &i16)

执行 += 操作。 Read more
1.22.0 · source§

impl AddAssign<&i32> for Saturating<i32>

source§

fn add_assign(&mut self, other: &i32)

执行 += 操作。 Read more
1.22.0 · source§

impl AddAssign<&i64> for Saturating<i64>

source§

fn add_assign(&mut self, other: &i64)

执行 += 操作。 Read more
1.22.0 · source§

impl AddAssign<&i8> for Saturating<i8>

source§

fn add_assign(&mut self, other: &i8)

执行 += 操作。 Read more
1.22.0 · source§

impl AddAssign<&isize> for Saturating<isize>

source§

fn add_assign(&mut self, other: &isize)

执行 += 操作。 Read more
1.22.0 · source§

impl AddAssign<&u128> for Saturating<u128>

source§

fn add_assign(&mut self, other: &u128)

执行 += 操作。 Read more
1.22.0 · source§

impl AddAssign<&u16> for Saturating<u16>

source§

fn add_assign(&mut self, other: &u16)

执行 += 操作。 Read more
1.22.0 · source§

impl AddAssign<&u32> for Saturating<u32>

source§

fn add_assign(&mut self, other: &u32)

执行 += 操作。 Read more
1.22.0 · source§

impl AddAssign<&u64> for Saturating<u64>

source§

fn add_assign(&mut self, other: &u64)

执行 += 操作。 Read more
1.22.0 · source§

impl AddAssign<&u8> for Saturating<u8>

source§

fn add_assign(&mut self, other: &u8)

执行 += 操作。 Read more
1.22.0 · source§

impl AddAssign<&usize> for Saturating<usize>

source§

fn add_assign(&mut self, other: &usize)

执行 += 操作。 Read more
source§

impl AddAssign<Saturating<i128>> for Saturating<i128>

source§

fn add_assign(&mut self, other: Saturating<i128>)

执行 += 操作。 Read more
source§

impl AddAssign<Saturating<i16>> for Saturating<i16>

source§

fn add_assign(&mut self, other: Saturating<i16>)

执行 += 操作。 Read more
source§

impl AddAssign<Saturating<i32>> for Saturating<i32>

source§

fn add_assign(&mut self, other: Saturating<i32>)

执行 += 操作。 Read more
source§

impl AddAssign<Saturating<i64>> for Saturating<i64>

source§

fn add_assign(&mut self, other: Saturating<i64>)

执行 += 操作。 Read more
source§

impl AddAssign<Saturating<i8>> for Saturating<i8>

source§

fn add_assign(&mut self, other: Saturating<i8>)

执行 += 操作。 Read more
source§

impl AddAssign<Saturating<isize>> for Saturating<isize>

source§

fn add_assign(&mut self, other: Saturating<isize>)

执行 += 操作。 Read more
source§

impl AddAssign<Saturating<u128>> for Saturating<u128>

source§

fn add_assign(&mut self, other: Saturating<u128>)

执行 += 操作。 Read more
source§

impl AddAssign<Saturating<u16>> for Saturating<u16>

source§

fn add_assign(&mut self, other: Saturating<u16>)

执行 += 操作。 Read more
source§

impl AddAssign<Saturating<u32>> for Saturating<u32>

source§

fn add_assign(&mut self, other: Saturating<u32>)

执行 += 操作。 Read more
source§

impl AddAssign<Saturating<u64>> for Saturating<u64>

source§

fn add_assign(&mut self, other: Saturating<u64>)

执行 += 操作。 Read more
source§

impl AddAssign<Saturating<u8>> for Saturating<u8>

source§

fn add_assign(&mut self, other: Saturating<u8>)

执行 += 操作。 Read more
source§

impl AddAssign<Saturating<usize>> for Saturating<usize>

source§

fn add_assign(&mut self, other: Saturating<usize>)

执行 += 操作。 Read more
source§

impl AddAssign<i128> for Saturating<i128>

source§

fn add_assign(&mut self, other: i128)

执行 += 操作。 Read more
source§

impl AddAssign<i16> for Saturating<i16>

source§

fn add_assign(&mut self, other: i16)

执行 += 操作。 Read more
source§

impl AddAssign<i32> for Saturating<i32>

source§

fn add_assign(&mut self, other: i32)

执行 += 操作。 Read more
source§

impl AddAssign<i64> for Saturating<i64>

source§

fn add_assign(&mut self, other: i64)

执行 += 操作。 Read more
source§

impl AddAssign<i8> for Saturating<i8>

source§

fn add_assign(&mut self, other: i8)

执行 += 操作。 Read more
source§

impl AddAssign<isize> for Saturating<isize>

source§

fn add_assign(&mut self, other: isize)

执行 += 操作。 Read more
source§

impl AddAssign<u128> for Saturating<u128>

source§

fn add_assign(&mut self, other: u128)

执行 += 操作。 Read more
source§

impl AddAssign<u16> for Saturating<u16>

source§

fn add_assign(&mut self, other: u16)

执行 += 操作。 Read more
source§

impl AddAssign<u32> for Saturating<u32>

source§

fn add_assign(&mut self, other: u32)

执行 += 操作。 Read more
source§

impl AddAssign<u64> for Saturating<u64>

source§

fn add_assign(&mut self, other: u64)

执行 += 操作。 Read more
source§

impl AddAssign<u8> for Saturating<u8>

source§

fn add_assign(&mut self, other: u8)

执行 += 操作。 Read more
source§

impl AddAssign<usize> for Saturating<usize>

source§

fn add_assign(&mut self, other: usize)

执行 += 操作。 Read more
source§

impl<T> Binary for Saturating<T>where T: Binary,

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

使用给定的格式化程序格式化该值。
source§

impl BitAnd<&Saturating<i128>> for &Saturating<i128>

§

type Output = <Saturating<i128> as BitAnd<Saturating<i128>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: &Saturating<i128> ) -> <Saturating<i128> as BitAnd<Saturating<i128>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<&Saturating<i128>> for Saturating<i128>

§

type Output = <Saturating<i128> as BitAnd<Saturating<i128>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: &Saturating<i128> ) -> <Saturating<i128> as BitAnd<Saturating<i128>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<&Saturating<i16>> for &Saturating<i16>

§

type Output = <Saturating<i16> as BitAnd<Saturating<i16>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: &Saturating<i16> ) -> <Saturating<i16> as BitAnd<Saturating<i16>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<&Saturating<i16>> for Saturating<i16>

§

type Output = <Saturating<i16> as BitAnd<Saturating<i16>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: &Saturating<i16> ) -> <Saturating<i16> as BitAnd<Saturating<i16>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<&Saturating<i32>> for &Saturating<i32>

§

type Output = <Saturating<i32> as BitAnd<Saturating<i32>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: &Saturating<i32> ) -> <Saturating<i32> as BitAnd<Saturating<i32>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<&Saturating<i32>> for Saturating<i32>

§

type Output = <Saturating<i32> as BitAnd<Saturating<i32>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: &Saturating<i32> ) -> <Saturating<i32> as BitAnd<Saturating<i32>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<&Saturating<i64>> for &Saturating<i64>

§

type Output = <Saturating<i64> as BitAnd<Saturating<i64>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: &Saturating<i64> ) -> <Saturating<i64> as BitAnd<Saturating<i64>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<&Saturating<i64>> for Saturating<i64>

§

type Output = <Saturating<i64> as BitAnd<Saturating<i64>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: &Saturating<i64> ) -> <Saturating<i64> as BitAnd<Saturating<i64>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<&Saturating<i8>> for &Saturating<i8>

§

type Output = <Saturating<i8> as BitAnd<Saturating<i8>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: &Saturating<i8> ) -> <Saturating<i8> as BitAnd<Saturating<i8>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<&Saturating<i8>> for Saturating<i8>

§

type Output = <Saturating<i8> as BitAnd<Saturating<i8>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: &Saturating<i8> ) -> <Saturating<i8> as BitAnd<Saturating<i8>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<&Saturating<isize>> for &Saturating<isize>

§

type Output = <Saturating<isize> as BitAnd<Saturating<isize>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: &Saturating<isize> ) -> <Saturating<isize> as BitAnd<Saturating<isize>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<&Saturating<isize>> for Saturating<isize>

§

type Output = <Saturating<isize> as BitAnd<Saturating<isize>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: &Saturating<isize> ) -> <Saturating<isize> as BitAnd<Saturating<isize>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<&Saturating<u128>> for &Saturating<u128>

§

type Output = <Saturating<u128> as BitAnd<Saturating<u128>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: &Saturating<u128> ) -> <Saturating<u128> as BitAnd<Saturating<u128>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<&Saturating<u128>> for Saturating<u128>

§

type Output = <Saturating<u128> as BitAnd<Saturating<u128>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: &Saturating<u128> ) -> <Saturating<u128> as BitAnd<Saturating<u128>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<&Saturating<u16>> for &Saturating<u16>

§

type Output = <Saturating<u16> as BitAnd<Saturating<u16>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: &Saturating<u16> ) -> <Saturating<u16> as BitAnd<Saturating<u16>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<&Saturating<u16>> for Saturating<u16>

§

type Output = <Saturating<u16> as BitAnd<Saturating<u16>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: &Saturating<u16> ) -> <Saturating<u16> as BitAnd<Saturating<u16>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<&Saturating<u32>> for &Saturating<u32>

§

type Output = <Saturating<u32> as BitAnd<Saturating<u32>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: &Saturating<u32> ) -> <Saturating<u32> as BitAnd<Saturating<u32>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<&Saturating<u32>> for Saturating<u32>

§

type Output = <Saturating<u32> as BitAnd<Saturating<u32>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: &Saturating<u32> ) -> <Saturating<u32> as BitAnd<Saturating<u32>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<&Saturating<u64>> for &Saturating<u64>

§

type Output = <Saturating<u64> as BitAnd<Saturating<u64>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: &Saturating<u64> ) -> <Saturating<u64> as BitAnd<Saturating<u64>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<&Saturating<u64>> for Saturating<u64>

§

type Output = <Saturating<u64> as BitAnd<Saturating<u64>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: &Saturating<u64> ) -> <Saturating<u64> as BitAnd<Saturating<u64>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<&Saturating<u8>> for &Saturating<u8>

§

type Output = <Saturating<u8> as BitAnd<Saturating<u8>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: &Saturating<u8> ) -> <Saturating<u8> as BitAnd<Saturating<u8>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<&Saturating<u8>> for Saturating<u8>

§

type Output = <Saturating<u8> as BitAnd<Saturating<u8>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: &Saturating<u8> ) -> <Saturating<u8> as BitAnd<Saturating<u8>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<&Saturating<usize>> for &Saturating<usize>

§

type Output = <Saturating<usize> as BitAnd<Saturating<usize>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: &Saturating<usize> ) -> <Saturating<usize> as BitAnd<Saturating<usize>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<&Saturating<usize>> for Saturating<usize>

§

type Output = <Saturating<usize> as BitAnd<Saturating<usize>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: &Saturating<usize> ) -> <Saturating<usize> as BitAnd<Saturating<usize>>>::Output

执行 & 操作。 Read more
source§

impl<'a> BitAnd<Saturating<i128>> for &'a Saturating<i128>

§

type Output = <Saturating<i128> as BitAnd<Saturating<i128>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: Saturating<i128> ) -> <Saturating<i128> as BitAnd<Saturating<i128>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<Saturating<i128>> for Saturating<i128>

§

type Output = Saturating<i128>

应用 & 运算符后的结果类型。
source§

fn bitand(self, other: Saturating<i128>) -> Saturating<i128>

执行 & 操作。 Read more
source§

impl<'a> BitAnd<Saturating<i16>> for &'a Saturating<i16>

§

type Output = <Saturating<i16> as BitAnd<Saturating<i16>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: Saturating<i16> ) -> <Saturating<i16> as BitAnd<Saturating<i16>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<Saturating<i16>> for Saturating<i16>

§

type Output = Saturating<i16>

应用 & 运算符后的结果类型。
source§

fn bitand(self, other: Saturating<i16>) -> Saturating<i16>

执行 & 操作。 Read more
source§

impl<'a> BitAnd<Saturating<i32>> for &'a Saturating<i32>

§

type Output = <Saturating<i32> as BitAnd<Saturating<i32>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: Saturating<i32> ) -> <Saturating<i32> as BitAnd<Saturating<i32>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<Saturating<i32>> for Saturating<i32>

§

type Output = Saturating<i32>

应用 & 运算符后的结果类型。
source§

fn bitand(self, other: Saturating<i32>) -> Saturating<i32>

执行 & 操作。 Read more
source§

impl<'a> BitAnd<Saturating<i64>> for &'a Saturating<i64>

§

type Output = <Saturating<i64> as BitAnd<Saturating<i64>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: Saturating<i64> ) -> <Saturating<i64> as BitAnd<Saturating<i64>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<Saturating<i64>> for Saturating<i64>

§

type Output = Saturating<i64>

应用 & 运算符后的结果类型。
source§

fn bitand(self, other: Saturating<i64>) -> Saturating<i64>

执行 & 操作。 Read more
source§

impl<'a> BitAnd<Saturating<i8>> for &'a Saturating<i8>

§

type Output = <Saturating<i8> as BitAnd<Saturating<i8>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: Saturating<i8> ) -> <Saturating<i8> as BitAnd<Saturating<i8>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<Saturating<i8>> for Saturating<i8>

§

type Output = Saturating<i8>

应用 & 运算符后的结果类型。
source§

fn bitand(self, other: Saturating<i8>) -> Saturating<i8>

执行 & 操作。 Read more
source§

impl<'a> BitAnd<Saturating<isize>> for &'a Saturating<isize>

§

type Output = <Saturating<isize> as BitAnd<Saturating<isize>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: Saturating<isize> ) -> <Saturating<isize> as BitAnd<Saturating<isize>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<Saturating<isize>> for Saturating<isize>

§

type Output = Saturating<isize>

应用 & 运算符后的结果类型。
source§

fn bitand(self, other: Saturating<isize>) -> Saturating<isize>

执行 & 操作。 Read more
source§

impl<'a> BitAnd<Saturating<u128>> for &'a Saturating<u128>

§

type Output = <Saturating<u128> as BitAnd<Saturating<u128>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: Saturating<u128> ) -> <Saturating<u128> as BitAnd<Saturating<u128>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<Saturating<u128>> for Saturating<u128>

§

type Output = Saturating<u128>

应用 & 运算符后的结果类型。
source§

fn bitand(self, other: Saturating<u128>) -> Saturating<u128>

执行 & 操作。 Read more
source§

impl<'a> BitAnd<Saturating<u16>> for &'a Saturating<u16>

§

type Output = <Saturating<u16> as BitAnd<Saturating<u16>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: Saturating<u16> ) -> <Saturating<u16> as BitAnd<Saturating<u16>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<Saturating<u16>> for Saturating<u16>

§

type Output = Saturating<u16>

应用 & 运算符后的结果类型。
source§

fn bitand(self, other: Saturating<u16>) -> Saturating<u16>

执行 & 操作。 Read more
source§

impl<'a> BitAnd<Saturating<u32>> for &'a Saturating<u32>

§

type Output = <Saturating<u32> as BitAnd<Saturating<u32>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: Saturating<u32> ) -> <Saturating<u32> as BitAnd<Saturating<u32>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<Saturating<u32>> for Saturating<u32>

§

type Output = Saturating<u32>

应用 & 运算符后的结果类型。
source§

fn bitand(self, other: Saturating<u32>) -> Saturating<u32>

执行 & 操作。 Read more
source§

impl<'a> BitAnd<Saturating<u64>> for &'a Saturating<u64>

§

type Output = <Saturating<u64> as BitAnd<Saturating<u64>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: Saturating<u64> ) -> <Saturating<u64> as BitAnd<Saturating<u64>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<Saturating<u64>> for Saturating<u64>

§

type Output = Saturating<u64>

应用 & 运算符后的结果类型。
source§

fn bitand(self, other: Saturating<u64>) -> Saturating<u64>

执行 & 操作。 Read more
source§

impl<'a> BitAnd<Saturating<u8>> for &'a Saturating<u8>

§

type Output = <Saturating<u8> as BitAnd<Saturating<u8>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: Saturating<u8> ) -> <Saturating<u8> as BitAnd<Saturating<u8>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<Saturating<u8>> for Saturating<u8>

§

type Output = Saturating<u8>

应用 & 运算符后的结果类型。
source§

fn bitand(self, other: Saturating<u8>) -> Saturating<u8>

执行 & 操作。 Read more
source§

impl<'a> BitAnd<Saturating<usize>> for &'a Saturating<usize>

§

type Output = <Saturating<usize> as BitAnd<Saturating<usize>>>::Output

应用 & 运算符后的结果类型。
source§

fn bitand( self, other: Saturating<usize> ) -> <Saturating<usize> as BitAnd<Saturating<usize>>>::Output

执行 & 操作。 Read more
source§

impl BitAnd<Saturating<usize>> for Saturating<usize>

§

type Output = Saturating<usize>

应用 & 运算符后的结果类型。
source§

fn bitand(self, other: Saturating<usize>) -> Saturating<usize>

执行 & 操作。 Read more
1.22.0 · source§

impl BitAndAssign<&Saturating<i128>> for Saturating<i128>

source§

fn bitand_assign(&mut self, other: &Saturating<i128>)

执行 &= 操作。 Read more
1.22.0 · source§

impl BitAndAssign<&Saturating<i16>> for Saturating<i16>

source§

fn bitand_assign(&mut self, other: &Saturating<i16>)

执行 &= 操作。 Read more
1.22.0 · source§

impl BitAndAssign<&Saturating<i32>> for Saturating<i32>

source§

fn bitand_assign(&mut self, other: &Saturating<i32>)

执行 &= 操作。 Read more
1.22.0 · source§

impl BitAndAssign<&Saturating<i64>> for Saturating<i64>

source§

fn bitand_assign(&mut self, other: &Saturating<i64>)

执行 &= 操作。 Read more
1.22.0 · source§

impl BitAndAssign<&Saturating<i8>> for Saturating<i8>

source§

fn bitand_assign(&mut self, other: &Saturating<i8>)

执行 &= 操作。 Read more
1.22.0 · source§

impl BitAndAssign<&Saturating<isize>> for Saturating<isize>

source§

fn bitand_assign(&mut self, other: &Saturating<isize>)

执行 &= 操作。 Read more
1.22.0 · source§

impl BitAndAssign<&Saturating<u128>> for Saturating<u128>

source§

fn bitand_assign(&mut self, other: &Saturating<u128>)

执行 &= 操作。 Read more
1.22.0 · source§

impl BitAndAssign<&Saturating<u16>> for Saturating<u16>

source§

fn bitand_assign(&mut self, other: &Saturating<u16>)

执行 &= 操作。 Read more
1.22.0 · source§

impl BitAndAssign<&Saturating<u32>> for Saturating<u32>

source§

fn bitand_assign(&mut self, other: &Saturating<u32>)

执行 &= 操作。 Read more
1.22.0 · source§

impl BitAndAssign<&Saturating<u64>> for Saturating<u64>

source§

fn bitand_assign(&mut self, other: &Saturating<u64>)

执行 &= 操作。 Read more
1.22.0 · source§

impl BitAndAssign<&Saturating<u8>> for Saturating<u8>

source§

fn bitand_assign(&mut self, other: &Saturating<u8>)

执行 &= 操作。 Read more
1.22.0 · source§

impl BitAndAssign<&Saturating<usize>> for Saturating<usize>

source§

fn bitand_assign(&mut self, other: &Saturating<usize>)

执行 &= 操作。 Read more
1.22.0 · source§

impl BitAndAssign<&i128> for Saturating<i128>

source§

fn bitand_assign(&mut self, other: &i128)

执行 &= 操作。 Read more
1.22.0 · source§

impl BitAndAssign<&i16> for Saturating<i16>

source§

fn bitand_assign(&mut self, other: &i16)

执行 &= 操作。 Read more
1.22.0 · source§

impl BitAndAssign<&i32> for Saturating<i32>

source§

fn bitand_assign(&mut self, other: &i32)

执行 &= 操作。 Read more
1.22.0 · source§

impl BitAndAssign<&i64> for Saturating<i64>

source§

fn bitand_assign(&mut self, other: &i64)

执行 &= 操作。 Read more
1.22.0 · source§

impl BitAndAssign<&i8> for Saturating<i8>

source§

fn bitand_assign(&mut self, other: &i8)

执行 &= 操作。 Read more
1.22.0 · source§

impl BitAndAssign<&isize> for Saturating<isize>

source§

fn bitand_assign(&mut self, other: &isize)

执行 &= 操作。 Read more
1.22.0 · source§

impl BitAndAssign<&u128> for Saturating<u128>

source§

fn bitand_assign(&mut self, other: &u128)

执行 &= 操作。 Read more
1.22.0 · source§

impl BitAndAssign<&u16> for Saturating<u16>

source§

fn bitand_assign(&mut self, other: &u16)

执行 &= 操作。 Read more
1.22.0 · source§

impl BitAndAssign<&u32> for Saturating<u32>

source§

fn bitand_assign(&mut self, other: &u32)

执行 &= 操作。 Read more
1.22.0 · source§

impl BitAndAssign<&u64> for Saturating<u64>

source§

fn bitand_assign(&mut self, other: &u64)

执行 &= 操作。 Read more
1.22.0 · source§

impl BitAndAssign<&u8> for Saturating<u8>

source§

fn bitand_assign(&mut self, other: &u8)

执行 &= 操作。 Read more
1.22.0 · source§

impl BitAndAssign<&usize> for Saturating<usize>

source§

fn bitand_assign(&mut self, other: &usize)

执行 &= 操作。 Read more
source§

impl BitAndAssign<Saturating<i128>> for Saturating<i128>

source§

fn bitand_assign(&mut self, other: Saturating<i128>)

执行 &= 操作。 Read more
source§

impl BitAndAssign<Saturating<i16>> for Saturating<i16>

source§

fn bitand_assign(&mut self, other: Saturating<i16>)

执行 &= 操作。 Read more
source§

impl BitAndAssign<Saturating<i32>> for Saturating<i32>

source§

fn bitand_assign(&mut self, other: Saturating<i32>)

执行 &= 操作。 Read more
source§

impl BitAndAssign<Saturating<i64>> for Saturating<i64>

source§

fn bitand_assign(&mut self, other: Saturating<i64>)

执行 &= 操作。 Read more
source§

impl BitAndAssign<Saturating<i8>> for Saturating<i8>

source§

fn bitand_assign(&mut self, other: Saturating<i8>)

执行 &= 操作。 Read more
source§

impl BitAndAssign<Saturating<isize>> for Saturating<isize>

source§

fn bitand_assign(&mut self, other: Saturating<isize>)

执行 &= 操作。 Read more
source§

impl BitAndAssign<Saturating<u128>> for Saturating<u128>

source§

fn bitand_assign(&mut self, other: Saturating<u128>)

执行 &= 操作。 Read more
source§

impl BitAndAssign<Saturating<u16>> for Saturating<u16>

source§

fn bitand_assign(&mut self, other: Saturating<u16>)

执行 &= 操作。 Read more
source§

impl BitAndAssign<Saturating<u32>> for Saturating<u32>

source§

fn bitand_assign(&mut self, other: Saturating<u32>)

执行 &= 操作。 Read more
source§

impl BitAndAssign<Saturating<u64>> for Saturating<u64>

source§

fn bitand_assign(&mut self, other: Saturating<u64>)

执行 &= 操作。 Read more
source§

impl BitAndAssign<Saturating<u8>> for Saturating<u8>

source§

fn bitand_assign(&mut self, other: Saturating<u8>)

执行 &= 操作。 Read more
source§

impl BitAndAssign<Saturating<usize>> for Saturating<usize>

source§

fn bitand_assign(&mut self, other: Saturating<usize>)

执行 &= 操作。 Read more
source§

impl BitAndAssign<i128> for Saturating<i128>

source§

fn bitand_assign(&mut self, other: i128)

执行 &= 操作。 Read more
source§

impl BitAndAssign<i16> for Saturating<i16>

source§

fn bitand_assign(&mut self, other: i16)

执行 &= 操作。 Read more
source§

impl BitAndAssign<i32> for Saturating<i32>

source§

fn bitand_assign(&mut self, other: i32)

执行 &= 操作。 Read more
source§

impl BitAndAssign<i64> for Saturating<i64>

source§

fn bitand_assign(&mut self, other: i64)

执行 &= 操作。 Read more
source§

impl BitAndAssign<i8> for Saturating<i8>

source§

fn bitand_assign(&mut self, other: i8)

执行 &= 操作。 Read more
source§

impl BitAndAssign<isize> for Saturating<isize>

source§

fn bitand_assign(&mut self, other: isize)

执行 &= 操作。 Read more
source§

impl BitAndAssign<u128> for Saturating<u128>

source§

fn bitand_assign(&mut self, other: u128)

执行 &= 操作。 Read more
source§

impl BitAndAssign<u16> for Saturating<u16>

source§

fn bitand_assign(&mut self, other: u16)

执行 &= 操作。 Read more
source§

impl BitAndAssign<u32> for Saturating<u32>

source§

fn bitand_assign(&mut self, other: u32)

执行 &= 操作。 Read more
source§

impl BitAndAssign<u64> for Saturating<u64>

source§

fn bitand_assign(&mut self, other: u64)

执行 &= 操作。 Read more
source§

impl BitAndAssign<u8> for Saturating<u8>

source§

fn bitand_assign(&mut self, other: u8)

执行 &= 操作。 Read more
source§

impl BitAndAssign<usize> for Saturating<usize>

source§

fn bitand_assign(&mut self, other: usize)

执行 &= 操作。 Read more
source§

impl BitOr<&Saturating<i128>> for &Saturating<i128>

§

type Output = <Saturating<i128> as BitOr<Saturating<i128>>>::Output

应用 | 运算符后的结果类型。
source§

fn bitor( self, other: &Saturating<i128> ) -> <Saturating<i128> as BitOr<Saturating<i128>>>::Output

执行 | 操作。 Read more
source§

impl BitOr<&Saturating<i128>> for Saturating<i128>

§

type Output = <Saturating<i128> as BitOr<Saturating<i128>>>::Output

应用 | 运算符后的结果类型。
source§

fn bitor( self, other: &Saturating<i128> ) -> <Saturating<i128> as BitOr<Saturating<i128>>>::Output

执行 | 操作。 Read more
source§

impl BitOr<&Saturating<i16>> for &Saturating<i16>

§

type Output = <Saturating<i16> as BitOr<Saturating<i16>>>::Output

应用 | 运算符后的结果类型。
source§

fn bitor( self, other: &Saturating<i16> ) -> <Saturating<i16> as BitOr<Saturating<i16>>>::Output

执行 | 操作。 Read more
source§

impl BitOr<&Saturating<i16>> for Saturating<i16>

§

type Output = <Saturating<i16> as BitOr<Saturating<i16>>>::Output

应用 | 运算符后的结果类型。
source§

fn bitor( self, other: &Saturating<i16> ) -> <Saturating<i16> as BitOr<Saturating<i16>>>::Output

执行 | 操作。 Read more
source§

impl BitOr<&Saturating<i32>> for &Saturating<i32>

§

type Output = <Saturating<i32> as BitOr<Saturating<i32>>>::Output

应用 | 运算符后的结果类型。
source§

fn bitor( self, other: &Saturating<i32> ) -> <Saturating<i32> as BitOr<Saturating<i32>>>::Output

执行 | 操作。 Read more
source§

impl BitOr<&Saturating<i32>> for Saturating<i32>

§

type Output = <Saturating<i32> as BitOr<Saturating<i32>>>::Output

应用 | 运算符后的结果类型。
source§

fn bitor( self, other: &Saturating<i32> ) -> <Saturating<i32> as BitOr<Saturating<i32>>>::Output

执行 | 操作。 Read more
source§

impl BitOr<&Saturating<i64>> for &Saturating<i64>

§

type Output = <Saturating<i64> as BitOr<Saturating<i64>>>::Output

应用 | 运算符后的结果类型。
source§

fn bitor( self, other: &Saturating<i64> ) -> <Saturating<i64> as BitOr<Saturating<i64>>>::Output

执行 | 操作。 Read more
source§

impl BitOr<&Saturating<i64>> for Saturating<i64>

§

type Output = <Saturating<i64> as BitOr<Saturating<i64>>>::Output

应用 | 运算符后的结果类型。
source§

fn bitor( self, other: &Saturating<i64> ) -> <Saturating<i64> as BitOr<Saturating<i64>>>::Output

执行 | 操作。 Read more
source§

impl BitOr<&Saturating<i8>> for &Saturating<i8>

§

type Output = <Saturating<i8> as BitOr<Saturating<i8>>>::Output

应用 | 运算符后的结果类型。
source§

fn bitor( self, other: &Saturating<i8> ) -> <Saturating<i8> as BitOr<Saturating<i8>>>::Output

执行 | 操作。 Read more
source§

impl BitOr<&Saturating<i8>> for Saturating<i8>

§

type Output = <Saturating<i8> as BitOr<Saturating<i8>>>::Output

应用 | 运算符后的结果类型。
source§

fn bitor( self, other: &Saturating<i8> ) -> <Saturating<i8> as BitOr<Saturating<i8>>>::Output

执行 | 操作。 Read more
source§

impl BitOr<&Saturating<isize>> for &Saturating<isize>

§

type Output = <Saturating<isize> as BitOr<Saturating<isize>>>::Output

应用 | 运算符后的结果类型。
source§

fn bitor( self, other: &Saturating<isize> ) -> <Saturating<isize> as BitOr<Saturating<isize>>>::Output

执行 | 操作。 Read more
source§

impl BitOr<&Saturating<isize>> for Saturating<isize>

§

type Output = <Saturating<isize> as BitOr<Saturating<isize>>>::Output

应用 | 运算符后的结果类型。
source§

fn bitor( self, other: &Saturating<isize> ) -> <Saturating<isize> as BitOr<Saturating<isize>>>::Output

执行 | 操作。 Read more
source§

impl BitOr<&Saturating<u128>> for &Saturating<u128>

§

type Output = <Saturating<u128> as BitOr<Saturating<u128>>>::Output

应用 | 运算符后的结果类型。
source§

fn bitor( self, other: &Saturating<u128> ) -> <Saturating<u128> as BitOr<Saturating<u128>>>::Output

执行 | 操作。 Read more
source§

impl BitOr<&Saturating<u128>> for Saturating<u128>

§

type Output = <Saturating<u128> as BitOr<Saturating<u128>>>::Output

应用 | 运算符后的结果类型。
source§

fn bitor( self, other: &Saturating<u128> ) -> <Saturating<u128> as BitOr<Saturating<u128>>>::Output

执行 | 操作。 Read more
source§

impl BitOr<&Saturating<u16>> for &Saturating<u16>

§

type Output = <Saturating<u16> as BitOr<Saturating<u16>>>::Output

应用 | 运算符后的结果类型。
source§

fn bitor( self, other: &Saturating<u16> ) -> <Saturating<u16> as BitOr<Saturating<u16>>>::Output

执行 | 操作。 Read more
source§

impl BitOr<&Saturating<u16>> for Saturating<u16>

§

type Output = <Saturating<u16> as BitOr<Saturating<u16>>>::Output

应用 | 运算符后的结果类型。
source§

fn bitor( self, other: &Saturating<u16> ) -> <Saturating<u16> as BitOr<Saturating<u16>>>::Output

执行 | 操作。 Read more
source§

impl BitOr<&Saturating<u32>> for &Saturating<u32>

§

type Output = <Saturating<u32> as BitOr<Saturating<u32>>>::Output

应用 | 运算符后的结果类型。
source§

fn bitor( self, other: &Saturating<u32> ) -> <Saturating<u32> as BitOr<Saturating<u32>>>::Output

执行 | 操作。 Read more
source§

impl BitOr<&Saturating<u32>> for Saturating<u32>

§

type Output = <Saturating<u32> as BitOr<Saturating<u32>>>::Output

应用 | 运算符后的结果类型。
source§

fn bitor( self, other: &Saturating<u32> ) -> <Saturating<u32> as BitOr<Saturating<u32>>>::Output

执行 | 操作。 Read more
source§

impl BitOr<&Saturating<u64>> for &Saturating<u64>

§

type Output = <Saturating<u64> as BitOr<Saturating<u64>>>::Output

应用 | 运算符后的结果类型。
source§

fn bitor( self, other: &Saturating<u64> ) -> <Saturating<u64> as BitOr<Saturating<u64>>>::Output

执行 | 操作。 Read more
source§

impl BitOr<&Saturating<u64>> for Saturating<u64>

§

type Output = <Saturating<u64> as BitOr<Saturating<u64>>>::Output

应用 | 运算符后的结果类型。
source§

fn bitor( self, other: &Saturating<u64> ) -> <Saturating<u64> as BitOr<Saturating<u64>>>::Output

执行 | 操作。 Read more
source§

impl BitOr<&Saturating<u8>> for &Saturating<u8>

§

type Output = <Saturating<u8> as BitOr<Saturating<u8>>>::Output

应用 | 运算符后的结果类型。
source§

fn bitor( self, other: &Saturating<u8> ) -> <Saturating<u8> as