class Geocoder::Result::SmartyStreets

Public Instance Methods

address() click to toggle source
# File lib/geocoder/results/smarty_streets.rb, line 17
def address
  parts =
    if international_endpoint?
      (1..12).map { |i| @data["address#{i}"] }
    else
      [
        delivery_line_1,
        delivery_line_2,
        last_line
      ]
    end
  parts.select{ |i| i.to_s != "" }.join(" ")
end
city() click to toggle source
# File lib/geocoder/results/smarty_streets.rb, line 71
def city
  if international_endpoint?
    components['locality']
  elsif zipcode_endpoint?
    city_states.first['city']
  else
    components['city_name']
  end
end
coordinates() click to toggle source
# File lib/geocoder/results/smarty_streets.rb, line 5
def coordinates
  result = %w(latitude longitude).map do |i|
    zipcode_endpoint? ? zipcodes.first[i] : metadata[i]
  end

  if result.compact.empty?
    nil
  else
    result
  end
end
country() click to toggle source
# File lib/geocoder/results/smarty_streets.rb, line 51
def country
  international_endpoint? ?
    components['country_iso_3'] :
    "United States"
end
country_code() click to toggle source
# File lib/geocoder/results/smarty_streets.rb, line 57
def country_code
  international_endpoint? ?
    components['country_iso_3'] :
    "US"
end
fips() click to toggle source
# File lib/geocoder/results/smarty_streets.rb, line 97
def fips
  zipcode_endpoint? ?
    zipcodes.first['county_fips'] :
    metadata['county_fips']
end
international_endpoint?() click to toggle source
# File lib/geocoder/results/smarty_streets.rb, line 107
def international_endpoint?
  !@data['address1'].nil?
end
postal_code()
Alias for: zipcode
postal_code_extended()
Alias for: zip4
state() click to toggle source
# File lib/geocoder/results/smarty_streets.rb, line 31
def state
  if international_endpoint?
    components['administrative_area']
  elsif zipcode_endpoint?
    city_states.first['state']
  else
    components['state_abbreviation']
  end
end
state_code() click to toggle source
# File lib/geocoder/results/smarty_streets.rb, line 41
def state_code
  if international_endpoint?
    components['administrative_area']
  elsif zipcode_endpoint?
    city_states.first['state_abbreviation']
  else
    components['state_abbreviation']
  end
end
street() click to toggle source

Extra methods not in base.rb ————————

# File lib/geocoder/results/smarty_streets.rb, line 65
def street
  international_endpoint? ?
    components['thoroughfare_name'] :
    components['street_name']
end
zip4() click to toggle source
# File lib/geocoder/results/smarty_streets.rb, line 92
def zip4
  components['plus4_code']
end
Also aliased as: postal_code_extended
zipcode() click to toggle source
# File lib/geocoder/results/smarty_streets.rb, line 81
def zipcode
  if international_endpoint?
    components['postal_code']
  elsif zipcode_endpoint?
    zipcodes.first['zipcode']
  else
    components['zipcode']
  end
end
Also aliased as: postal_code
zipcode_endpoint?() click to toggle source
# File lib/geocoder/results/smarty_streets.rb, line 103
def zipcode_endpoint?
  zipcodes.any?
end