package b0

  1. Overview
  2. Docs
Software construction and deployment kit

Install

dune-project
 Dependency

Authors

Maintainers

Sources

b0-0.0.6.tbz
sha512=e9aa779e66c08fc763019f16d4706f465d16c05d6400b58fbd0313317ef33ddea51952e2b058db28e65f7ddb7012f328c8bf02d8f1da17bb543348541a2587f0

doc/b0.std/B0_std/Char/Ascii/index.html

Module Char.AsciiSource

ASCII character set support.

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.

Characters

Sourceval min : char

min is '\x00'.

Sourceval max : char

max is '\x7F'.

Predicates

Sourceval is_valid : char -> bool

is_valid c is true if and only if c is an ASCII character, that is a byte in the range [min;max].

Sourceval is_upper : char -> bool

is_upper c is true if and only if c is an ASCII uppercase letter 'A' to 'Z', that is a byte in the range [0x41;0x5A].

Sourceval is_lower : char -> bool

is_lower c is true if and only if c is an ASCII lowercase letter 'a' to 'z', that is a byte in the range [0x61;0x7A].

Sourceval is_letter : char -> bool

is_letter c is is_lower c || is_upper c.

Sourceval is_alphanum : char -> bool

is_alphanum c is is_letter c || is_digit c.

Sourceval is_white : char -> bool

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),

Sourceval is_blank : char -> bool

is_blank c is true if and only if c is an ASCII blank character, that is either space ' ' (0x20) or tab '\t' (0x09).

Sourceval is_graphic : char -> bool

is_graphic c is true if and only if c is an ASCII graphic character, that is a byte in the range [0x21;0x7E].

Sourceval is_print : char -> bool

is_print c is is_graphic c || c = ' '.

Sourceval is_control : char -> bool

is_control c is true if and only if c is an ASCII control character, that is a byte in the range [0x00;0x1F] or 0x7F.

Decimal digits

Sourceval is_digit : char -> bool

is_digit c is true if and only if c is an ASCII decimal digit '0' to '9', that is a byte in the range [0x30;0x39].

Sourceval digit_to_int : char -> int

digit_to_int c is the numerical value of a digit that satisfies is_digit. Raises Invalid_argument if is_digit c is false.

Sourceval digit_of_int : int -> char

digit_of_int n is an ASCII decimal digit for the decimal value abs (n mod 10).

Hexadecimal digits

Sourceval is_hex_digit : char -> bool

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].

Sourceval hex_digit_to_int : char -> int

hex_digit_to_int c is the numerical value of a digit that satisfies is_hex_digit. Raises Invalid_argument if is_hex_digit c is false.

Sourceval lower_hex_digit_of_int : int -> char

lower_hex_digit_of_int n is a lowercase ASCII hexadecimal digit for the hexadecimal value abs (n mod 16).

Sourceval upper_hex_digit_of_int : int -> char

upper_hex_digit_of_int n is an uppercase ASCII hexadecimal digit for the hexadecimal value abs (n mod 16).

Casing transforms

Sourceval uppercase : char -> char

uppercase c is c with ASCII characters 'a' to 'z' respectively mapped to uppercase characters 'A' to 'Z'. Other characters are left untouched.

Sourceval lowercase : char -> char

lowercase c is c with ASCII characters 'A' to 'Z' respectively mapped to lowercase characters 'a' to 'z'. Other characters are left untouched.