summaryrefslogtreecommitdiff
path: root/structs.go
blob: 40912f43fdfa65de9a8eb9682a9c9eb32067e617 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
package argvpb

// try this struct out (?)
var me *AutoArgs

var PB *Argv

// this is a work in progress
type AutoArgs struct {
	pb            *Argv                           // the protobuf for the current process
	all           *Argvs                          // the history of argv
	last          *Argv                           // the pb from the last time the user tried autocomplete
	Err           error                           // store any errors from argv
	debug         bool                            // is dubugging on?
	setupAuto     bool                            // do shell autocomplete setup
	isAuto        bool                            // try to do autocomplete
	id            int                             // should be unique
	Argv          func([]string)                  // the function for shell autocomplete
	initArgvFunc  func() (string, string, string) // this is required. gets APPNAME, BUILDTIME & VERSION
	initGuiFunc   func() error                    // this is required for 'gui' args to work
	mustParseFunc func() error                    // calls go-arg.MustParse()
	examples      func() string                   // some examples
	appExit       func()                          // app Exit()
	buildtime     func() (string, string)         // some examples
	autoFunc      func(*Argv)                     // also a function for autocomplete
	guiFunc       func() error                    // enables Gui functions
}