View Source Cldr.Rfc5646.Parser (Cldr v2.36.0)
Implements parsing for RFC5646 language tags with BCP47 extensions.
The primary interface to this module is the function
Cldr.LanguageTag.parse/1
.
Link to this section Summary
Functions
Parses the given binary
as language_tag.
Link to this section Functions
@spec language_tag( binary(), keyword() ) :: {:ok, [term()], rest, context, line, byte_offset} | {:error, reason, rest, context, line, byte_offset} when line: {pos_integer(), byte_offset}, byte_offset: pos_integer(), rest: binary(), reason: String.t(), context: map()
Parses the given binary
as language_tag.
Returns {:ok, [token], rest, context, position, byte_offset}
or
{:error, reason, rest, context, line, byte_offset}
where position
describes the location of the language_tag (start position) as {line, column_on_line}
.
options
Options
:byte_offset
- the byte offset for the whole binary, defaults to 0:line
- the line and the byte offset into that line, defaults to{1, byte_offset}
:context
- the initial context value. It will be converted to a map