class Fugit::Duration

def add(a)

def add(a)
  case a
  when Numeric then add_numeric(a)
  when Fugit::Duration then add_duration(a)
  when String then add_duration(self.class.parse(a))
  when ::Time, EtOrbi::EoTime then add_to_time(a)
  else fail ArgumentError.new(
    "cannot add #{a.class} instance to a Fugit::Duration")
  end
end