Documentation ¶
Index ¶
- Variables
- type ErrCardinalTranslation
- type ErrConflictingTranslation
- type ErrExistingTranslator
- type ErrMissingPluralTranslation
- type ErrOrdinalTranslation
- type ErrRangeTranslation
- type Translator
- type UniversalTranslator
- func (t *UniversalTranslator) AddTranslator(translator locales.Translator, override bool) error
- func (t *UniversalTranslator) FindTranslator(locales ...string) (trans Translator)
- func (t *UniversalTranslator) GetFallback() Translator
- func (t *UniversalTranslator) GetTranslator(locale string) Translator
Constants ¶
This section is empty.
Variables ¶
var ( // ErrUnknowTranslation indicates the translation could not be found ErrUnknowTranslation = errors.New("Unknown Translation") )
Functions ¶
This section is empty.
Types ¶
type ErrCardinalTranslation ¶
type ErrCardinalTranslation struct {
// contains filtered or unexported fields
}
ErrCardinalTranslation is the error representing a cardinal translation error
func (*ErrCardinalTranslation) Error ¶
func (e *ErrCardinalTranslation) Error() string
Error returns ErrCardinalTranslation's internal error text
type ErrConflictingTranslation ¶
type ErrConflictingTranslation struct {
// contains filtered or unexported fields
}
ErrConflictingTranslation is the error representing a conflicting translation
func (*ErrConflictingTranslation) Error ¶
func (e *ErrConflictingTranslation) Error() string
Error returns ErrConflictingTranslation's internal error text
type ErrExistingTranslator ¶ added in v0.11.0
type ErrExistingTranslator struct {
// contains filtered or unexported fields
}
ErrExistingTranslator is the error representing a conflicting translator
func (*ErrExistingTranslator) Error ¶ added in v0.11.0
func (e *ErrExistingTranslator) Error() string
Error returns ErrExistingTranslator's internal error text
type ErrMissingPluralTranslation ¶
type ErrMissingPluralTranslation struct {
// contains filtered or unexported fields
}
ErrMissingPluralTranslation is the error signifying a missing translation given the locales plural rules.
func (*ErrMissingPluralTranslation) Error ¶
func (e *ErrMissingPluralTranslation) Error() string
Error returns ErrMissingPluralTranslation's internal error text
type ErrOrdinalTranslation ¶
type ErrOrdinalTranslation struct {
// contains filtered or unexported fields
}
ErrOrdinalTranslation is the error representing an ordinal translation error
func (*ErrOrdinalTranslation) Error ¶
func (e *ErrOrdinalTranslation) Error() string
Error returns ErrOrdinalTranslation's internal error text
type ErrRangeTranslation ¶
type ErrRangeTranslation struct {
// contains filtered or unexported fields
}
ErrRangeTranslation is the error representing a range translation error
func (*ErrRangeTranslation) Error ¶
func (e *ErrRangeTranslation) Error() string
Error returns ErrRangeTranslation's internal error text
type Translator ¶
type Translator interface { locales.Translator // adds a normal translation for a particular language/locale // {#} is the only replacement type accepted and are add infintium // eg. one: '{0} day left' other: '{0} days left' Add(key interface{}, text string, override bool) error // adds a cardinal plural translation for a particular language/locale // {0} is the only replacement type accepted and only one variable is accepted as // multiple cannot be used for a plural rule determination, unless it is a range; // see AddRange below. // eg. in locale 'en' one: '{0} day left' other: '{0} days left' AddCardinal(key interface{}, text string, rule locales.PluralRule, override bool) error // adds an ordinal plural translation for a particular language/locale // {0} is the only replacement type accepted and only one variable is accepted as // multiple cannot be used for a plural rule determination, unless it is a range; // see AddRange below. // eg. in locale 'en' one: '{0}st day of spring' other: '{0}nd day of spring' // - 1st, 2nd, 3rd... AddOrdinal(key interface{}, text string, rule locales.PluralRule, override bool) error // adds a range plural translation for a particular language/locale // {0} and {1} are the only replacement types accepted and only these are accepted. // eg. in locale 'nl' one: '{0}-{1} day left' other: '{0}-{1} days left' AddRange(key interface{}, text string, rule locales.PluralRule, override bool) error // creates the translation for the locale given the 'key' and params passed in T(key interface{}, params ...string) (string, error) // creates the cardinal translation for the locale given the 'key', 'num' and 'digit' arguments // and param passed in C(key interface{}, num float64, digits uint64, param string) (string, error) // creates the ordinal translation for the locale given the 'key', 'num' and 'digit' arguments // and param passed in O(key interface{}, num float64, digits uint64, param string) (string, error) // creates the range translation for the locale given the 'key', 'num1', 'digit1', 'num2' and // 'digit2' arguments and 'param1' and 'param2' passed in R(key interface{}, num1 float64, digits1 uint64, num2 float64, digits2 uint64, param1, param2 string) (string, error) // VerifyTranslations checks to ensures that no plural rules have been // missed within the translations. VerifyTranslations() error }
Translator is universal translators translator instance which is a thin wrapper around locales.Translator instance providing some extra functionality
type UniversalTranslator ¶
type UniversalTranslator struct {
// contains filtered or unexported fields
}
UniversalTranslator holds all locale & translation data
func New ¶
func New(fallback locales.Translator, supportedLocales ...locales.Translator) *UniversalTranslator
New returns a new UniversalTranslator instance set with the fallback locale and locales it should support
func (*UniversalTranslator) AddTranslator ¶ added in v0.11.0
func (t *UniversalTranslator) AddTranslator(translator locales.Translator, override bool) error
AddTranslator adds the supplied translator, if it already exists the override param will be checked and if false an error will be returned, otherwise the translator will be overridden; if the fallback matches the supplied translator it will be overridden as well NOTE: this is normally only used when translator is embedded within a library
func (*UniversalTranslator) FindTranslator ¶
func (t *UniversalTranslator) FindTranslator(locales ...string) (trans Translator)
FindTranslator trys to find a Translator based on an array of locales and returns the first one it can find, otherwise returns the fallback translator.
func (*UniversalTranslator) GetFallback ¶ added in v0.12.0
func (t *UniversalTranslator) GetFallback() Translator
GetFallback returns the fallback locale
func (*UniversalTranslator) GetTranslator ¶
func (t *UniversalTranslator) GetTranslator(locale string) Translator
GetTranslator returns the specified translator for the given locale, or fallback if not found