||This is a set of APIs that are of general usefulness for user interface
They're all in various stages of the standardization process through
ECMA402, so they are exposed to privileged content only but are written
in the way to allow for easy migration to standard Intl object once
the appropriate stage of the ECMA402 is achieved.
The exact structure of the code is a little bit complex because of that:
1) The core is in SpiderMonkey together with other Intl APIs
This allows us to write the code once, stick to the spec language
of the proposal, reuse our ICU bindings in Spidermonkey and use
the code to inform us on refining the spec proposal for the given API itself.
2) The MozIntlHelper API exposes the SpiderMonkey APIs
This helper API allows attaching the new APIs on any regular object.
3) The MozIntl API provides the access to those APIs
This API exposes the actual functionality and wraps around the MozIntlHelper
lazily retrieving and setting the accessors.
On top of that, the API also binds additional functionality like using
current application locale by default, and fetching OS regional preferences
for date time format.
||This is an internal helper for mozIMozIntl API. There should be virtually
no reason for you to call this API except from mozIMozIntl implementation.
This API helps accessing the SpiderMonkey Intl APIs, but it is mozIMozIntl
that exposes the thin wrapper around them that binds the functionality
||RegExp used to parse a BCP47 language tag (ex: en-US, sr-Cyrl-RU etc.)