Cldr.Unit.parse-exclamation-mark

You're seeing just the function parse-exclamation-mark, 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 or raises an exception.

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 un-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

  • unit or

  • raises an exception

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!("42 candela per lux")
Cldr.Unit.new!(42, "candela per lux")

iex> Cldr.Unit.parse!("42 millispangels")
** (Cldr.UnknownUnitError) Unknown unit was detected at "spangels"