diff options
author | shyouhei <shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-08-15 20:57:30 +0000 |
---|---|---|
committer | shyouhei <shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-08-15 20:57:30 +0000 |
commit | 54ec1c4fe81672ca66f327ef6ae170f458cd79e5 (patch) | |
tree | 45a752c60a9a08d681a792b70f43c89903b638a2 /ruby_1_8_5/lib/getopts.rb | |
parent | d464704f111d211c1f1ff9ef23ef1d755054be00 (diff) |
sorry. I made wrong tags.v1_8_5_54
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/tags/v1_8_5_54@13009 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ruby_1_8_5/lib/getopts.rb')
-rw-r--r-- | ruby_1_8_5/lib/getopts.rb | 127 |
1 files changed, 0 insertions, 127 deletions
diff --git a/ruby_1_8_5/lib/getopts.rb b/ruby_1_8_5/lib/getopts.rb deleted file mode 100644 index 0e21bf96c7..0000000000 --- a/ruby_1_8_5/lib/getopts.rb +++ /dev/null @@ -1,127 +0,0 @@ -# -# getopts.rb - -# $Release Version: $ -# $Revision: 1.8.2.4 $ -# $Date: 2006/08/04 22:00:21 $ -# by Yasuo OHBA(SHL Japan Inc. Technology Dept.) -# -# -- -# this is obsolete; use getoptlong -# -# 2000-03-21 -# modified by Minero Aoki <aamine@dp.u-netsurf.ne.jp> -# -# 2002-03-05 -# rewritten by Akinori MUSHA <knu@ruby-lang.org> -# - -warn "Warning:#{caller[0].sub(/:in `.*'\z/, '')}: getopts is deprecated after Ruby 1.8.1; use optparse instead" if caller[0] and $VERBOSE - -$RCS_ID=%q$Header: /src/ruby/lib/getopts.rb,v 1.8.2.4 2006/08/04 22:00:21 drbrain Exp $ - -# getopts is obsolete. Use GetoptLong. - -def getopts(single_options, *options) - boolopts = {} - valopts = {} - - # - # set defaults - # - single_options.scan(/.:?/) do |opt| - if opt.size == 1 - boolopts[opt] = false - else - valopts[opt[0, 1]] = nil - end - end if single_options - - options.each do |arg| - opt, val = arg.split(':', 2) - - if val - valopts[opt] = val.empty? ? nil : val - else - boolopts[opt] = false - end - end - - # - # scan - # - c = 0 - argv = ARGV - - while arg = argv.shift - case arg - when /\A--(.*)/ - if $1.empty? # xinit -- -bpp 24 - break - end - - opt, val = $1.split('=', 2) - - if opt.size == 1 - argv.unshift arg - return nil - elsif valopts.key? opt # imclean --src +trash - valopts[opt] = val || argv.shift or return nil - elsif boolopts.key? opt # ruby --verbose - boolopts[opt] = true - else - argv.unshift arg - return nil - end - - c += 1 - when /\A-(.+)/ - opts = $1 - - until opts.empty? - opt = opts.slice!(0, 1) - - if valopts.key? opt - val = opts - - if val.empty? # ruby -e 'p $:' - valopts[opt] = argv.shift or return nil - else # cc -ohello ... - valopts[opt] = val - end - - c += 1 - break - elsif boolopts.key? opt - boolopts[opt] = true # ruby -h - c += 1 - else - argv.unshift arg - return nil - end - end - else - argv.unshift arg - break - end - end - - # - # set - # - $OPT = {} - - boolopts.each do |opt, val| - $OPT[opt] = val - - sopt = opt.gsub(/[^A-Za-z0-9_]/, '_') - eval "$OPT_#{sopt} = val" - end - valopts.each do |opt, val| - $OPT[opt] = val - - sopt = opt.gsub(/[^A-Za-z0-9_]/, '_') - eval "$OPT_#{sopt} = val" - end - - c -end |