class Range
Public Instance Methods
*(n)
click to toggle source
# File lib/five_leaves/range_util.rb, line 21 def *(n) (size * n).times.lazy_map { |x| first + (x % size) } end
**(n)
click to toggle source
# File lib/five_leaves/range_util.rb, line 25 def **(n) (size * n).times.lazy_map { |x| first + (x / n) } end
pair_with(range)
click to toggle source
# File lib/five_leaves/range_util.rb, line 29 def pair_with(range) (self * range.size).lazy_zip(range ** self.size) end
pairs()
click to toggle source
# File lib/five_leaves/range_util.rb, line 17 def pairs stutter.lazy_zip squared end
size()
click to toggle source
# File lib/five_leaves/range_util.rb, line 5 def size last - first + 1 end
squared()
click to toggle source
# File lib/five_leaves/range_util.rb, line 13 def squared (size * size).times.lazy_map { |x| first + (x % size) } end
stutter()
click to toggle source
# File lib/five_leaves/range_util.rb, line 9 def stutter (size * size).times.lazy_map { |x| first + (x / size) } end