1234567891011121314151617181920212223242526272829 |
- package context
- import "golang.org/x/text/language"
- // I18nReadOnly is the interface which contains the read-only i18n features.
- // Read the "i18n" package fo details.
- type I18nReadOnly interface {
- Tags() []language.Tag
- GetLocale(ctx *Context) Locale
- Tr(lang string, key string, args ...interface{}) string
- TrContext(ctx *Context, key string, args ...interface{}) string
- }
- // Locale is the interface which returns from a `Localizer.GetLocale` method.
- // It serves the translations based on "key" or format. See `GetMessage`.
- type Locale interface {
- // Index returns the current locale index from the languages list.
- Index() int
- // Tag returns the full language Tag attached to this Locale,
- // it should be unique across different Locales.
- Tag() *language.Tag
- // Language should return the exact languagecode of this `Locale`
- //that the user provided on `New` function.
- //
- // Same as `Tag().String()` but it's static.
- Language() string
- // GetMessage should return translated text based on the given "key".
- GetMessage(key string, args ...interface{}) string
- }
|