Class: Metar::Data::Distance

Inherits:
M9t::Distance
  • Object
show all
Defined in:
lib/metar/data/distance.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(meters = nil) ⇒ Distance

nil is taken to mean ‘data unavailable’



12
13
14
15
16
17
18
19
# File 'lib/metar/data/distance.rb', line 12

def initialize(meters = nil)
  @serialization_units = :meters
  if meters
    super
  else
    @value = nil
  end
end

Instance Attribute Details

#serialization_unitsObject

Returns the value of attribute serialization_units.



9
10
11
# File 'lib/metar/data/distance.rb', line 9

def serialization_units
  @serialization_units
end

Instance Method Details

#to_s(options = {}) ⇒ Object

Handles nil case differently to M9t::Distance



22
23
24
25
26
27
28
29
30
31
# File 'lib/metar/data/distance.rb', line 22

def to_s(options = {})
  options = {
    units: serialization_units,
    precision: 0,
    abbreviated: true
  }.merge(options)
  return I18n.t("metar.distance.unknown") if @value.nil?

  super(options)
end