module Origin::Extensions::Range

This module contains additional range behaviour.

Public Instance Methods

__array__() click to toggle source

Get the range as an array.

@example Get the range as an array.

1...3.__array__

@return [ Array ] The range as an array.

@since 1.0.0

# File lib/origin/extensions/range.rb, line 15
def __array__
  to_a
end
__evolve_date__() click to toggle source

Convert the range to a min/max mongo friendly query for dates.

@example Evolve the range.

(11231312..213123131).__evolve_date__

@return [ Hash ] The min/max range query with times at midnight.

@since 1.0.0

# File lib/origin/extensions/range.rb, line 27
def __evolve_date__
  { "$gte" => min.__evolve_date__, "$lte" => max.__evolve_date__ }
end
__evolve_time__() click to toggle source

Convert the range to a min/max mongo friendly query for times.

@example Evolve the range.

(11231312..213123131).__evolve_date__

@return [ Hash ] The min/max range query with times.

@since 1.0.0

# File lib/origin/extensions/range.rb, line 39
def __evolve_time__
  { "$gte" => min.__evolve_time__, "$lte" => max.__evolve_time__ }
end