Structure of a language tag as described in RFC 5646.
@type t() :: %ExLang.Locale{ extended: String.t() | nil, extension: {String.t(), [String.t()]} | nil, primary: String.t(), region: String.t() | nil, script: String.t() | nil, variant: String.t() | nil }