From: martinahansen Date: Wed, 11 Aug 2010 12:38:34 +0000 (+0000) Subject: ruby code cleanup X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=411905e977791d1055c3dc46a60dbeec16c687ae;p=biopieces.git ruby code cleanup git-svn-id: http://biopieces.googlecode.com/svn/trunk@1054 74ccb610-7750-0410-82ae-013aeee3265d --- diff --git a/code_ruby/Maasha/lib/biopieces.rb b/code_ruby/Maasha/lib/biopieces.rb index 5c6fba6..4dc51b1 100644 --- a/code_ruby/Maasha/lib/biopieces.rb +++ b/code_ruby/Maasha/lib/biopieces.rb @@ -261,26 +261,27 @@ class OptionHandler option_parser = OptionParser.new do |option| @casts.each do |cast| - if cast[:type] == 'flag' + case cast[:type] + when 'flag' option.on("-#{cast[:short]}", "--#{cast[:long]}") do |o| @options[cast[:long]] = o end - elsif cast[:type] =~ REGEX_LIST + when 'float' + option.on("-#{cast[:short]}", "--#{cast[:long]} F", Float) do |f| + @options[cast[:long]] = f + end + when REGEX_LIST option.on( "-#{cast[:short]}", "--#{cast[:long]} A", Array) do |a| @options[cast[:long]] = a end - elsif cast[:type] =~ REGEX_INT + when REGEX_INT option.on("-#{cast[:short]}", "--#{cast[:long]} I", Integer) do |i| @options[cast[:long]] = i end - elsif cast[:type] =~ REGEX_STRING + when REGEX_STRING option.on("-#{cast[:short]}", "--#{cast[:long]} S", String) do |s| @options[cast[:long]] = s end - elsif cast[:type] == 'float' - option.on("-#{cast[:short]}", "--#{cast[:long]} F", Float) do |f| - @options[cast[:long]] = f - end else raise ArgumentError, "Unknown option type: '#{cast[:type]}'" end