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
// textos::ascii
//
//! ASCII related functionality.
//
/// Builds an if-else tree that returns a result depending on the uncased
/// comparison with the given ASCII.
///
/// It expects a comparison value
///
/// It uses the `eq_ignore_ascii_case` function, so the comparsion value could
/// be a [`&str`], [`char`], [`&[u8]`][slice] or [`u8`].
///
/// # Example
/// ```
/// use textos::ascii_eq_uncased;
///
/// fn ascii_eq(s: &str) -> Result<usize, &'static str> {
/// ascii_eq_uncased![s, "No matches.", "Zero", 0, "One", 1, "Two", 2]
/// }
///
/// assert_eq![Ok(0), ascii_eq("zErO")];
/// assert_eq![Ok(1), ascii_eq("onE")];
/// assert![ascii_eq("Three").is_err()];
/// ```
///
/// [`&str`]: <https://doc.rust-lang.org/std/primitive.str.html#method.eq_ignore_ascii_case>
/// [`char`]: <https://doc.rust-lang.org/std/primitive.char.html#method.eq_ignore_ascii_case>
/// [slice]: <https://doc.rust-lang.org/std/primitive.slice.html#method.eq_ignore_ascii_case>
/// [`u8`]: <https://doc.rust-lang.org/std/primitive.u8.html#method.eq_ignore_ascii_case>
///