Class: OpeningHoursConverter::Interval

Inherits:
Object
  • Object
show all
Includes:
Constants
Defined in:
lib/opening_hours_converter/interval.rb

Constant Summary

Constants included from Constants

Constants::DAYS, Constants::DAYS_MAX, Constants::IRL_DAYS, Constants::IRL_MONTHS, Constants::MINUTES_MAX, Constants::MONTH_END_DAY, Constants::OSM_DAYS, Constants::OSM_MONTHS, Constants::PH_WEEKDAY, Constants::YEAR_DAYS_MAX

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(day_start, min_start, day_end = 0, min_end = 0, is_off = false) ⇒ Interval

Returns a new instance of Interval.



8
9
10
11
12
13
14
15
16
17
18
19
# File 'lib/opening_hours_converter/interval.rb', line 8

def initialize(day_start, min_start, day_end = 0, min_end = 0, is_off = false)
  @day_start = day_start
  @day_end = day_end
  @start = min_start
  @end = min_end
  @is_off = is_off

  if @day_end == 0 && @end == 0
    @day_end = DAYS_MAX
    @end = MINUTES_MAX
  end
end

Instance Attribute Details

#day_endObject (readonly)

Returns the value of attribute day_end.



6
7
8
# File 'lib/opening_hours_converter/interval.rb', line 6

def day_end
  @day_end
end

#day_startObject (readonly)

Returns the value of attribute day_start.



6
7
8
# File 'lib/opening_hours_converter/interval.rb', line 6

def day_start
  @day_start
end

#endObject (readonly)

Returns the value of attribute end.



6
7
8
# File 'lib/opening_hours_converter/interval.rb', line 6

def end
  @end
end

#is_offObject (readonly)

Returns the value of attribute is_off.



6
7
8
# File 'lib/opening_hours_converter/interval.rb', line 6

def is_off
  @is_off
end

#startObject (readonly)

Returns the value of attribute start.



6
7
8
# File 'lib/opening_hours_converter/interval.rb', line 6

def start
  @start
end

Instance Method Details

#max?Boolean

Returns:

  • (Boolean)


25
26
27
# File 'lib/opening_hours_converter/interval.rb', line 25

def max?
  @day_end == DAYS_MAX && @end == MINUTES_MAX
end

#single_day?Boolean

Returns:

  • (Boolean)


21
22
23
# File 'lib/opening_hours_converter/interval.rb', line 21

def single_day?
  @day_start == @day_end
end

#single_day_end_at_midnight?Boolean

Returns:

  • (Boolean)


29
30
31
# File 'lib/opening_hours_converter/interval.rb', line 29

def single_day_end_at_midnight?
  @day_end == @day_start + 1 && @end == 0
end