class TimeSpanner::TimeUnits::TimeUnit

Attributes

multiplier[R]

Public Class Methods

new(position, multiplier) click to toggle source
Calls superclass method
# File lib/time_spanner/time_units/base/time_unit.rb, line 8
def initialize position, multiplier
  super position

  @multiplier = multiplier
end

Public Instance Methods

calculate(duration, to = nil) click to toggle source
# File lib/time_spanner/time_units/base/time_unit.rb, line 14
def calculate duration, to = nil
  @duration = duration

  calculate_amount
  calculate_rest
end

Private Instance Methods

amount_in_seconds() click to toggle source
# File lib/time_spanner/time_units/base/time_unit.rb, line 32
def amount_in_seconds
  amount.to_r / multiplier
end
calculate_amount() click to toggle source
# File lib/time_spanner/time_units/base/time_unit.rb, line 24
def calculate_amount
  @amount = ( ( duration * multiplier ).round 13 ).to_i
end
calculate_rest() click to toggle source
# File lib/time_spanner/time_units/base/time_unit.rb, line 28
def calculate_rest
  @rest = duration - amount_in_seconds
end