lang

package
v0.6.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 27, 2021 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	English  = New(language.English)
	Japanese = New(language.Japanese)

	// Default language
	Default = English

	Supported = []Lang{English, Japanese}
)

Functions

func NewMultiErrorOrNull

func NewMultiErrorOrNull(errors ...error) error

Types

type Iso639One

type Iso639One string

ISO 639-1 two letter code

type Lang

type Lang interface {
	fmt.Stringer

	// ISO 639-1 two letter code. e.g. `en` for English, `ja` for Japanese.
	// https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes
	Code() Iso639One

	// ISO 639-1 two letter code in string.
	CodeString() string

	// Is default language of this system.
	IsDefault() bool

	// Language tag
	Tag() language.Tag

	// Resource path suffix
	Suffix() string

	// Display language name in this language
	Self() string

	// True when the x matches high confidence or exact match.
	Equals(x Lang) bool
}

func Detect

func Detect(supported []Lang) Lang

Detect & select language in select

func New

func New(tag language.Tag) Lang

func Priority

func Priority(target Lang) []Lang

Returns language and priority. Returns an array [TargetLanguage, DefaultLanguage] if a target language is default language. Otherwise returns [TargetLanguage].

func Select

func Select(bcp47 string, supported []Lang) Lang

type MultiError

type MultiError struct {
	// contains filtered or unexported fields
}

func (MultiError) AllErrors

func (z MultiError) AllErrors() []error

func (MultiError) Error

func (z MultiError) Error() string

func (MultiError) NumErrors

func (z MultiError) NumErrors() int

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL