A.19 The Package Locales
A
locale identifies a
geopolitical place or region and its associated language, which can be
used to determine other internationalization-related characteristics.
Static Semantics
The library package
Locales has the following declaration:
package Ada.Locales
is
pragma Preelaborate(Locales);
pragma Remote_Types(Locales);
type Language_Code
is new String (1 .. 3)
with Dynamic_Predicate =>
(
for all E
of Language_Code => E
in 'a' .. 'z');
type Country_Code
is new String (1 .. 2)
with Dynamic_Predicate =>
(
for all E
of Country_Code => E
in 'A' .. 'Z');
Language_Unknown :
constant Language_Code := "und";
Country_Unknown :
constant Country_Code := "ZZ";
function Language
return Language_Code;
function Country
return Country_Code;
end Ada.Locales;
The
active locale
is the locale associated with the partition of the current task.
Language_Code is a lower-case string representation
of an ISO 639-3 alpha-3 code that identifies a language.
Country_Code is an upper-case string representation
of an ISO 3166-1 alpha-2 code that identifies a country.
Function Language returns the code of the language
associated with the active locale. If the Language_Code associated with
the active locale cannot be determined from the environment, then Language
returns Language_Unknown.
Function Country returns the code of the country
associated with the active locale. If the Country_Code associated with
the active locale cannot be determined from the environment, then Country
returns Country_Unknown.
Ada 2005 and 2012 Editions sponsored in part by Ada-Europe