basic/
basic.rs

1use digit_layout::DigitLayout;
2
3fn main() {
4    let u8_layout = DigitLayout::unsigned(8, 1);
5    let u16_layout = DigitLayout::unsigned(16, 1);
6    let u32_layout = DigitLayout::unsigned(32, 1);
7    let u64_layout = DigitLayout::unsigned(64, 1);
8
9    println!("Unsigned Integer Types:");
10    println!("  u8: {u8_layout}");
11    println!("  u16: {u16_layout}");
12    println!("  u32: {u32_layout}");
13    println!("  u64: {u64_layout}");
14
15    let f16_layout = DigitLayout::real(5, 10, 1);
16    let f32_layout = DigitLayout::real(8, 23, 1);
17    let f64_layout = DigitLayout::real(11, 52, 1);
18
19    println!("Floating Point Types:");
20    println!("  f16: {f16_layout}");
21    println!("  f32: {f32_layout}");
22    println!("  f64: {f64_layout}");
23
24    let u8_array = DigitLayout::unsigned(8, 4);
25    let f32_array = DigitLayout::real(8, 23, 4);
26
27    println!("Array Types:");
28    println!("  [u8; 4]: {u8_array}");
29    println!("  [f32; 4]: {f32_array}");
30
31    let custom_layout = DigitLayout::named("custom", 1, 4);
32    println!("Custom Type:");
33    println!("  custom: {custom_layout}");
34}