Class: DaruLite::Offsets::MonthBegin
Overview
Create a month begin offset
Constant Summary
collapse
- FREQ =
'MB'.freeze
Instance Method Summary
collapse
#freq_string, #initialize
Methods inherited from DateOffset
#-@, #initialize
Instance Method Details
266
267
268
269
270
271
272
273
274
|
# File 'lib/daru_lite/date_time/offsets.rb', line 266
def +(other)
@n.times do
days_in_month = DaruLite::MONTH_DAYS[other.month]
days_in_month += 1 if other.leap? && other.month == 2
other += (days_in_month - other.day + 1)
end
other
end
|
276
277
278
279
280
281
282
283
284
|
# File 'lib/daru_lite/date_time/offsets.rb', line 276
def -(other)
@n.times do
other <<= 1 if on_offset?(other)
other = DateTime.new(other.year, other.month, 1,
other.hour, other.min, other.sec)
end
other
end
|
#on_offset?(date_time) ⇒ Boolean
286
287
288
|
# File 'lib/daru_lite/date_time/offsets.rb', line 286
def on_offset?(date_time)
date_time.day == 1
end
|