summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog9
-rw-r--r--lib/optparse.rb14
2 files changed, 15 insertions, 8 deletions
diff --git a/ChangeLog b/ChangeLog
index 3be1d15b6a..8663949126 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,4 +1,11 @@
-Wed Aug 7 09:45:24 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
+Wed Aug 7 21:58:01 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
+
+ * optparse.rb (OptionParser::Completion::convert): returned all
+ values not first one.
+
+ * optparse.rb (OptionParser::Switch::parse): return values as is.
+
+ * optparse.rb (OptionParser::order): ditto.
* lib/optparse/uri.rb: require standard uri module. thanks to
Minero Aoki.
diff --git a/lib/optparse.rb b/lib/optparse.rb
index e4f0998fcf..f93000e855 100644
--- a/lib/optparse.rb
+++ b/lib/optparse.rb
@@ -106,7 +106,7 @@ Keyword completion module.
Extracts the first element from result of
((<OptionParser::Completion#complete>)).
=end #'#"#`#
- def convert(opt = nil, *val)
+ def convert(opt = nil, val = nil, *)
val
end
end
@@ -210,8 +210,8 @@ Individual switch class.
=end #'#"#`#
def parse(arg, *val)
if block
- *val = conv.yield(*val) if conv
- return arg, block, *val
+ val = conv.yield(*val) if conv
+ return arg, block, val
else
return arg, nil
end
@@ -1075,8 +1075,8 @@ Default options, which never appear in option summary.
raise $!.set_option(arg, true)
end
begin
- opt, sw, *val = sw.parse(rest, argv) {|*exc| raise(*exc)}
- sw.yield(*val) if sw
+ opt, sw, val = sw.parse(rest, argv) {|*exc| raise(*exc)}
+ sw.yield(val) if sw
rescue ParseError
raise $!.set_option(arg, rest)
end
@@ -1102,10 +1102,10 @@ Default options, which never appear in option summary.
raise $!.set_option(arg, true)
end
begin
- opt, sw, *val = sw.parse(val, argv) {|*exc| raise(*exc) if eq}
+ opt, sw, val = sw.parse(val, argv) {|*exc| raise(*exc) if eq}
raise InvalidOption, arg if has_arg and !eq and arg == "-#{opt}"
argv.unshift(opt) if opt and (opt = opt.sub(/\A-*/, '-')) != '-'
- sw.yield(*val) if sw
+ sw.yield(val) if sw
rescue ParseError
raise $!.set_option(arg, has_arg)
end