View Source Cldr.Number.PluralRule (Cldr v2.40.2)
Defines the plural rule implementation modules. The functions in this module generate code to implement the plural rules of CLDR.
Summary
Types
Defines the structure of a plural rule before compilation.
Defines the plural types into which a number can be categorised.
Functions
Returns a list of the possible pluralization types
Returns the plural type for a given number.
Types
Functions
@spec known_plural_types() :: [plural_type(), ...]
Returns a list of the possible pluralization types
Returns the plural type for a given number.
Arguments
numberis an integer, float or Decimal number.backendis any module that includesuse Cldrand therefore is aCldrbackend module. The default isCldr.default_backend!/0.optionsis a keyword list of options.
Options
localeis any valid locale name returned byCldr.known_locale_names/1or aCldr.LanguageTagstruct returned byCldr.Locale.new!/2, The default isCldr.get_locale/0.backendis any module that includesuse Cldrand therefore is aCldrbackend module. The default isCldr.default_backend!/0. This option allows the backend to be specified as an argument or an option.typeis eitherCardinalorOrdinal. The default isCardinal.
Examples
iex> Cldr.Number.PluralRule.plural_type(123)
:other
iex> Cldr.Number.PluralRule.plural_type(123, type: Ordinal)
:few
iex> Cldr.Number.PluralRule.plural_type(123, type: Cardinal)
:other
iex> Cldr.Number.PluralRule.plural_type(2, locale: "de")
:other