You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
28 lines
436 B
Go
28 lines
436 B
Go
package components
|
|
|
|
import "github.com/urfave/cli/v2"
|
|
|
|
func MergeFlag(flags []cli.Flag, flag cli.Flag) []cli.Flag {
|
|
has := false
|
|
for _, f := range flags {
|
|
if f.Names()[0] == flag.Names()[0] {
|
|
has = true
|
|
break
|
|
}
|
|
}
|
|
|
|
if has {
|
|
return flags
|
|
}
|
|
|
|
return append(flags, flag)
|
|
}
|
|
|
|
func MergeFlags(flags []cli.Flag, newFlags ...cli.Flag) []cli.Flag {
|
|
for _, f := range newFlags {
|
|
flags = MergeFlag(flags, f)
|
|
}
|
|
|
|
return flags
|
|
}
|