Class: Metar::Data::Speed

Inherits:
M9t::Speed
  • Object
show all
Defined in:
lib/metar/data/speed.rb

Constant Summary collapse

METAR_UNITS =
{
  "" => :kilometers_per_hour,
  "KMH" => :kilometers_per_hour,
  "MPS" => :meters_per_second,
  "KT" => :knots
}.freeze

Class Method Summary collapse

Class Method Details

.parse(raw) ⇒ Object



16
17
18
19
20
21
22
23
24
# File 'lib/metar/data/speed.rb', line 16

def self.parse(raw)
  return nil if raw.nil?

  m = raw.match(/^(\d+)(|KT|MPS|KMH)$/)
  return nil if m.nil?

  # Call the appropriate factory method for the supplied units
  send(METAR_UNITS[m[2]], m[1].to_i)
end