Froze rails gems
[depot.git] / vendor / rails / activesupport / lib / active_support / core_ext / range / blockless_step.rb
1 module ActiveSupport #:nodoc:
2 module CoreExtensions #:nodoc:
3 module Range #:nodoc:
4 # Return an array when step is called without a block.
5 module BlocklessStep
6 def self.included(base) #:nodoc:
7 base.alias_method_chain :step, :blockless
8 end
9
10 if RUBY_VERSION < '1.9'
11 def step_with_blockless(value = 1, &block)
12 if block_given?
13 step_without_blockless(value, &block)
14 else
15 returning [] do |array|
16 step_without_blockless(value) { |step| array << step }
17 end
18 end
19 end
20 else
21 def step_with_blockless(value = 1, &block)
22 if block_given?
23 step_without_blockless(value, &block)
24 else
25 step_without_blockless(value).to_a
26 end
27 end
28 end
29 end
30 end
31 end
32 end