require ‘mega/infinity‘
- +@
- -@
- ===
- []
- begin
- closed
- degenerate?
- direction
- distance
- each
- end
- eql?
- exclude_begin?
- exclude_end?
- exclude_first?
- exclude_last?
- first
- first_closed
- first_opened
- half_closed
- include?
- last
- last_closed
- last_opened
- length
- max
- member?
- min
- new
- null?
- opened
- reversed
- sentinels
- size
- step
- ~
Unary shorthands. These return a new interval exclusive of first, last or both sentinels, repectively.
Alias for include?
Alias for first
Returns a new interval inclusive of of both sentinels.
Returns true if the start and end sentinels are equal and the interval is closed; otherwise false.
Returns the direction of the interval indicated by +1, 0 or -1.
(1..5).direction #=> 1 (5..1).direction #=> -1 (1..1).direction #=> 0
Iterates over the interval, passing each _n_th element to the block. If n is not given then n defaults to 1. Each _n_th step is determined by invoking +++ or +\-+ n, depending on the direction of the interval. If n is negative the iteration is preformed in reverse form end sentinal to front sentinal. A second parameter, d, can be given in which case the applied step is calculated as a fraction of the interval’s length times n / d. This allows iteration over the whole interval in equal sized segments.
1..5.each { |e| ... } #=> 1 2 3 4 5
1..5.each(2) { |e| ... } #=> 1 3 5
1..5.each(1,2) { |e| ... } #=> 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0
Alias for last
Compares two intervals to see if they are equal
Alias for exclude_first?
Alias for exclude_last?
Returns the first or last sentinal of the interval.
Returns a new interval with one of the two sentinels opened or closed
Returns a new interval with either the first or the last sentinel exclusive. If the parameter is false, the deafult, then the first sentinel is excluded; if the parameter is true, the last sentinel is excluded.
Returns true or false if the element is part of the interval.
Alias for distance
Returns the greater of the first and last sentinals.
Alias for include?
Returns the lesser of the first and last sentinals.
Returns true if the start and end sentinels are equal and the interval is open; otherwise false.
Returns a new interval exclusive of both sentinels.
Returns a new interval with the sentinels reversed.
(0..10).reversed #=> 10..0
Returns a two element array of first and last sentinels.
(0..10).sentinels #=> [0,10]
Alias for distance
Alias for each