move conditional out of loop

This commit is contained in:
Yukihiro "Matz" Matsumoto
2014-03-24 00:24:02 +09:00
parent d05635e252
commit 75eed54bba
+14 -8
View File
@@ -430,10 +430,12 @@ module Enumerable
# [nil, true].none? #=> false
def none?(&block)
self.each do |*val|
if block
if block
self.each do |*val|
return false if block.call(*val)
else
end
else
self.each do |*val|
return false if val.__svalue
end
end
@@ -459,14 +461,18 @@ module Enumerable
def one?(&block)
count = 0
self.each do |*val|
if block
if block
self.each do |*val|
count += 1 if block.call(*val)
else
count += 1 if val.__svalue
return false if count > 1
end
else
self.each do |*val|
count += 1 if val.__svalue
return false if count > 1
end
return false if count > 1
end
count == 1 ? true : false
end
end