class Geocoder::Result::Mapbox

Public Instance Methods

address() click to toggle source
# File lib/geocoder/results/mapbox.rb, line 48
def address
  [place_name, street, city, state, postal_code, country].compact.join(', ')
end
city() click to toggle source
# File lib/geocoder/results/mapbox.rb, line 18
def city
  context_part('place')
end
coordinates() click to toggle source
# File lib/geocoder/results/mapbox.rb, line 6
def coordinates
  data['geometry']['coordinates'].reverse.map(&:to_f)
end
country() click to toggle source
# File lib/geocoder/results/mapbox.rb, line 35
def country
  context_part('country')
end
country_code() click to toggle source
# File lib/geocoder/results/mapbox.rb, line 39
def country_code
  value = context_part('country', 'short_code')
  value.upcase unless value.nil?
end
neighborhood() click to toggle source
# File lib/geocoder/results/mapbox.rb, line 44
def neighborhood
  context_part('neighborhood')
end
place_name() click to toggle source
# File lib/geocoder/results/mapbox.rb, line 10
def place_name
  data['text']
end
postal_code() click to toggle source
# File lib/geocoder/results/mapbox.rb, line 31
def postal_code
  context_part('postcode')
end
state() click to toggle source
# File lib/geocoder/results/mapbox.rb, line 22
def state
  context_part('region')
end
state_code() click to toggle source
# File lib/geocoder/results/mapbox.rb, line 26
def state_code
  value = context_part('region', 'short_code')
  value.split('-').last unless value.nil?
end
street() click to toggle source
# File lib/geocoder/results/mapbox.rb, line 14
def street
  data['properties']['address']
end

Private Instance Methods

context() click to toggle source
# File lib/geocoder/results/mapbox.rb, line 58
def context
  Array(data['context'])
end
context_part(name, key = 'text') click to toggle source
# File lib/geocoder/results/mapbox.rb, line 54
def context_part(name, key = 'text')
  (context.detect { |c| c['id'] =~ Regexp.new(name) } || {})[key]
end