Enumerable#entries to support multiple values; close #1868

This commit is contained in:
Yukihiro "Matz" Matsumoto
2014-03-17 00:34:47 +09:00
parent 75a4f1ac96
commit ed2fe64076
2 changed files with 15 additions and 2 deletions
+12
View File
@@ -97,6 +97,18 @@ class Array
ret
end
end
# internal method to convert multi-value to single value
def __to_svalue
case self.size
when 0
return nil
when 1
self[0]
else
self
end
end
end
##
+3 -2
View File
@@ -129,8 +129,9 @@ module Enumerable
# ISO 15.3.2.2.6
def entries
ary = []
self.each{|val|
ary.push val
self.each{|*val|
# __to_svalue is an internal method
ary.push val.__to_svalue
}
ary
end