Trait SaturatingSubAssign

Source
pub trait SaturatingSubAssign<RHS = Self> {
    // Required method
    fn saturating_sub_assign(&mut self, other: RHS);
}
Expand description

Subtracts a number by another number in place, saturating at the numeric bounds instead of overflowing.

Required Methods§

Source

fn saturating_sub_assign(&mut self, other: RHS)

Implementations on Foreign Types§

Source§

impl SaturatingSubAssign for i8

Source§

fn saturating_sub_assign(&mut self, other: i8)

Subtracts a number by another number in place, saturating at the numeric bounds instead of overflowing.

$$ x \gets \begin{cases} x - y & \text{if} \quad m \leq x - y \leq M, \\ M & \text{if} \quad x - y > M, \\ m & \text{if} \quad x - y < m, \end{cases} $$ where $m$ is Self::MIN and $M$ is Self::MAX.

§Worst-case complexity

Constant time and additional memory.

§Examples

See here.

Source§

impl SaturatingSubAssign for i16

Source§

fn saturating_sub_assign(&mut self, other: i16)

Subtracts a number by another number in place, saturating at the numeric bounds instead of overflowing.

$$ x \gets \begin{cases} x - y & \text{if} \quad m \leq x - y \leq M, \\ M & \text{if} \quad x - y > M, \\ m & \text{if} \quad x - y < m, \end{cases} $$ where $m$ is Self::MIN and $M$ is Self::MAX.

§Worst-case complexity

Constant time and additional memory.

§Examples

See here.

Source§

impl SaturatingSubAssign for i32

Source§

fn saturating_sub_assign(&mut self, other: i32)

Subtracts a number by another number in place, saturating at the numeric bounds instead of overflowing.

$$ x \gets \begin{cases} x - y & \text{if} \quad m \leq x - y \leq M, \\ M & \text{if} \quad x - y > M, \\ m & \text{if} \quad x - y < m, \end{cases} $$ where $m$ is Self::MIN and $M$ is Self::MAX.

§Worst-case complexity

Constant time and additional memory.

§Examples

See here.

Source§

impl SaturatingSubAssign for i64

Source§

fn saturating_sub_assign(&mut self, other: i64)

Subtracts a number by another number in place, saturating at the numeric bounds instead of overflowing.

$$ x \gets \begin{cases} x - y & \text{if} \quad m \leq x - y \leq M, \\ M & \text{if} \quad x - y > M, \\ m & \text{if} \quad x - y < m, \end{cases} $$ where $m$ is Self::MIN and $M$ is Self::MAX.

§Worst-case complexity

Constant time and additional memory.

§Examples

See here.

Source§

impl SaturatingSubAssign for i128

Source§

fn saturating_sub_assign(&mut self, other: i128)

Subtracts a number by another number in place, saturating at the numeric bounds instead of overflowing.

$$ x \gets \begin{cases} x - y & \text{if} \quad m \leq x - y \leq M, \\ M & \text{if} \quad x - y > M, \\ m & \text{if} \quad x - y < m, \end{cases} $$ where $m$ is Self::MIN and $M$ is Self::MAX.

§Worst-case complexity

Constant time and additional memory.

§Examples

See here.

Source§

impl SaturatingSubAssign for isize

Source§

fn saturating_sub_assign(&mut self, other: isize)

Subtracts a number by another number in place, saturating at the numeric bounds instead of overflowing.

$$ x \gets \begin{cases} x - y & \text{if} \quad m \leq x - y \leq M, \\ M & \text{if} \quad x - y > M, \\ m & \text{if} \quad x - y < m, \end{cases} $$ where $m$ is Self::MIN and $M$ is Self::MAX.

§Worst-case complexity

Constant time and additional memory.

§Examples

See here.

Source§

impl SaturatingSubAssign for u8

Source§

fn saturating_sub_assign(&mut self, other: u8)

Subtracts a number by another number in place, saturating at the numeric bounds instead of overflowing.

$$ x \gets \begin{cases} x - y & \text{if} \quad m \leq x - y \leq M, \\ M & \text{if} \quad x - y > M, \\ m & \text{if} \quad x - y < m, \end{cases} $$ where $m$ is Self::MIN and $M$ is Self::MAX.

§Worst-case complexity

Constant time and additional memory.

§Examples

See here.

Source§

impl SaturatingSubAssign for u16

Source§

fn saturating_sub_assign(&mut self, other: u16)

Subtracts a number by another number in place, saturating at the numeric bounds instead of overflowing.

$$ x \gets \begin{cases} x - y & \text{if} \quad m \leq x - y \leq M, \\ M & \text{if} \quad x - y > M, \\ m & \text{if} \quad x - y < m, \end{cases} $$ where $m$ is Self::MIN and $M$ is Self::MAX.

§Worst-case complexity

Constant time and additional memory.

§Examples

See here.

Source§

impl SaturatingSubAssign for u32

Source§

fn saturating_sub_assign(&mut self, other: u32)

Subtracts a number by another number in place, saturating at the numeric bounds instead of overflowing.

$$ x \gets \begin{cases} x - y & \text{if} \quad m \leq x - y \leq M, \\ M & \text{if} \quad x - y > M, \\ m & \text{if} \quad x - y < m, \end{cases} $$ where $m$ is Self::MIN and $M$ is Self::MAX.

§Worst-case complexity

Constant time and additional memory.

§Examples

See here.

Source§

impl SaturatingSubAssign for u64

Source§

fn saturating_sub_assign(&mut self, other: u64)

Subtracts a number by another number in place, saturating at the numeric bounds instead of overflowing.

$$ x \gets \begin{cases} x - y & \text{if} \quad m \leq x - y \leq M, \\ M & \text{if} \quad x - y > M, \\ m & \text{if} \quad x - y < m, \end{cases} $$ where $m$ is Self::MIN and $M$ is Self::MAX.

§Worst-case complexity

Constant time and additional memory.

§Examples

See here.

Source§

impl SaturatingSubAssign for u128

Source§

fn saturating_sub_assign(&mut self, other: u128)

Subtracts a number by another number in place, saturating at the numeric bounds instead of overflowing.

$$ x \gets \begin{cases} x - y & \text{if} \quad m \leq x - y \leq M, \\ M & \text{if} \quad x - y > M, \\ m & \text{if} \quad x - y < m, \end{cases} $$ where $m$ is Self::MIN and $M$ is Self::MAX.

§Worst-case complexity

Constant time and additional memory.

§Examples

See here.

Source§

impl SaturatingSubAssign for usize

Source§

fn saturating_sub_assign(&mut self, other: usize)

Subtracts a number by another number in place, saturating at the numeric bounds instead of overflowing.

$$ x \gets \begin{cases} x - y & \text{if} \quad m \leq x - y \leq M, \\ M & \text{if} \quad x - y > M, \\ m & \text{if} \quad x - y < m, \end{cases} $$ where $m$ is Self::MIN and $M$ is Self::MAX.

§Worst-case complexity

Constant time and additional memory.

§Examples

See here.

Implementors§