russian_numbers

crate for converting numbers into names in Russian language up to 10e96 rust u128::MAX < 10e96

Basic usage

```rust use russian_numbers::NumeralName;

asserteq!(123321usize.numeralname(), &["сто", "двадцать", "три", "тысячи", "триста", "двадцать", "один"]); asserteq!(100000usize.numeralname(), &["сто", "тысяч"]); asserteq!(101000usize.numeralname(), &["сто", "одна", "тысяча"]); asserteq!(102000usize.numeralname(), &["сто", "две", "тысячи"]); asserteq!(101000000usize.numeralname(), &["сто", "один", "миллион"]); asserteq!(102000000usize.numeralname(), &["сто", "два", "миллиона"]); asserteq!(102102000usize.numeralname(), &["сто", "два", "миллиона", "сто", "две", "тысячи"]); asserteq!(u128::MAX.numeralname(), &["триста", "сорок", "анцедиллионов", "двести", "восемьдесят", "два", "дециллиона", "триста", "шестьдесят", "шесть", "нониллионов", "девятьсот", "двадцать", "октиллионов", "девятьсот", "тридцать", "восемь", "септиллионов", "четыреста", "шестьдесят", "три", "секстиллиона", "четыреста", "шестьдесят", "три", "квинтиллиона", "триста", "семьдесят", "четыре", "квадриллиона", "шестьсот", "семь", "триллионов", "четыреста", "тридцать", "один", "миллиард", "семьсот", "шестьдесят", "восемь", "миллионов", "двести", "одиннадцать", "тысяч", "четыреста", "пятьдесят", "пять"]); ```

If you need to split triplets, use triplet iterators separately: rust use russian_numbers::{Numerals, RevDigits}; let x = 120_210usize; assert_eq!(Numerals::from(x.into_triplets()).collect::<Vec<_>>(), vec![vec!["двести", "десять"], vec!["сто", "двадцать", "тысяч"]])