module Temporality::AttributeOverrides

Public Instance Methods

ends_on() click to toggle source
Calls superclass method
# File lib/temporality/attribute_overrides.rb, line 9
def ends_on
  ceil_to_temporal_infinity(super)
end
ends_on=(d) click to toggle source
Calls superclass method
# File lib/temporality/attribute_overrides.rb, line 17
def ends_on=(d)
  super(ceil_to_temporal_infinity(d))
end
starts_on() click to toggle source
Calls superclass method
# File lib/temporality/attribute_overrides.rb, line 5
def starts_on
  floor_to_temporal_infinity(super)
end
starts_on=(d) click to toggle source
Calls superclass method
# File lib/temporality/attribute_overrides.rb, line 13
def starts_on=(d)
  super(floor_to_temporal_infinity(d))
end

Private Instance Methods

ceil_to_temporal_infinity(d) click to toggle source

Ceils the parameter to `Temporality::FUTURE_INFINITY`

# File lib/temporality/attribute_overrides.rb, line 33
def ceil_to_temporal_infinity(d)
  [d, Temporality::FUTURE_INFINITY].compact.min
end
floor_to_temporal_infinity(d) click to toggle source

Floors the parameter to `Temporality::PAST_INFINITY`

# File lib/temporality/attribute_overrides.rb, line 26
def floor_to_temporal_infinity(d)
  [d, Temporality::PAST_INFINITY].compact.max
end