These functions give meaning to the integers [0x00;0x7F] of the ASCII character set.
Since the UTF-8 encoding of Unicode has the same encoding and character semantics (U+0000 to U+001F) for these bytes, the functions can be safely used on elements of UTF-8 encoded string and bytes values. However the functions only deal with ASCII related matters. For example the notion of Unicode whitespace is much larger than the ASCII whitespace determined by Char.Ascii.is_white.
is_white c is true if and only if c is an ASCII white space character, that is one of tab '\t' (0x09), newline '\n' (0x0A), vertical tab (0x0B), form feed (0x0C), carriage return '\r' (0x0D) or space ' ' (0x20),
is_hex_digit c is true if and only if c is an ASCII hexadecimal digit '0' to '9', 'a' to 'f' or 'A' to 'F', that is a byte in one of the ranges [0x30;0x39], [0x41;0x46], [0x61;0x66].