View Source Cldr.Print.Backend.Rbnf.Ordinal (ex_cldr_print v1.0.0)

Functions to implement the ordinal rule-based-number-format rules of CLDR.

As CLDR notes, the data is incomplete or non-existent for many languages. It is considered complete for English however.

The standard public API for RBNF is via the Cldr.Number.to_string/2 function.

The functions on this module are defined at compile time based upon the RBNF rules defined in the Unicode CLDR data repository. Available rules are identified by:

iex> Cldr.Print.Backend.Rbnf.Ordinal.rule_sets(:en)
[:digits_ordinal]

iex> Cldr.Print.Backend.Rbnf.Ordinal.rule_sets("fr")
[
  :digits_ordinal_masculine_plural,
  :digits_ordinal_masculine,
  :digits_ordinal_feminine_plural,
  :digits_ordinal_feminine,
  :digits_ordinal
]

A rule can then be invoked on an available rule_set. For example

iex> Cldr.Print.Backend.Rbnf.Ordinal.digits_ordinal(123, :en)
"123rd"

This call is equivalent to the call through the public API of:

iex> Cldr.Print.Backend.Number.to_string(123, format: :ordinal)
{:ok, "123rd"}

Link to this section Summary

Link to this section Functions