class Geocoder::Result::Nominatim

Public Class Methods

response_attributes() click to toggle source
# File lib/geocoder/results/nominatim.rb, line 102
def self.response_attributes
  %w[place_id osm_type osm_id boundingbox license
     polygonpoints display_name class type stadium]
end

Public Instance Methods

address() click to toggle source
# File lib/geocoder/results/nominatim.rb, line 15
def address
  @data['display_name']
end
city() click to toggle source
# File lib/geocoder/results/nominatim.rb, line 26
def city
  %w[city town village hamlet].each do |key|
    return address_data[key] if address_data.key?(key)
  end
  return nil
end
city_district() click to toggle source
# File lib/geocoder/results/nominatim.rb, line 67
def city_district
  address_data['city_district']
end
coordinates() click to toggle source
# File lib/geocoder/results/nominatim.rb, line 83
def coordinates
  return [] unless @data['lat'] && @data['lon']

  [@data['lat'].to_f, @data['lon'].to_f]
end
country() click to toggle source
# File lib/geocoder/results/nominatim.rb, line 55
def country
  address_data['country']
end
country_code() click to toggle source
# File lib/geocoder/results/nominatim.rb, line 59
def country_code
  address_data['country_code']
end
county() click to toggle source
# File lib/geocoder/results/nominatim.rb, line 51
def county
  address_data['county']
end
house_number() click to toggle source
# File lib/geocoder/results/nominatim.rb, line 11
def house_number
  address_data['house_number']
end
municipality() click to toggle source
# File lib/geocoder/results/nominatim.rb, line 79
def municipality
  address_data['municipality']
end
neighbourhood() click to toggle source
# File lib/geocoder/results/nominatim.rb, line 75
def neighbourhood
  address_data['neighbourhood']
end
place_class() click to toggle source
# File lib/geocoder/results/nominatim.rb, line 89
def place_class
  @data['class']
end
place_type() click to toggle source
# File lib/geocoder/results/nominatim.rb, line 93
def place_type
  @data['type']
end
poi() click to toggle source
# File lib/geocoder/results/nominatim.rb, line 6
def poi
  return address_data[place_type] if address_data.key?(place_type)
  return nil
end
postal_code() click to toggle source
# File lib/geocoder/results/nominatim.rb, line 47
def postal_code
  address_data['postcode']
end
state() click to toggle source
# File lib/geocoder/results/nominatim.rb, line 41
def state
  address_data['state']
end
Also aliased as: state_code
state_code()
Alias for: state
state_district() click to toggle source
# File lib/geocoder/results/nominatim.rb, line 71
def state_district
  address_data['state_district']
end
street() click to toggle source
# File lib/geocoder/results/nominatim.rb, line 19
def street
  %w[road pedestrian highway].each do |key|
    return address_data[key] if address_data.key?(key)
  end
  return nil
end
suburb() click to toggle source
# File lib/geocoder/results/nominatim.rb, line 63
def suburb
  address_data['suburb']
end
town() click to toggle source
# File lib/geocoder/results/nominatim.rb, line 37
def town
  address_data['town']
end
viewport() click to toggle source
# File lib/geocoder/results/nominatim.rb, line 97
def viewport
  south, north, west, east = @data['boundingbox'].map(&:to_f)
  [south, west, north, east]
end
village() click to toggle source
# File lib/geocoder/results/nominatim.rb, line 33
def village
  address_data['village']
end

Private Instance Methods

address_data() click to toggle source
# File lib/geocoder/results/nominatim.rb, line 117
def address_data
  @data['address'] || {}
end