Cldr.Unit.parse

You're seeing just the function parse, go back to Cldr.Unit module for more information.
Link to this function

parse(unit_string, options \\ [])

View Source (since 3.6.0)

Parse a string to create a new unit.

This function attempts to parse a string into a number and unit type. If successful it attempts to create a new unit using Cldr.Unit.new/3.

The parsed unit type is aliased against all the known unit names for a give locale (or the current locale if no locale is specified). The known aliases for unit types can be returned with MyApp.Cldr.Unit.unit_strings_for/1 where MyApp.Cldr is the name of a backend module.

Arguments

  • unit string is any string to be parsed and if possible used to create a new t:Cldr.Unit

  • options is a keyword list of options

Options

Returns

  • {:ok, unit} or

  • {:error, {exception, reason}}

Examples

iex> Cldr.Unit.parse "1kg"
Cldr.Unit.new(1, :kilogram)

iex> Cldr.Unit.parse "1 tages", locale: "de"
Cldr.Unit.new(1, :day)

iex> Cldr.Unit.parse "1 tag", locale: "de"
Cldr.Unit.new(1, :day)

iex> Cldr.Unit.parse("42 millispangels")
{:error, {Cldr.UnknownUnitError, "Unknown unit was detected at \"spangels\""}}