Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
songlinfeng
container-toolkit
Commits
d7e13eb9
Commit
d7e13eb9
authored
Oct 22, 2025
by
songlinfeng
Browse files
add dtk-container-toolkit
parent
fcdba4f3
Changes
345
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
712 additions
and
0 deletions
+712
-0
vendor/github.com/urfave/cli/v2/flag_uint.go
vendor/github.com/urfave/cli/v2/flag_uint.go
+108
-0
vendor/github.com/urfave/cli/v2/flag_uint64.go
vendor/github.com/urfave/cli/v2/flag_uint64.go
+108
-0
vendor/github.com/urfave/cli/v2/flag_uint64_slice.go
vendor/github.com/urfave/cli/v2/flag_uint64_slice.go
+219
-0
vendor/github.com/urfave/cli/v2/flag_uint_slice.go
vendor/github.com/urfave/cli/v2/flag_uint_slice.go
+230
-0
vendor/github.com/urfave/cli/v2/funcs.go
vendor/github.com/urfave/cli/v2/funcs.go
+47
-0
No files found.
Too many changes to show.
To preserve performance only
345 of 345+
files are displayed.
Plain diff
Email patch
vendor/github.com/urfave/cli/v2/flag_uint.go
0 → 100644
View file @
d7e13eb9
package
cli
import
(
"flag"
"fmt"
"strconv"
)
// TakesValue returns true of the flag takes a value, otherwise false
func
(
f
*
UintFlag
)
TakesValue
()
bool
{
return
true
}
// GetUsage returns the usage string for the flag
func
(
f
*
UintFlag
)
GetUsage
()
string
{
return
f
.
Usage
}
// GetCategory returns the category for the flag
func
(
f
*
UintFlag
)
GetCategory
()
string
{
return
f
.
Category
}
// Apply populates the flag given the flag set and environment
func
(
f
*
UintFlag
)
Apply
(
set
*
flag
.
FlagSet
)
error
{
// set default value so that environment wont be able to overwrite it
f
.
defaultValue
=
f
.
Value
f
.
defaultValueSet
=
true
if
val
,
source
,
found
:=
flagFromEnvOrFile
(
f
.
EnvVars
,
f
.
FilePath
);
found
{
if
val
!=
""
{
valInt
,
err
:=
strconv
.
ParseUint
(
val
,
f
.
Base
,
64
)
if
err
!=
nil
{
return
fmt
.
Errorf
(
"could not parse %q as uint value from %s for flag %s: %s"
,
val
,
source
,
f
.
Name
,
err
)
}
f
.
Value
=
uint
(
valInt
)
f
.
HasBeenSet
=
true
}
}
for
_
,
name
:=
range
f
.
Names
()
{
if
f
.
Destination
!=
nil
{
set
.
UintVar
(
f
.
Destination
,
name
,
f
.
Value
,
f
.
Usage
)
continue
}
set
.
Uint
(
name
,
f
.
Value
,
f
.
Usage
)
}
return
nil
}
// RunAction executes flag action if set
func
(
f
*
UintFlag
)
RunAction
(
c
*
Context
)
error
{
if
f
.
Action
!=
nil
{
return
f
.
Action
(
c
,
c
.
Uint
(
f
.
Name
))
}
return
nil
}
// GetValue returns the flags value as string representation and an empty
// string if the flag takes no value at all.
func
(
f
*
UintFlag
)
GetValue
()
string
{
return
fmt
.
Sprintf
(
"%d"
,
f
.
Value
)
}
// GetDefaultText returns the default text for this flag
func
(
f
*
UintFlag
)
GetDefaultText
()
string
{
if
f
.
DefaultText
!=
""
{
return
f
.
DefaultText
}
if
f
.
defaultValueSet
{
return
fmt
.
Sprintf
(
"%d"
,
f
.
defaultValue
)
}
return
fmt
.
Sprintf
(
"%d"
,
f
.
Value
)
}
// GetEnvVars returns the env vars for this flag
func
(
f
*
UintFlag
)
GetEnvVars
()
[]
string
{
return
f
.
EnvVars
}
// Get returns the flag’s value in the given Context.
func
(
f
*
UintFlag
)
Get
(
ctx
*
Context
)
uint
{
return
ctx
.
Uint
(
f
.
Name
)
}
// Uint looks up the value of a local UintFlag, returns
// 0 if not found
func
(
cCtx
*
Context
)
Uint
(
name
string
)
uint
{
if
fs
:=
cCtx
.
lookupFlagSet
(
name
);
fs
!=
nil
{
return
lookupUint
(
name
,
fs
)
}
return
0
}
func
lookupUint
(
name
string
,
set
*
flag
.
FlagSet
)
uint
{
f
:=
set
.
Lookup
(
name
)
if
f
!=
nil
{
parsed
,
err
:=
strconv
.
ParseUint
(
f
.
Value
.
String
(),
0
,
64
)
if
err
!=
nil
{
return
0
}
return
uint
(
parsed
)
}
return
0
}
vendor/github.com/urfave/cli/v2/flag_uint64.go
0 → 100644
View file @
d7e13eb9
package
cli
import
(
"flag"
"fmt"
"strconv"
)
// TakesValue returns true of the flag takes a value, otherwise false
func
(
f
*
Uint64Flag
)
TakesValue
()
bool
{
return
true
}
// GetUsage returns the usage string for the flag
func
(
f
*
Uint64Flag
)
GetUsage
()
string
{
return
f
.
Usage
}
// GetCategory returns the category for the flag
func
(
f
*
Uint64Flag
)
GetCategory
()
string
{
return
f
.
Category
}
// Apply populates the flag given the flag set and environment
func
(
f
*
Uint64Flag
)
Apply
(
set
*
flag
.
FlagSet
)
error
{
// set default value so that environment wont be able to overwrite it
f
.
defaultValue
=
f
.
Value
f
.
defaultValueSet
=
true
if
val
,
source
,
found
:=
flagFromEnvOrFile
(
f
.
EnvVars
,
f
.
FilePath
);
found
{
if
val
!=
""
{
valInt
,
err
:=
strconv
.
ParseUint
(
val
,
f
.
Base
,
64
)
if
err
!=
nil
{
return
fmt
.
Errorf
(
"could not parse %q as uint64 value from %s for flag %s: %s"
,
val
,
source
,
f
.
Name
,
err
)
}
f
.
Value
=
valInt
f
.
HasBeenSet
=
true
}
}
for
_
,
name
:=
range
f
.
Names
()
{
if
f
.
Destination
!=
nil
{
set
.
Uint64Var
(
f
.
Destination
,
name
,
f
.
Value
,
f
.
Usage
)
continue
}
set
.
Uint64
(
name
,
f
.
Value
,
f
.
Usage
)
}
return
nil
}
// RunAction executes flag action if set
func
(
f
*
Uint64Flag
)
RunAction
(
c
*
Context
)
error
{
if
f
.
Action
!=
nil
{
return
f
.
Action
(
c
,
c
.
Uint64
(
f
.
Name
))
}
return
nil
}
// GetValue returns the flags value as string representation and an empty
// string if the flag takes no value at all.
func
(
f
*
Uint64Flag
)
GetValue
()
string
{
return
fmt
.
Sprintf
(
"%d"
,
f
.
Value
)
}
// GetDefaultText returns the default text for this flag
func
(
f
*
Uint64Flag
)
GetDefaultText
()
string
{
if
f
.
DefaultText
!=
""
{
return
f
.
DefaultText
}
if
f
.
defaultValueSet
{
return
fmt
.
Sprintf
(
"%d"
,
f
.
defaultValue
)
}
return
fmt
.
Sprintf
(
"%d"
,
f
.
Value
)
}
// GetEnvVars returns the env vars for this flag
func
(
f
*
Uint64Flag
)
GetEnvVars
()
[]
string
{
return
f
.
EnvVars
}
// Get returns the flag’s value in the given Context.
func
(
f
*
Uint64Flag
)
Get
(
ctx
*
Context
)
uint64
{
return
ctx
.
Uint64
(
f
.
Name
)
}
// Uint64 looks up the value of a local Uint64Flag, returns
// 0 if not found
func
(
cCtx
*
Context
)
Uint64
(
name
string
)
uint64
{
if
fs
:=
cCtx
.
lookupFlagSet
(
name
);
fs
!=
nil
{
return
lookupUint64
(
name
,
fs
)
}
return
0
}
func
lookupUint64
(
name
string
,
set
*
flag
.
FlagSet
)
uint64
{
f
:=
set
.
Lookup
(
name
)
if
f
!=
nil
{
parsed
,
err
:=
strconv
.
ParseUint
(
f
.
Value
.
String
(),
0
,
64
)
if
err
!=
nil
{
return
0
}
return
parsed
}
return
0
}
vendor/github.com/urfave/cli/v2/flag_uint64_slice.go
0 → 100644
View file @
d7e13eb9
package
cli
import
(
"encoding/json"
"flag"
"fmt"
"strconv"
"strings"
)
// Uint64Slice wraps []int64 to satisfy flag.Value
type
Uint64Slice
struct
{
slice
[]
uint64
separator
separatorSpec
hasBeenSet
bool
}
// NewUint64Slice makes an *Uint64Slice with default values
func
NewUint64Slice
(
defaults
...
uint64
)
*
Uint64Slice
{
return
&
Uint64Slice
{
slice
:
append
([]
uint64
{},
defaults
...
)}
}
// clone allocate a copy of self object
func
(
i
*
Uint64Slice
)
clone
()
*
Uint64Slice
{
n
:=
&
Uint64Slice
{
slice
:
make
([]
uint64
,
len
(
i
.
slice
)),
hasBeenSet
:
i
.
hasBeenSet
,
}
copy
(
n
.
slice
,
i
.
slice
)
return
n
}
// Set parses the value into an integer and appends it to the list of values
func
(
i
*
Uint64Slice
)
Set
(
value
string
)
error
{
if
!
i
.
hasBeenSet
{
i
.
slice
=
[]
uint64
{}
i
.
hasBeenSet
=
true
}
if
strings
.
HasPrefix
(
value
,
slPfx
)
{
// Deserializing assumes overwrite
_
=
json
.
Unmarshal
([]
byte
(
strings
.
Replace
(
value
,
slPfx
,
""
,
1
)),
&
i
.
slice
)
i
.
hasBeenSet
=
true
return
nil
}
for
_
,
s
:=
range
i
.
separator
.
flagSplitMultiValues
(
value
)
{
tmp
,
err
:=
strconv
.
ParseUint
(
strings
.
TrimSpace
(
s
),
0
,
64
)
if
err
!=
nil
{
return
err
}
i
.
slice
=
append
(
i
.
slice
,
tmp
)
}
return
nil
}
func
(
i
*
Uint64Slice
)
WithSeparatorSpec
(
spec
separatorSpec
)
{
i
.
separator
=
spec
}
// String returns a readable representation of this value (for usage defaults)
func
(
i
*
Uint64Slice
)
String
()
string
{
v
:=
i
.
slice
if
v
==
nil
{
// treat nil the same as zero length non-nil
v
=
make
([]
uint64
,
0
)
}
str
:=
fmt
.
Sprintf
(
"%d"
,
v
)
str
=
strings
.
Replace
(
str
,
" "
,
", "
,
-
1
)
str
=
strings
.
Replace
(
str
,
"["
,
"{"
,
-
1
)
str
=
strings
.
Replace
(
str
,
"]"
,
"}"
,
-
1
)
return
fmt
.
Sprintf
(
"[]uint64%s"
,
str
)
}
// Serialize allows Uint64Slice to fulfill Serializer
func
(
i
*
Uint64Slice
)
Serialize
()
string
{
jsonBytes
,
_
:=
json
.
Marshal
(
i
.
slice
)
return
fmt
.
Sprintf
(
"%s%s"
,
slPfx
,
string
(
jsonBytes
))
}
// Value returns the slice of ints set by this flag
func
(
i
*
Uint64Slice
)
Value
()
[]
uint64
{
return
i
.
slice
}
// Get returns the slice of ints set by this flag
func
(
i
*
Uint64Slice
)
Get
()
interface
{}
{
return
*
i
}
// String returns a readable representation of this value
// (for usage defaults)
func
(
f
*
Uint64SliceFlag
)
String
()
string
{
return
FlagStringer
(
f
)
}
// TakesValue returns true of the flag takes a value, otherwise false
func
(
f
*
Uint64SliceFlag
)
TakesValue
()
bool
{
return
true
}
// GetUsage returns the usage string for the flag
func
(
f
*
Uint64SliceFlag
)
GetUsage
()
string
{
return
f
.
Usage
}
// GetCategory returns the category for the flag
func
(
f
*
Uint64SliceFlag
)
GetCategory
()
string
{
return
f
.
Category
}
// GetValue returns the flags value as string representation and an empty
// string if the flag takes no value at all.
func
(
f
*
Uint64SliceFlag
)
GetValue
()
string
{
var
defaultVals
[]
string
if
f
.
Value
!=
nil
&&
len
(
f
.
Value
.
Value
())
>
0
{
for
_
,
i
:=
range
f
.
Value
.
Value
()
{
defaultVals
=
append
(
defaultVals
,
strconv
.
FormatUint
(
i
,
10
))
}
}
return
strings
.
Join
(
defaultVals
,
", "
)
}
// GetDefaultText returns the default text for this flag
func
(
f
*
Uint64SliceFlag
)
GetDefaultText
()
string
{
if
f
.
DefaultText
!=
""
{
return
f
.
DefaultText
}
return
f
.
GetValue
()
}
// GetEnvVars returns the env vars for this flag
func
(
f
*
Uint64SliceFlag
)
GetEnvVars
()
[]
string
{
return
f
.
EnvVars
}
// IsSliceFlag implements DocGenerationSliceFlag.
func
(
f
*
Uint64SliceFlag
)
IsSliceFlag
()
bool
{
return
true
}
// Apply populates the flag given the flag set and environment
func
(
f
*
Uint64SliceFlag
)
Apply
(
set
*
flag
.
FlagSet
)
error
{
// apply any default
if
f
.
Destination
!=
nil
&&
f
.
Value
!=
nil
{
f
.
Destination
.
slice
=
make
([]
uint64
,
len
(
f
.
Value
.
slice
))
copy
(
f
.
Destination
.
slice
,
f
.
Value
.
slice
)
}
// resolve setValue (what we will assign to the set)
var
setValue
*
Uint64Slice
switch
{
case
f
.
Destination
!=
nil
:
setValue
=
f
.
Destination
case
f
.
Value
!=
nil
:
setValue
=
f
.
Value
.
clone
()
default
:
setValue
=
new
(
Uint64Slice
)
setValue
.
WithSeparatorSpec
(
f
.
separator
)
}
if
val
,
source
,
ok
:=
flagFromEnvOrFile
(
f
.
EnvVars
,
f
.
FilePath
);
ok
&&
val
!=
""
{
for
_
,
s
:=
range
f
.
separator
.
flagSplitMultiValues
(
val
)
{
if
err
:=
setValue
.
Set
(
strings
.
TrimSpace
(
s
));
err
!=
nil
{
return
fmt
.
Errorf
(
"could not parse %q as uint64 slice value from %s for flag %s: %s"
,
val
,
source
,
f
.
Name
,
err
)
}
}
// Set this to false so that we reset the slice if we then set values from
// flags that have already been set by the environment.
setValue
.
hasBeenSet
=
false
f
.
HasBeenSet
=
true
}
for
_
,
name
:=
range
f
.
Names
()
{
set
.
Var
(
setValue
,
name
,
f
.
Usage
)
}
return
nil
}
func
(
f
*
Uint64SliceFlag
)
WithSeparatorSpec
(
spec
separatorSpec
)
{
f
.
separator
=
spec
}
// Get returns the flag’s value in the given Context.
func
(
f
*
Uint64SliceFlag
)
Get
(
ctx
*
Context
)
[]
uint64
{
return
ctx
.
Uint64Slice
(
f
.
Name
)
}
// RunAction executes flag action if set
func
(
f
*
Uint64SliceFlag
)
RunAction
(
c
*
Context
)
error
{
if
f
.
Action
!=
nil
{
return
f
.
Action
(
c
,
c
.
Uint64Slice
(
f
.
Name
))
}
return
nil
}
// Uint64Slice looks up the value of a local Uint64SliceFlag, returns
// nil if not found
func
(
cCtx
*
Context
)
Uint64Slice
(
name
string
)
[]
uint64
{
if
fs
:=
cCtx
.
lookupFlagSet
(
name
);
fs
!=
nil
{
return
lookupUint64Slice
(
name
,
fs
)
}
return
nil
}
func
lookupUint64Slice
(
name
string
,
set
*
flag
.
FlagSet
)
[]
uint64
{
f
:=
set
.
Lookup
(
name
)
if
f
!=
nil
{
if
slice
,
ok
:=
unwrapFlagValue
(
f
.
Value
)
.
(
*
Uint64Slice
);
ok
{
return
slice
.
Value
()
}
}
return
nil
}
vendor/github.com/urfave/cli/v2/flag_uint_slice.go
0 → 100644
View file @
d7e13eb9
package
cli
import
(
"encoding/json"
"flag"
"fmt"
"strconv"
"strings"
)
// UintSlice wraps []int to satisfy flag.Value
type
UintSlice
struct
{
slice
[]
uint
separator
separatorSpec
hasBeenSet
bool
}
// NewUintSlice makes an *UintSlice with default values
func
NewUintSlice
(
defaults
...
uint
)
*
UintSlice
{
return
&
UintSlice
{
slice
:
append
([]
uint
{},
defaults
...
)}
}
// clone allocate a copy of self object
func
(
i
*
UintSlice
)
clone
()
*
UintSlice
{
n
:=
&
UintSlice
{
slice
:
make
([]
uint
,
len
(
i
.
slice
)),
hasBeenSet
:
i
.
hasBeenSet
,
}
copy
(
n
.
slice
,
i
.
slice
)
return
n
}
// TODO: Consistently have specific Set function for Int64 and Float64 ?
// SetInt directly adds an integer to the list of values
func
(
i
*
UintSlice
)
SetUint
(
value
uint
)
{
if
!
i
.
hasBeenSet
{
i
.
slice
=
[]
uint
{}
i
.
hasBeenSet
=
true
}
i
.
slice
=
append
(
i
.
slice
,
value
)
}
// Set parses the value into an integer and appends it to the list of values
func
(
i
*
UintSlice
)
Set
(
value
string
)
error
{
if
!
i
.
hasBeenSet
{
i
.
slice
=
[]
uint
{}
i
.
hasBeenSet
=
true
}
if
strings
.
HasPrefix
(
value
,
slPfx
)
{
// Deserializing assumes overwrite
_
=
json
.
Unmarshal
([]
byte
(
strings
.
Replace
(
value
,
slPfx
,
""
,
1
)),
&
i
.
slice
)
i
.
hasBeenSet
=
true
return
nil
}
for
_
,
s
:=
range
i
.
separator
.
flagSplitMultiValues
(
value
)
{
tmp
,
err
:=
strconv
.
ParseUint
(
strings
.
TrimSpace
(
s
),
0
,
32
)
if
err
!=
nil
{
return
err
}
i
.
slice
=
append
(
i
.
slice
,
uint
(
tmp
))
}
return
nil
}
func
(
i
*
UintSlice
)
WithSeparatorSpec
(
spec
separatorSpec
)
{
i
.
separator
=
spec
}
// String returns a readable representation of this value (for usage defaults)
func
(
i
*
UintSlice
)
String
()
string
{
v
:=
i
.
slice
if
v
==
nil
{
// treat nil the same as zero length non-nil
v
=
make
([]
uint
,
0
)
}
str
:=
fmt
.
Sprintf
(
"%d"
,
v
)
str
=
strings
.
Replace
(
str
,
" "
,
", "
,
-
1
)
str
=
strings
.
Replace
(
str
,
"["
,
"{"
,
-
1
)
str
=
strings
.
Replace
(
str
,
"]"
,
"}"
,
-
1
)
return
fmt
.
Sprintf
(
"[]uint%s"
,
str
)
}
// Serialize allows UintSlice to fulfill Serializer
func
(
i
*
UintSlice
)
Serialize
()
string
{
jsonBytes
,
_
:=
json
.
Marshal
(
i
.
slice
)
return
fmt
.
Sprintf
(
"%s%s"
,
slPfx
,
string
(
jsonBytes
))
}
// Value returns the slice of ints set by this flag
func
(
i
*
UintSlice
)
Value
()
[]
uint
{
return
i
.
slice
}
// Get returns the slice of ints set by this flag
func
(
i
*
UintSlice
)
Get
()
interface
{}
{
return
*
i
}
// String returns a readable representation of this value
// (for usage defaults)
func
(
f
*
UintSliceFlag
)
String
()
string
{
return
FlagStringer
(
f
)
}
// TakesValue returns true of the flag takes a value, otherwise false
func
(
f
*
UintSliceFlag
)
TakesValue
()
bool
{
return
true
}
// GetUsage returns the usage string for the flag
func
(
f
*
UintSliceFlag
)
GetUsage
()
string
{
return
f
.
Usage
}
// GetCategory returns the category for the flag
func
(
f
*
UintSliceFlag
)
GetCategory
()
string
{
return
f
.
Category
}
// GetValue returns the flags value as string representation and an empty
// string if the flag takes no value at all.
func
(
f
*
UintSliceFlag
)
GetValue
()
string
{
var
defaultVals
[]
string
if
f
.
Value
!=
nil
&&
len
(
f
.
Value
.
Value
())
>
0
{
for
_
,
i
:=
range
f
.
Value
.
Value
()
{
defaultVals
=
append
(
defaultVals
,
strconv
.
FormatUint
(
uint64
(
i
),
10
))
}
}
return
strings
.
Join
(
defaultVals
,
", "
)
}
// GetDefaultText returns the default text for this flag
func
(
f
*
UintSliceFlag
)
GetDefaultText
()
string
{
if
f
.
DefaultText
!=
""
{
return
f
.
DefaultText
}
return
f
.
GetValue
()
}
// GetEnvVars returns the env vars for this flag
func
(
f
*
UintSliceFlag
)
GetEnvVars
()
[]
string
{
return
f
.
EnvVars
}
// IsSliceFlag implements DocGenerationSliceFlag.
func
(
f
*
UintSliceFlag
)
IsSliceFlag
()
bool
{
return
true
}
// Apply populates the flag given the flag set and environment
func
(
f
*
UintSliceFlag
)
Apply
(
set
*
flag
.
FlagSet
)
error
{
// apply any default
if
f
.
Destination
!=
nil
&&
f
.
Value
!=
nil
{
f
.
Destination
.
slice
=
make
([]
uint
,
len
(
f
.
Value
.
slice
))
copy
(
f
.
Destination
.
slice
,
f
.
Value
.
slice
)
}
// resolve setValue (what we will assign to the set)
var
setValue
*
UintSlice
switch
{
case
f
.
Destination
!=
nil
:
setValue
=
f
.
Destination
case
f
.
Value
!=
nil
:
setValue
=
f
.
Value
.
clone
()
default
:
setValue
=
new
(
UintSlice
)
setValue
.
WithSeparatorSpec
(
f
.
separator
)
}
if
val
,
source
,
ok
:=
flagFromEnvOrFile
(
f
.
EnvVars
,
f
.
FilePath
);
ok
&&
val
!=
""
{
for
_
,
s
:=
range
f
.
separator
.
flagSplitMultiValues
(
val
)
{
if
err
:=
setValue
.
Set
(
strings
.
TrimSpace
(
s
));
err
!=
nil
{
return
fmt
.
Errorf
(
"could not parse %q as uint slice value from %s for flag %s: %s"
,
val
,
source
,
f
.
Name
,
err
)
}
}
// Set this to false so that we reset the slice if we then set values from
// flags that have already been set by the environment.
setValue
.
hasBeenSet
=
false
f
.
HasBeenSet
=
true
}
for
_
,
name
:=
range
f
.
Names
()
{
set
.
Var
(
setValue
,
name
,
f
.
Usage
)
}
return
nil
}
func
(
f
*
UintSliceFlag
)
WithSeparatorSpec
(
spec
separatorSpec
)
{
f
.
separator
=
spec
}
// Get returns the flag’s value in the given Context.
func
(
f
*
UintSliceFlag
)
Get
(
ctx
*
Context
)
[]
uint
{
return
ctx
.
UintSlice
(
f
.
Name
)
}
// RunAction executes flag action if set
func
(
f
*
UintSliceFlag
)
RunAction
(
c
*
Context
)
error
{
if
f
.
Action
!=
nil
{
return
f
.
Action
(
c
,
c
.
UintSlice
(
f
.
Name
))
}
return
nil
}
// UintSlice looks up the value of a local UintSliceFlag, returns
// nil if not found
func
(
cCtx
*
Context
)
UintSlice
(
name
string
)
[]
uint
{
if
fs
:=
cCtx
.
lookupFlagSet
(
name
);
fs
!=
nil
{
return
lookupUintSlice
(
name
,
fs
)
}
return
nil
}
func
lookupUintSlice
(
name
string
,
set
*
flag
.
FlagSet
)
[]
uint
{
f
:=
set
.
Lookup
(
name
)
if
f
!=
nil
{
if
slice
,
ok
:=
unwrapFlagValue
(
f
.
Value
)
.
(
*
UintSlice
);
ok
{
return
slice
.
Value
()
}
}
return
nil
}
vendor/github.com/urfave/cli/v2/funcs.go
0 → 100644
View file @
d7e13eb9
package
cli
// BashCompleteFunc is an action to execute when the shell completion flag is set
type
BashCompleteFunc
func
(
*
Context
)
// BeforeFunc is an action to execute before any subcommands are run, but after
// the context is ready if a non-nil error is returned, no subcommands are run
type
BeforeFunc
func
(
*
Context
)
error
// AfterFunc is an action to execute after any subcommands are run, but after the
// subcommand has finished it is run even if Action() panics
type
AfterFunc
func
(
*
Context
)
error
// ActionFunc is the action to execute when no subcommands are specified
type
ActionFunc
func
(
*
Context
)
error
// CommandNotFoundFunc is executed if the proper command cannot be found
type
CommandNotFoundFunc
func
(
*
Context
,
string
)
// OnUsageErrorFunc is executed if a usage error occurs. This is useful for displaying
// customized usage error messages. This function is able to replace the
// original error messages. If this function is not set, the "Incorrect usage"
// is displayed and the execution is interrupted.
type
OnUsageErrorFunc
func
(
cCtx
*
Context
,
err
error
,
isSubcommand
bool
)
error
// InvalidFlagAccessFunc is executed when an invalid flag is accessed from the context.
type
InvalidFlagAccessFunc
func
(
*
Context
,
string
)
// ExitErrHandlerFunc is executed if provided in order to handle exitError values
// returned by Actions and Before/After functions.
type
ExitErrHandlerFunc
func
(
cCtx
*
Context
,
err
error
)
// FlagStringFunc is used by the help generation to display a flag, which is
// expected to be a single line.
type
FlagStringFunc
func
(
Flag
)
string
// FlagNamePrefixFunc is used by the default FlagStringFunc to create prefix
// text for a flag's full name.
type
FlagNamePrefixFunc
func
(
fullName
[]
string
,
placeholder
string
)
string
// FlagEnvHintFunc is used by the default FlagStringFunc to annotate flag help
// with the environment variable details.
type
FlagEnvHintFunc
func
(
envVars
[]
string
,
str
string
)
string
// FlagFileHintFunc is used by the default FlagStringFunc to annotate flag help
// with the file path details.
type
FlagFileHintFunc
func
(
filePath
,
str
string
)
string
Prev
1
…
14
15
16
17
18
Next
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment