diff options
author | Nobuhiro IMAI <nov@yo.rim.or.jp> | 2012-02-29 20:59:29 +0900 |
---|---|---|
committer | Nobuhiro IMAI <nov@yo.rim.or.jp> | 2012-02-29 20:59:29 +0900 |
commit | 681c4578a70137b45913a3fbde2dd125a9786ed2 (patch) | |
tree | c9c9ff38edf646fd8af374f35e74b30482353294 /lib/slop/option.rb | |
parent | 337ee6af5309cfcecfbace96d0d3c039c05d0698 (diff) | |
download | slop-681c4578a70137b45913a3fbde2dd125a9786ed2.tar.gz |
consider how options are (un-)specified
Diffstat (limited to 'lib/slop/option.rb')
-rw-r--r-- | lib/slop/option.rb | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/lib/slop/option.rb b/lib/slop/option.rb index 1410376..7cb1cba 100644 --- a/lib/slop/option.rb +++ b/lib/slop/option.rb @@ -84,8 +84,11 @@ class Slop # # Returns the Object once any type conversions have taken place. def value - value = @value || config[:default] - return if value.nil? + value = instance_variable_defined?(:@value) ? @value : config[:default] + case value + when true, false, nil + return value + end type = config[:as] if type.respond_to?(:call) |