1 Star 0 Fork 0

sqos/beats

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
flags.go 784 Bytes
一键复制 编辑 原始数据 按行查看 历史
package cfgfile
import (
"flag"
"strings"
)
type argList struct {
list []string
isDefault bool
f *flag.Flag
}
func flagArgList(name string, def string, usage string) *argList {
l := &argList{
list: []string{def},
isDefault: true,
}
flag.Var(l, name, usage)
l.f = flag.Lookup(name)
if l.f == nil {
panic("Failed to lookup registered flag")
}
return l
}
func (l *argList) SetDefault(v string) {
l.f.DefValue = v
l.list = []string{v}
l.isDefault = true
}
func (l *argList) String() string {
return strings.Join(l.list, ", ")
}
func (l *argList) Set(v string) error {
if l.isDefault {
l.list = []string{v}
} else {
l.list = append(l.list, v)
}
l.isDefault = false
return nil
}
func (l *argList) Get() interface{} {
return l.list
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/sqos/beats.git
git@gitee.com:sqos/beats.git
sqos
beats
beats
v5.5.2

搜索帮助