blob: 79bc40ecd7eab9525fbc4531b6f0dce0ca9d2e37 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
#
# Range
#
class Range
# 15.2.14.4.4
def each(&block)
val = self.first
unless val.respond_to? :succ
raise TypeError, "can't iterate"
end
last = self.last
return self if (val <=> last) > 0
while((val <=> last) < 0)
block.call(val)
val = val.succ
end
block.call(val) unless exclude_end?
self
end
end
# include modules
module Enumerable; end
class Range
include Enumerable
end
|