rfc5646langtag top-level property

Rule rfc5646langtag
final

Implementation

final rfc5646langtag = rule(
  'langtag',
  concatenation([
    rfc5646language,
    optionalSequence([literal('-'), rfc5646script]),
    optionalSequence([literal('-'), rfc5646region]),
    variableRepetition(concatenation([literal('-'), rfc5646variant])),
    variableRepetition(concatenation([literal('-'), rfc5646extension])),
    optionalSequence([literal('-'), rfc5646privateuse]),
  ]),
);