Documentation
¶
Overview ¶
Example ¶
package main
import (
"fmt"
"go.llib.dev/frameless/port/option"
)
type config struct {
Foo int
}
func (c *config) Init() {
c.Foo = 42 // default value for Foo config
}
type Option interface {
option.Option[config]
}
func FooIs(foo int) Option {
return option.Func[config](func(c *config) {
c.Foo = foo
})
}
func FuncWithOptionalConfigurationInput(arg1 string, opts ...Option) string {
conf := option.ToConfig[config](opts)
return fmt.Sprintf("Hello %s. (foo=%d)", arg1, conf.Foo)
}
func main() {
fmt.Println(
FuncWithOptionalConfigurationInput("argument", FooIs(42)),
)
}
Index ¶
Examples ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
Click to show internal directories.
Click to hide internal directories.