Можно ли создать диапазон дат в рубине из отрицательной бесконечности - PullRequest
2 голосов
/ 28 октября 2019

Я пытаюсь определить диапазон дат в Ruby (2.6.3), который представляет диапазон дат до указанной даты (в моих примерах это Date.today):

BigDecimal("Infinity")...Date.today

*** ArgumentError Exception: неверное значение для диапазона

nil...Date.today

*** ArgumentError Exception: неправильное значение для диапазона

Date::Infinity.new...Date.today

*** ArgumentError Exception: неверное значение для диапазона

(Date.today...-Date::Infinity.new)

Пт, 31 мая 2019 года ... #

этот не ломается, но и не дает мне значимого диапазона дат:

(Date.today...-Date::Infinity.new).include? Date.yesterday

false

Ответы [ 2 ]

1 голос
/ 29 октября 2019

Возможно, не лучшее решение, но оно может быть полезным:

(-Float::INFINITY...Date.today.to_time.to_i).include? Date.yesterday.to_time.to_i
 => true
1 голос
/ 28 октября 2019

Зачем тебе бесконечность? Как далеко назад вы действительно должны пойти? Разве вы не можете просто сделать что-то вроде этого:

[*100.year.ago.to_date...Date.today]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...