trpc.group/trpc-go/trpc-go@v1.0.3/naming/discovery/options.go (about) 1 // 2 // 3 // Tencent is pleased to support the open source community by making tRPC available. 4 // 5 // Copyright (C) 2023 THL A29 Limited, a Tencent company. 6 // All rights reserved. 7 // 8 // If you have downloaded a copy of the tRPC source code from Tencent, 9 // please note that tRPC source code is licensed under the Apache 2.0 License, 10 // A copy of the Apache 2.0 License is included in this file. 11 // 12 // 13 14 package discovery 15 16 import ( 17 "context" 18 ) 19 20 // Options is the call options. 21 type Options struct { 22 Ctx context.Context 23 Namespace string 24 } 25 26 // Option modifies the Options. 27 type Option func(*Options) 28 29 // WithContext returns an Option which sets ctx. 30 func WithContext(ctx context.Context) Option { 31 return func(o *Options) { 32 o.Ctx = ctx 33 } 34 } 35 36 // WithNamespace returns an Option which sets namespace. 37 func WithNamespace(namespace string) Option { 38 return func(opts *Options) { 39 opts.Namespace = namespace 40 } 41 }