mirror of
https://github.com/go-micro/go-micro.git
synced 2024-12-24 10:07:04 +02:00
.. | ||
README.md |
Options
Go-micro makes the use of functional options. It's a design pattern that allows the addition of new options without changing the method signature.
Each package has an Option type
type Option func(*Options)
Options such as the Name function exist to set a service name
The implementation is as follows
func Name(n string) Option {
return func(o *Options) {
o.Server.Init(server.Name(n))
}
}
Usage
Here's an example at the top level
import "github.com/micro/go-micro/v2"
service := micro.NewService(
micro.Name("my.service"),
)