first commit
This commit is contained in:
35
input/option/helpers.go
Normal file
35
input/option/helpers.go
Normal file
@@ -0,0 +1,35 @@
|
||||
package option
|
||||
|
||||
import "gitoa.ru/go-4devs/console/input"
|
||||
|
||||
func Bool(name, description string, opts ...func(*input.Option)) input.Option {
|
||||
return input.NewOption(name, description, append(opts, Value(input.ValueBool))...)
|
||||
}
|
||||
|
||||
func Duration(name, description string, opts ...func(*input.Option)) input.Option {
|
||||
return input.NewOption(name, description, append(opts, Value(input.ValueDuration))...)
|
||||
}
|
||||
|
||||
func Float64(name, description string, opts ...func(*input.Option)) input.Option {
|
||||
return input.NewOption(name, description, append(opts, Value(input.ValueFloat64))...)
|
||||
}
|
||||
|
||||
func Int(name, description string, opts ...func(*input.Option)) input.Option {
|
||||
return input.NewOption(name, description, append(opts, Value(input.ValueInt))...)
|
||||
}
|
||||
|
||||
func Int64(name, description string, opts ...func(*input.Option)) input.Option {
|
||||
return input.NewOption(name, description, append(opts, Value(input.ValueInt64))...)
|
||||
}
|
||||
|
||||
func Time(name, description string, opts ...func(*input.Option)) input.Option {
|
||||
return input.NewOption(name, description, append(opts, Value(input.ValueTime))...)
|
||||
}
|
||||
|
||||
func Uint(name, description string, opts ...func(*input.Option)) input.Option {
|
||||
return input.NewOption(name, description, append(opts, Value(input.ValueUint))...)
|
||||
}
|
||||
|
||||
func Uint64(name, descriontion string, opts ...func(*input.Option)) input.Option {
|
||||
return input.NewOption(name, descriontion, append(opts, Value(input.ValueUint64))...)
|
||||
}
|
||||
44
input/option/option.go
Normal file
44
input/option/option.go
Normal file
@@ -0,0 +1,44 @@
|
||||
package option
|
||||
|
||||
import (
|
||||
"gitoa.ru/go-4devs/console/input"
|
||||
"gitoa.ru/go-4devs/console/input/value"
|
||||
)
|
||||
|
||||
func Required(o *input.Option) {
|
||||
o.Flag |= input.ValueRequired
|
||||
}
|
||||
|
||||
func Default(in interface{}) func(*input.Option) {
|
||||
return func(o *input.Option) {
|
||||
o.Default = value.New(in)
|
||||
}
|
||||
}
|
||||
|
||||
func Short(s string) func(*input.Option) {
|
||||
return func(o *input.Option) {
|
||||
o.Short = s
|
||||
}
|
||||
}
|
||||
|
||||
func Array(o *input.Option) {
|
||||
o.Flag |= input.ValueArray
|
||||
}
|
||||
|
||||
func Value(flag input.Flag) func(*input.Option) {
|
||||
return func(o *input.Option) {
|
||||
o.Flag |= flag
|
||||
}
|
||||
}
|
||||
|
||||
func Flag(in input.Flag) func(*input.Option) {
|
||||
return func(o *input.Option) {
|
||||
o.Flag = in
|
||||
}
|
||||
}
|
||||
|
||||
func Valid(f ...func(input.Value) error) func(*input.Option) {
|
||||
return func(o *input.Option) {
|
||||
o.Valid = f
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user