pom_trace/
char_class.rs

1/// Recognises an alphabetic character, `a-zA-Z`.
2#[inline]
3pub fn alpha(term: u8) -> bool {
4	term.is_ascii_alphabetic()
5}
6
7/// Recognises a decimal digit, `0-9`.
8#[inline]
9pub fn digit(term: u8) -> bool {
10	term.is_ascii_digit()
11}
12
13/// Recognises an alphanumeric character, `a-zA-Z0-9`.
14#[inline]
15pub fn alphanum(term: u8) -> bool {
16	term.is_ascii_alphanumeric()
17}
18
19/// Recognises a hexadecimal digit, `0-9a-fA-F`.
20#[inline]
21pub fn hex_digit(term: u8) -> bool {
22	(0x30..=0x39).contains(&term) || (0x41..=0x46).contains(&term) || (0x61..=0x66).contains(&term)
23}
24
25/// Recognises an octal digit, `0-7`.
26#[inline]
27pub fn oct_digit(term: u8) -> bool {
28	(0x30..=0x37).contains(&term)
29}
30
31/// Recognises a space or tab.
32#[inline]
33pub fn space(term: u8) -> bool {
34	term == b' ' || term == b'\t'
35}
36
37/// Recognises a space, tab, line feed, or carriage return.
38#[inline]
39pub fn multispace(term: u8) -> bool {
40	space(term) || term == b'\n' || term == b'\r'
41}