Module: Avro::LogicalTypes::TimestampMicros

Defined in:
lib/avro/logical_types.rb

Class Method Summary collapse

Class Method Details

.decode(int) ⇒ Object



238
239
240
241
# File 'lib/avro/logical_types.rb', line 238

def self.decode(int)
  s, us = int / 1000_000, int % 1000_000
  Time.at(s, us).utc
end

.encode(value) ⇒ Object



231
232
233
234
235
236
# File 'lib/avro/logical_types.rb', line 231

def self.encode(value)
  return value.to_i if value.is_a?(Numeric)

  time = value.to_time
  time.to_i * 1000_000 + time.usec
end