MCPcopy
hub / github.com/urfave/cli / Set

Method Set

flag_bool_with_inverse.go:117–146  ·  flag_bool_with_inverse.go::BoolWithInverseFlag.Set
(name, val string)

Source from the content-addressed store, hash-verified

115}
116
117func (bif *BoolWithInverseFlag) Set(name, val string) error {
118 if bif.count > 0 && bif.OnlyOnce {
119 return fmt.Errorf("can't duplicate this flag")
120 }
121
122 bif.hasBeenSet = true
123
124 if slices.Contains(append([]string{bif.Name}, bif.Aliases...), name) {
125 if bif.nset {
126 return fmt.Errorf("cannot set both flags `--%s` and `--%s`", bif.Name, bif.inversePrefix()+bif.Name)
127 }
128 if err := bif.value.Set(val); err != nil {
129 return err
130 }
131 bif.pset = true
132 } else {
133 if bif.pset {
134 return fmt.Errorf("cannot set both flags `--%s` and `--%s`", bif.Name, bif.inversePrefix()+bif.Name)
135 }
136 if err := bif.value.Set("false"); err != nil {
137 return err
138 }
139 bif.nset = true
140 }
141
142 if bif.Validator != nil {
143 return bif.Validator(bif.value.Get().(bool))
144 }
145 return nil
146}
147
148func (bif *BoolWithInverseFlag) Names() []string {
149 names := append([]string{bif.Name}, bif.Aliases...)

Callers 1

PostParseMethod · 0.95

Calls 3

inversePrefixMethod · 0.95
SetMethod · 0.65
GetMethod · 0.65

Tested by

no test coverage detected