Wrapper for command line parser
:args |
[R] |
|
:args |
[R] |
|
:banner |
[R] |
|
:hopt |
[R] |
|
:vals |
[R] |
|
Singleton
Initialize args for new that we can't have because it's a singleton.
- usage
- top part of message shown for help option
- banner
- message shown for version and copyright info
# File queuemgr/queuemgr.rb, line 219
def Opts.set_text(usage, banner)
@@usage = usage
@@banner = banner
end
# File queuemgr/queuemgr.rb, line 224
def initialize()
@vals = Hash.new
@args = nil
@parser = OptionParser.new(@@usage, Width)
# set default values
@vals["v"] = false
@vals["myname"] = APPNAME
@vals.update(Config.instance.named)
# define program options
@parser.def_option("-h", "--help",
"Show this help.") {
show_help
}
@parser.def_option("-V", "--version",
"Show version and copyright.") {
show_banner
}
@parser.def_option("-v", "--verbose",
"Turn on verbose messages.") {
|v| @vals["v"] = true
}
end
- usage
- top part of message shown for help option
- banner
- message shown for version and copyright info
# File mkcddb/mkcddb.rb, line 196
def initialize(usage, banner)
@banner = banner
@args = nil
@opts = OptionParser.new(usage, Width)
@hopt = Hash.new
hopt["verbose"] = false
@opts.def_option("-h", "--help",
"Show this help.") {
print @opts; exit(0)
}
@opts.def_option("-V", "--version",
"Show version and copyright.") {
puts @banner; exit(0)
}
@opts.def_option("-v", "--verbose",
"Turn on verbose messages.") {
|verbose|
@hopt["verbose"] = true
}
end
- s
- name of env var to parse for command line options
# File queuemgr/queuemgr.rb, line 253
def env(s)
envopts = ENV[s] || ENV[s.upcase]
@parser.order(*Shellwords::shellwords(envopts)) if envopts
end
- av
- array of command line options, usually ARGV passed in,
in one form or another
# File queuemgr/queuemgr.rb, line 260
def parse(av)
@args = @parser.order(*av)
# other processing here
@args
end
# File queuemgr/queuemgr.rb, line 267
def show_help(rc = 0)
print @parser; exit(rc)
end
# File queuemgr/queuemgr.rb, line 272
def show_banner(rc = 0)
print @@banner; exit(rc)
end
- av
- array of command line options, usually ARGV
# File mkcddb/mkcddb.rb, line 222
def parse(av)
@args = @opts.order(*av)
end