Module Stdlib.Char

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.

let code: char => int;

Return the integer code of the argument.

let chr: int => char;

Return the character with the given integer code.

let 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 Ascii module.

let compare: t => t => int;

The comparison function for characters, with the same specification as Stdlib.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.

let equal: t => t => bool;

The equal function for chars.

  • since 4.03

ASCII characters

module Ascii: { ... };

ASCII character set support.

let lowercase_ascii: char => char;

Use the equivalent Ascii.lowercase instead.

  • since 4.03
let uppercase_ascii: char => char;

Use the equivalent Ascii.uppercase instead.

  • since 4.03

Hashing

let 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
let 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