Module Iso639.Lang_family
Language families and groups as identified by ISO 639-5.
ISO 639-5 defines language codes for selected language groups and families. A few of these are also present in ISO 639-1 and 639-2. This module defines an abstract type covering these language families and groups, and provides conversions to the relevant language codes.
Remainder groups of ISO 639-2 are not distinguished from the corresponding complete groups of ISO 639-5.
Basic Operations
val pp : Stdlib.Format.formatter -> t -> unit
pp ppf lang
prints the ISO 639-5 language code oflang
onppf
.
Conversions
val to_int : t -> int
An injective mapping to 16 bit integers.
val of_int_exn : int -> t
The partial inverse of
to_int
.- raises Invalid_argument
if the argument is out of range.
val to_lang_or_family : t -> Lang_or_family.t
Injection into the combined ISO 639 type.
val of_lang_or_family : Lang_or_family.t -> t option
Restriction from the combined ISO 639 type.
Language Code Conversions
val to_string : t -> string
to_string s
is the ISO 639-5 language code oflang
.
val of_string : string -> t option
of_string s
is the language family or group represented by the ISO 639-5 codes
.
val of_string_exn : string -> t
of_string_exn s
is the language family or group represented by the ISO 639-5 codes
.
val is_iso639p1 : t -> bool
is_iso639p1 lang
is true ifflang
is represented in ISO 639-1.
val to_iso639p1 : t -> string option
to_iso639p1 lang
is the ISO 693-1 language code oflang
, if it exists.
val of_iso639p1 : string -> t option
of_iso639p1 s
is the language represented by the ISO 639-1 language codes
.
val is_iso639p2 : t -> bool
is_iso639p2 lang
is true ifflang
is represented in ISO 639-2.
val to_iso639p2t : t -> string option
to_iso639p2t lang
is the ISO 639-2T language code oflang
, if it exists.
val to_iso639p2b : t -> string option
to_iso639p2b lang
is the ISO 639-2B language code oflang
, if it exists.
val of_iso639p2 : string -> t option
of_iso639p2 s
is the language represented by the ISO 639 part 2T or 2B language codes
.