diff options
Diffstat (limited to 'vendor/github.com/Xe/ln/context.go')
| -rw-r--r-- | vendor/github.com/Xe/ln/context.go | 38 |
1 files changed, 0 insertions, 38 deletions
diff --git a/vendor/github.com/Xe/ln/context.go b/vendor/github.com/Xe/ln/context.go deleted file mode 100644 index 0ea3229..0000000 --- a/vendor/github.com/Xe/ln/context.go +++ /dev/null @@ -1,38 +0,0 @@ -package ln - -import ( - "context" -) - -type ctxKey int - -const ( - fKey = iota -) - -// WithF stores or appends a given F instance into a context. -func WithF(ctx context.Context, f F) context.Context { - pf, ok := FFromContext(ctx) - if !ok { - return context.WithValue(ctx, fKey, f) - } - - pf.Extend(f) - - return context.WithValue(ctx, fKey, pf) -} - -// FFromContext fetches the `F` out of the context if it exists. -func FFromContext(ctx context.Context) (F, bool) { - fvp := ctx.Value(fKey) - if fvp == nil { - return nil, false - } - - f, ok := fvp.(F) - if !ok { - return nil, false - } - - return f, true -} |
