# Module Char

    module Char: sig .. end

Character operations.

Characters are the elements of `string` and `bytes` values. Characters represent bytes, that is an integer in the range [`0x00`;`0xFF`].

Some of the functions of this module interpret the characters in the range [`0x00`;`0x7F`] as the characters of the ASCII character set.

## Characters

    type t = char

An alias for the type of characters.

    val code : char -> int

`code c` is the byte corresponding to `c`. If `c` is an ASCII character this corresponds to its encoding in ASCII or UTF-8.

    val chr : int -> char

Return the character with the given integer code.

- Raises `Invalid_argument` if the argument is outside the range [`0x00`;`0xFF`].

    val escaped : char -> string

Return a string representing the given character, with special characters escaped following the lexical conventions of OCaml. All characters outside the ASCII printable range [`0x20`;`0x7E`] are escaped, as well as backslash, double-quote, and single-quote.

## Predicates and comparisons

See also the `Char.Ascii` module.

    val compare : t -> t -> int

The comparison function for characters, with the same specification as `compare`. Along with the type `t`, this function `compare` allows the module `Char` to be passed as argument to the functors `Set.Make` and `Map.Make`. The order is compatible with `Char.code`.

    val equal : t -> t -> bool

The equal function for chars.

- Since 4.03

## ASCII characters

    module Ascii: sig .. end

ASCII character set support.

    val lowercase_ascii : char -> char

Use the equivalent `Char.Ascii.lowercase` instead.

- Since 4.03

    val uppercase_ascii : char -> char

Use the equivalent `Char.Ascii.uppercase` instead.

- Since 4.03

## Hashing

    val seeded_hash : int -> t -> int

A seeded hash function for characters, with the same output value as `Hashtbl.seeded_hash`. This function allows this module to be passed as argument to the functor `Hashtbl.MakeSeeded`.

- Since 5.1

    val hash : t -> int

An unseeded hash function for characters, with the same output value as `Hashtbl.hash`. This function allows this module to be passed as argument to the functor `Hashtbl.Make`.

- Since 5.1