| 12345678910111213141516171819202122232425 |
- package protocol
- import (
- "context"
- )
- type key int
- const (
- userKey key = iota
- )
- // ContextWithUser returns a context combined with a User.
- func ContextWithUser(ctx context.Context, user *User) context.Context {
- return context.WithValue(ctx, userKey, user)
- }
- // UserFromContext extracts a User from the given context, if any.
- func UserFromContext(ctx context.Context) *User {
- v := ctx.Value(userKey)
- if v == nil {
- return nil
- }
- return v.(*User)
- }
|