1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
//! An array of specified length `N` of u8 values from 0 to `B`-1
//!
//! # Problem
//!
//! Rust allows storing arrays on the stack of numbers, but no way to ensure
//! that said numbers are in a specified range
//!
//! # Solution
//!
//! Wrapper around array that verifies all numbers when constructed
pub use crate ArrayOfBase;
pub use Error;
/// Alias for fixed length array of hexadecimal values
///
/// See [`ArrayOfBase`]
///
/// # Example
///
/// ```
/// # use array_of_base::ArrayOfHex;
/// // GIVEN
/// let valid_array: [u8; 16] = core::array::from_fn(|i| i as u8);
/// let invalid_array = [16];
///
/// // WHEN
/// let valid_result = ArrayOfHex::<16>::try_new(valid_array);
/// let invalid_result = ArrayOfHex::<1>::try_new(invalid_array);
///
/// // THEN
/// assert!(valid_result.is_ok());
/// assert!(invalid_result.is_err());
/// ```
pub type ArrayOfHex<const N: usize> = ;
/// Alias for fixed length array of decimal values
///
/// See [`ArrayOfBase`]
///
/// # Example
///
/// ```
/// # use array_of_base::ArrayOfDec;
/// // GIVEN
/// let valid_array: [u8; 10] = core::array::from_fn(|i| i as u8);
/// let invalid_array = [10];
///
/// // WHEN
/// let valid_result = ArrayOfDec::<10>::try_new(valid_array);
/// let invalid_result = ArrayOfDec::<1>::try_new(invalid_array);
///
/// // THEN
/// assert!(valid_result.is_ok());
/// assert!(invalid_result.is_err());
/// ```
pub type ArrayOfDec<const N: usize> = ;