Module: Graticule

Defined in:
lib/graticule/version.rb,
lib/graticule.rb,
lib/graticule/cli.rb,
lib/graticule/core_ext.rb,
lib/graticule/distance.rb,
lib/graticule/geocoder.rb,
lib/graticule/location.rb,
lib/graticule/geocoder/base.rb,
lib/graticule/geocoder/rest.rb,
lib/graticule/geocoder/bogus.rb,
lib/graticule/geocoder/multi.rb,
lib/graticule/geocoder/yahoo.rb,
lib/graticule/geocoder/google.rb,
lib/graticule/geocoder/host_ip.rb,
lib/graticule/distance/vincenty.rb,
lib/graticule/geocoder/mapquest.rb,
lib/graticule/geocoder/multimap.rb,
lib/graticule/distance/haversine.rb,
lib/graticule/distance/spherical.rb,
lib/graticule/geocoder/meta_carta.rb,
lib/graticule/geocoder/geocoder_ca.rb,
lib/graticule/geocoder/geocoder_us.rb,
lib/graticule/geocoder/local_search_maps.rb,
lib/graticule/geocoder/postcode_anywhere.rb

Overview

:nodoc:

Defined Under Namespace

Modules: Distance, Geocoder, RadiansAndDegrees, Version Classes: AddressError, Cli, CredentialsError, Error, Location

Class Method Summary collapse

Class Method Details

.service(name) ⇒ Object

Get a geocoder for the given service

geocoder = Graticule.service(:google).new "api_key"

See the documentation for your specific geocoder for more information



10
11
12
13
# File 'lib/graticule/geocoder.rb', line 10

def self.service(name)
  clazz_name = name.to_s.gsub(/_(.)/) { $1.upcase }.gsub(/^(.)/) { $1.upcase }
  Geocoder.const_get clazz_name
end