Class: ActiveSupport::TimeWithZone

Inherits:
Object
  • Object
show all
Defined in:
lib/gb_date/time_with_zone.rb

Instance Method Summary collapse

Instance Method Details

#to_api_decimalBigDecimal

Seconds as BigDecimal with precision to microseconds

Returns:

  • (BigDecimal)


13
14
15
# File 'lib/gb_date/time_with_zone.rb', line 13

def to_api_decimal
  BigDecimal.new("#{self.to_i}.#{sprintf('%06d',self.nsec/1000)}")
end

#to_api_fBigDecimal

Seconds as Float with precision to microseconds

Returns:

  • (BigDecimal)


19
20
21
# File 'lib/gb_date/time_with_zone.rb', line 19

def to_api_f
  self.to_api_decimal.to_f
end

#to_api_sString

Return string with date represented by seconds with precision to microseconds

Returns:



25
26
27
# File 'lib/gb_date/time_with_zone.rb', line 25

def to_api_s
  sprintf('%.6f', self.to_api_decimal)
end

#to_decimalBigDecimal

Seconds as BigDecimal With precision to nanoseconds

Returns:

  • (BigDecimal)


7
8
9
# File 'lib/gb_date/time_with_zone.rb', line 7

def to_decimal
  BigDecimal.new("#{self.to_i}.#{sprintf('%09d',self.nsec)}")
end