Module: DateTime::Smart::Shared

Included in:
Date::Smart, DateTime::Smart
Defined in:
lib/date_time/smart.rb

Instance Method Summary collapse

Instance Method Details

#+(n) ⇒ Object



9
10
11
12
13
14
15
# File 'lib/date_time/smart.rb', line 9

def +(n)
  case n
  when DateTime::Duration
    return self.class.new!(@ajd + n.days, @of, @sg)
  end
  return super
end

#-(n) ⇒ Object



25
26
27
28
29
30
31
32
33
# File 'lib/date_time/smart.rb', line 25

def -(n)
  case n
  when DateTime::Duration
    return self.class.new!(@ajd - n.days, @of, @sg)
  when self.class
    return DateTime::Duration.new(n, self)
  end
  return super
end

#add(n) ⇒ Object



17
18
19
20
21
22
23
# File 'lib/date_time/smart.rb', line 17

def add n
  case n
  when Hash
    return self + DateTime::Duration.new2(self, n)
  end
  __send__ :+, n
end

#inspectObject



43
44
45
# File 'lib/date_time/smart.rb', line 43

def inspect
  "#<#{self.class}: #{self.to_s}, #{self.ajd}, #{self.offset}, #{self.sg}>"
end

#subtract(n) ⇒ Object



35
36
37
38
39
40
41
# File 'lib/date_time/smart.rb', line 35

def subtract n
  case n
  when Hash
    return self - DateTime::Duration.new2(self, n)
  end
  __send__ :-, n
end