diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2003-09-05 15:15:43 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2003-09-05 15:15:43 +0000 |
commit | 44785befeabd09d5d34f33b33783c0ec54f06a1f (patch) | |
tree | 56830470411bdaf525d1f4c489b120125efb9097 /lib/optparse.rb | |
parent | 01e3a55648559ba3d54cdf72d5c55f71a41e69e9 (diff) |
* lib/optparse.rb (OptionParser#order, #permute, #parse): allow an
array as argument.
* test/ruby/test_*.rb: moved invariants to left side in
assert_equal, and use assert_nil, assert_raises and so on.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4516 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/optparse.rb')
-rw-r--r-- | lib/optparse.rb | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/lib/optparse.rb b/lib/optparse.rb index 83f2f7bdcc..d17bf75404 100644 --- a/lib/optparse.rb +++ b/lib/optparse.rb @@ -801,6 +801,14 @@ Default options, which never appear in option summary. end end + def warn(mesg = $!) + super(program_name + ': ' + mesg) + end + + def abort(mesg = $!) + super(program_name + ': ' + mesg) + end + =begin --- OptionParser#top Subject of ((<on>))/((<on_head>)), ((<accept>))/((<reject>)). @@ -1120,7 +1128,10 @@ Default options, which never appear in option summary. : (({block})) called with each non-option argument. =end #'#"#`# - def order(*argv, &block) order!(argv, &block) end + def order(*argv, &block) + argv = argv[0].dup if argv.size == 1 and Array === argv[0] + order!(argv, &block) + end def order!(argv = ARGV, &nonopt) opt, arg, sw, val, rest = nil @@ -1198,6 +1209,7 @@ Default options, which never appear in option summary. command line arguments to be parsed. =end #'#"#`# def permute(*argv) + argv = argv[0].dup if argv.size == 1 and Array === argv[0] permute!(argv) end @@ -1223,6 +1235,7 @@ Default options, which never appear in option summary. command line arguments to be parsed. =end #'#"#`# def parse(*argv) + argv = argv[0].dup if argv.size == 1 and Array === argv[0] parse!(argv) end @@ -1607,7 +1620,7 @@ Extends command line arguments array to parse itself. begin yield @optparse rescue ParseError - warn @optparse.program_name + ': ' + $! + @optparse.warn $! nil end end |