Documentation ¶
Index ¶
- func ParseAcceptLanguage(s string) []string
- func WithContext(ctx context.Context, locale *Locale) context.Context
- type Dictionary
- type DictionaryItemAttrs
- type DictionaryMap
- type Locale
- func (l *Locale) HasErrorCode(code string) bool
- func (l *Locale) LangCode() string
- func (l *Locale) LangID() uint16
- func (l *Locale) TranslateError(code, defaultMessage string, args ...mrmsg.NamedArg) mrmsg.ErrorMessage
- func (l *Locale) TranslateMessage(code, defaultMessage string, args ...mrmsg.NamedArg) string
- func (l *Locale) WithContext(ctx context.Context) context.Context
- type MultiLangDictionary
- type Translator
- func (t *Translator) DefaultLocale() *Locale
- func (t *Translator) Dictionary(name string) (*MultiLangDictionary, error)
- func (t *Translator) FindFirstLocale(langs ...string) *Locale
- func (t *Translator) LocaleByCode(lang string) (*Locale, error)
- func (t *Translator) LocaleByID(langID uint16) (*Locale, error)
- func (t *Translator) RegisteredDictionaries() []string
- func (t *Translator) RegisteredLocales() []string
- type TranslatorOptions
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ParseAcceptLanguage ¶
ParseAcceptLanguage - извлечение данных о языках. Sample Accept-Language: ru;q=0.9, fr-CH, fr;q=0.8, en;q=0.7, *;q=0.5.
Types ¶
type Dictionary ¶ added in v0.6.0
type Dictionary struct {
// contains filtered or unexported fields
}
Dictionary - справочник объектов указанного типа на конкретном языке.
func (*Dictionary) ItemByID ¶ added in v0.6.0
func (d *Dictionary) ItemByID(id int) DictionaryItemAttrs
ItemByID - возвращает объект с его атрибутами по ID.
func (*Dictionary) ItemByKey ¶ added in v0.6.0
func (d *Dictionary) ItemByKey(key string) DictionaryItemAttrs
ItemByKey - возвращает объект с его атрибутами по ключу (строковому ID).
func (*Dictionary) RegisteredItems ¶ added in v0.6.0
func (d *Dictionary) RegisteredItems() []string
RegisteredItems - возвращает список ключей зарегистрированных объектов.
type DictionaryItemAttrs ¶ added in v0.6.0
DictionaryItemAttrs - список имён атрибутов и их значений.
func (DictionaryItemAttrs) Attr ¶ added in v0.6.0
func (a DictionaryItemAttrs) Attr(name, defaultText string) string
Attr - возвращает значение атрибута по его имени или defaultText если имя не найдено.
func (DictionaryItemAttrs) RegisteredAttrs ¶ added in v0.6.0
func (a DictionaryItemAttrs) RegisteredAttrs() []string
RegisteredAttrs - возвращает список имён зарегистрированных атрибутов объекта.
type DictionaryMap ¶ added in v0.6.0
type DictionaryMap map[string]DictionaryItemAttrs
DictionaryMap - атрибуты объекта на конкретном языке. dictionary-name -> [id -> [attr1 -> text1, attr2 -> text2, ...], ...].
type Locale ¶
type Locale struct {
// contains filtered or unexported fields
}
Locale - список сообщений и пользовательских ошибок на конкретном языке.
func (*Locale) HasErrorCode ¶ added in v0.7.1
HasErrorCode - проверяется зарегистрирован указанный код ошибки в общем справочнике.
func (*Locale) TranslateError ¶
func (l *Locale) TranslateError(code, defaultMessage string, args ...mrmsg.NamedArg) mrmsg.ErrorMessage
TranslateError - возвращает сообщение об ошибке по указанному коду на текущем языке, если код не найден, то возвращает сообщение по умолчанию.
func (*Locale) TranslateMessage ¶
TranslateMessage - возвращает сообщение по указанному коду на текущем языке, если код не найден, то возвращает сообщение по умолчанию.
type MultiLangDictionary ¶ added in v0.6.0
type MultiLangDictionary struct {
// contains filtered or unexported fields
}
MultiLangDictionary - мультиязычный справочник объектов одного типа.
func (*MultiLangDictionary) ByLangCode ¶ added in v0.6.0
func (d *MultiLangDictionary) ByLangCode(code string) (*Dictionary, error)
ByLangCode - возвращает справочник на указанном языке (code) или ошибку если язык не был найден.
func (*MultiLangDictionary) ByLangID ¶ added in v0.6.0
func (d *MultiLangDictionary) ByLangID(id uint16) (*Dictionary, error)
ByLangID - возвращает справочник на указанном языке (ID) или ошибку если язык не был найден.
func (*MultiLangDictionary) Name ¶ added in v0.6.0
func (d *MultiLangDictionary) Name() string
Name - название справочника.
func (*MultiLangDictionary) RegisteredLangs ¶ added in v0.6.0
func (d *MultiLangDictionary) RegisteredLangs() []string
RegisteredLangs - возвращает список ключей зарегистрированных языков справочника.
type Translator ¶
type Translator struct {
// contains filtered or unexported fields
}
Translator - загружает и транслирует сообщения, ошибки, справочники объектов на различные языки.
func NewTranslator ¶
func NewTranslator(opts TranslatorOptions) (*Translator, error)
NewTranslator - создаёт объект Translator.
func (*Translator) DefaultLocale ¶ added in v0.3.0
func (t *Translator) DefaultLocale() *Locale
DefaultLocale - возвращает языковой объект по умолчанию.
func (*Translator) Dictionary ¶ added in v0.6.0
func (t *Translator) Dictionary(name string) (*MultiLangDictionary, error)
Dictionary - возвращает мультиязычный справочник по его имени.
func (*Translator) FindFirstLocale ¶ added in v0.1.1
func (t *Translator) FindFirstLocale(langs ...string) *Locale
FindFirstLocale - возвращает первый языковой объект по указанным языковым кодам. Если ни один языковой код не зарегистрирован, то возвращает языковой объект по умолчанию.
func (*Translator) LocaleByCode ¶ added in v0.6.0
func (t *Translator) LocaleByCode(lang string) (*Locale, error)
LocaleByCode - возвращает языковой объект по его коду.
func (*Translator) LocaleByID ¶ added in v0.6.0
func (t *Translator) LocaleByID(langID uint16) (*Locale, error)
LocaleByID - возвращает языковой объект по его ID.
func (*Translator) RegisteredDictionaries ¶ added in v0.6.0
func (t *Translator) RegisteredDictionaries() []string
RegisteredDictionaries - возвращает список имён зарегистрированных мультиязычных справочников.
func (*Translator) RegisteredLocales ¶
func (t *Translator) RegisteredLocales() []string
RegisteredLocales - возвращает список кодов зарегистрированных языков.