Module: Pacer::Filter::RangeFilter
- Defined in:
- lib/pacer/filter/range_filter.rb
Instance Method Summary collapse
- #begin=(n) ⇒ Object
- #end=(n) ⇒ Object
- #index=(index) ⇒ Object
- #limit(n = nil) ⇒ Object
- #limit=(n) ⇒ Object
- #offset(n = nil) ⇒ Object (also: #drop)
- #offset=(n) ⇒ Object
- #range ⇒ Object
- #range=(range) ⇒ Object
Instance Method Details
#begin=(n) ⇒ Object
67 68 69 |
# File 'lib/pacer/filter/range_filter.rb', line 67 def begin=(n) @range = n..range.end end |
#end=(n) ⇒ Object
71 72 73 |
# File 'lib/pacer/filter/range_filter.rb', line 71 def end=(n) @range = range.begin..n end |
#index=(index) ⇒ Object
75 76 77 |
# File 'lib/pacer/filter/range_filter.rb', line 75 def index=(index) @range = index..index end |
#limit(n = nil) ⇒ Object
29 30 31 32 33 34 35 36 37 |
# File 'lib/pacer/filter/range_filter.rb', line 29 def limit(n = nil) @limit = n if range.begin == -1 @range = range.begin...n else @range = range.begin...(range.begin + n) end self end |
#limit=(n) ⇒ Object
39 40 41 42 |
# File 'lib/pacer/filter/range_filter.rb', line 39 def limit=(n) limit n n end |
#offset(n = nil) ⇒ Object Also known as: drop
44 45 46 47 48 49 50 51 52 53 54 55 |
# File 'lib/pacer/filter/range_filter.rb', line 44 def offset(n = nil) s = n s += 1 if range.begin == -1 if range.end == -1 @range = (range.begin + s)..-1 elsif range.exclude_end? @range = (range.begin + s)...(range.end + n) else @range = (range.begin + s)..(range.end + n) end self end |
#offset=(n) ⇒ Object
58 59 60 61 |
# File 'lib/pacer/filter/range_filter.rb', line 58 def offset=(n) offset n n end |
#range ⇒ Object
79 80 81 |
# File 'lib/pacer/filter/range_filter.rb', line 79 def range @range ||= -1..-1 end |
#range=(range) ⇒ Object
63 64 65 |
# File 'lib/pacer/filter/range_filter.rb', line 63 def range=(range) @range = range end |