goc/pkg/build/config.go
lyyyuna 456c883987 重构
1. 去掉全局的配置 config
2. 合并 pkg/build, pkg/flag, pkg/cover, pkg/config 几个包(这几个包有强相关性,适合放一处。并且分开也容易造成循环依赖)
2021-09-02 14:43:08 +08:00

50 lines
691 B
Go

package build
import (
"github.com/spf13/pflag"
)
type GocOption func(*Build)
func WithHost(host string) GocOption {
return func(b *Build) {
b.Host = host
}
}
func WithMode(mode string) GocOption {
return func(b *Build) {
b.Mode = mode
}
}
func WithArgs(args []string) GocOption {
return func(b *Build) {
b.Args = args
}
}
func WithFlagSets(sets *pflag.FlagSet) GocOption {
return func(b *Build) {
b.FlagSets = sets
}
}
func WithBuild() GocOption {
return func(b *Build) {
b.BuildType = 0
}
}
func WithInstall() GocOption {
return func(b *Build) {
b.BuildType = 1
}
}
func WithDebug(enable bool) GocOption {
return func(b *Build) {
b.Debug = enable
}
}