faker_rust/default/
number.rs1use crate::config::FakerConfig;
4
5pub fn number() -> String {
7 let config = FakerConfig::current();
8 config.rand_range(0, 10_000_000).to_string()
9}
10
11pub fn between(min: i64, max: i64) -> i64 {
13 let config = FakerConfig::current();
14 config.rand_range(min as u32, max as u32) as i64
15}
16
17pub fn between_u32(min: u32, max: u32) -> u32 {
19 let config = FakerConfig::current();
20 config.rand_range(min, max)
21}
22
23pub fn decimal(l_digits: i32, r_digits: i32) -> String {
25 let config = FakerConfig::current();
26 let left: u32 = config.rand_range(0, 10_u32.pow(l_digits as u32));
27 let right: u32 = config.rand_range(0, 10_u32.pow(r_digits as u32));
28 format!("{}.{:0>width$}", left, right, width = r_digits as usize)
29}
30
31pub fn number_range(min: u32, max: u32) -> String {
33 between_u32(min, max).to_string()
34}
35
36pub fn hexify(upper: bool) -> String {
38 let config = FakerConfig::current();
39 let chars: &[char] = if upper {
40 &crate::base::HEX_UPPER
41 } else {
42 &crate::base::HEX_LOWER
43 };
44 (0..10).map(|_| config.rand_char(chars)).collect()
45}
46
47pub fn number_to_ruby() -> i64 {
49 between(0, 999)
50}