|
- package translation
-
- import (
- "context"
-
- "golang.org/x/text/language"
- )
-
- type ctxkey uint8
-
- const (
- localeKey ctxkey = iota
- )
-
- // WithLanguage sets language to context.
- func WithLanguage(ctx context.Context, lang language.Tag) context.Context {
- return context.WithValue(ctx, localeKey, lang)
- }
-
- // FromContext get language from context or use default.
- func FromContext(ctx context.Context, def language.Tag) language.Tag {
- if t, ok := ctx.Value(localeKey).(language.Tag); ok {
- return t
- }
-
- return def
- }
|