aboutsummaryrefslogtreecommitdiff
path: root/vendor/github.com/pborman/getopt/v2/var.go
diff options
context:
space:
mode:
authorSlack Coder <slackcoder@server.ky>2023-10-18 17:27:00 -0500
committerSlack Coder <slackcoder@server.ky>2023-10-18 17:27:00 -0500
commit2be3a82f3a801a84c98a4de9c818ce8b0497135b (patch)
tree9fb89a6b10fddbb1560d895215b445813d3ea28c /vendor/github.com/pborman/getopt/v2/var.go
parent2fda2161877e61e16b7f208ba1f92f650776cbe2 (diff)
downloadpkgtools-go-todo.tar.xz
move todos to project roottodo
Diffstat (limited to 'vendor/github.com/pborman/getopt/v2/var.go')
-rw-r--r--vendor/github.com/pborman/getopt/v2/var.go100
1 files changed, 0 insertions, 100 deletions
diff --git a/vendor/github.com/pborman/getopt/v2/var.go b/vendor/github.com/pborman/getopt/v2/var.go
deleted file mode 100644
index c60a9d2..0000000
--- a/vendor/github.com/pborman/getopt/v2/var.go
+++ /dev/null
@@ -1,100 +0,0 @@
-// Copyright 2017 Google Inc. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-package getopt
-
-import (
- "fmt"
- "runtime"
- "strings"
-)
-
-// Value is the interface to the dynamic value stored in a flag. Flags of type
-// Value are declared using the Flag and FlagLong functions.
-type Value interface {
- // Set converts value into the appropriate type and assigns it to the
- // receiver value. Option details are provided via opt (such as the
- // flags name).
- //
- // Set is used to reset the value of an option to its default value
- // (which is stored in string form internally).
- Set(value string, opt Option) error
-
- // String returns the value of the flag as a string.
- String() string
-}
-
-var thisPackage string
-
-// init initializes thisPackage to our full package with the trailing .
-// included.
-func init() {
- pc, _, _, ok := runtime.Caller(0)
- if !ok {
- return
- }
- f := runtime.FuncForPC(pc)
- if f == nil {
- return
- }
- thisPackage = f.Name()
- x := strings.LastIndex(thisPackage, "/")
- if x < 0 {
- return
- }
- y := strings.Index(thisPackage[x:], ".")
- if y < 0 {
- return
- }
- // thisPackage includes the trailing . after the package name.
- thisPackage = thisPackage[:x+y+1]
-}
-
-// calledFrom returns a string containing the file and linenumber of the first
-// stack frame above us that is not part of this package and is not a test.
-// This is used to determine where a flag was initialized.
-func calledFrom() string {
- for i := 2; ; i++ {
- pc, file, line, ok := runtime.Caller(i)
- if !ok {
- return ""
- }
- if !strings.HasSuffix(file, "_test.go") {
- f := runtime.FuncForPC(pc)
- if f != nil && strings.HasPrefix(f.Name(), thisPackage) {
- continue
- }
- }
- return fmt.Sprintf("%s:%d", file, line)
- }
-}
-
-func (s *Set) addFlag(p Value, name string, short rune, helpvalue ...string) Option {
- opt := &option{
- short: short,
- long: name,
- value: p,
- defval: p.String(),
- }
-
- switch len(helpvalue) {
- case 2:
- opt.name = helpvalue[1]
- fallthrough
- case 1:
- opt.help = helpvalue[0]
- case 0:
- default:
- panic("Too many strings for String helpvalue")
- }
- if where := calledFrom(); where != "" {
- opt.where = where
- }
- if opt.short == 0 && opt.long == "" {
- fmt.Fprintf(stderr, opt.where+": no short or long option given")
- exit(1)
- }
- s.AddOption(opt)
- return opt
-}