fn __zero_std_ascii_is_digit(byte: u8) -> Bool { return byte >= 48_u8 && byte <= 57_u8 } fn __zero_std_ascii_is_lower(byte: u8) -> Bool { return byte >= 97_u8 && byte <= 122_u8 } fn __zero_std_ascii_is_upper(byte: u8) -> Bool { return byte >= 65_u8 && byte <= 90_u8 } fn __zero_std_ascii_is_alpha(byte: u8) -> Bool { return __zero_std_ascii_is_lower(byte) || __zero_std_ascii_is_upper(byte) } fn __zero_std_ascii_is_alnum(byte: u8) -> Bool { return __zero_std_ascii_is_alpha(byte) || __zero_std_ascii_is_digit(byte) } fn __zero_std_ascii_is_whitespace(byte: u8) -> Bool { return byte == 32_u8 || byte == 9_u8 || byte == 10_u8 || byte == 13_u8 } fn __zero_std_ascii_is_hex_digit(byte: u8) -> Bool { return __zero_std_ascii_is_digit(byte) || (byte >= 65_u8 && byte <= 70_u8) || (byte >= 97_u8 && byte <= 102_u8) } fn __zero_std_ascii_to_lower(byte: u8) -> u8 { if __zero_std_ascii_is_upper(byte) { return byte + 32_u8 } return byte } fn __zero_std_ascii_to_upper(byte: u8) -> u8 { if __zero_std_ascii_is_lower(byte) { return byte - 32_u8 } return byte } fn __zero_std_ascii_digit_value(byte: u8) -> Maybe { if __zero_std_ascii_is_digit(byte) { return byte - 48_u8 } return null } fn __zero_std_ascii_hex_value(byte: u8) -> Maybe { if __zero_std_ascii_is_digit(byte) { return byte - 48_u8 } if byte >= 65_u8 && byte <= 70_u8 { return byte - 55_u8 } if byte >= 97_u8 && byte <= 102_u8 { return byte - 87_u8 } return null }