Trait FromDigits

Source
pub trait FromDigits<N>
where N: FromIterRadix, Self: Sized + IntoIterator<Item = N>,
{ // Provided method fn from_digits(self) -> i64 { ... } }

Provided Methods§

Source

fn from_digits(self) -> i64

Converts iterable of digits back to the original number. This does not currently work for slices.

§Example

Basic usage:

use num_digitize::FromDigits;

let vector = vec![1, 2, 3, 4, 5];
let number = 12345;
assert_eq!(vector.from_digits(), number);

Negative numbers:

use num_digitize::FromDigits;

let vector = vec![-1, -2, -3, -4, -5];
let number = -12345;
assert_eq!(vector.from_digits(), number);

It works like this:

[-1, -2, -3]
(-1 * 10^2) + (-2 * 10^1) + (-3 * 10^0) = -123

Please note, all of the digits have to be negative in order to get the correct number back.

Also note, if you use this on vector of larger numbers (> 9 or < -9), the results will be wrong.

See ToDigits trait for details.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl<I, N> FromDigits<N> for I
where N: FromIterRadix, I: IntoIterator<Item = N>,