# File lib/geokit/mappable.rb, line 310 def reverse_geocode(options = { :using => Geokit::Geocoders::MultiGeocoder }) if options[:using].is_a?(String) or options[:using].is_a?(Symbol) provider = Geokit::Geocoders.const_get("#{Geokit::Inflector::camelize(options[:using].to_s)}Geocoder") elsif options[:using].respond_to?(:do_reverse_geocode) provider = options[:using] else raise ArgumentError.new("#{options[:using]} is not a valid geocoder.") end provider.send(:reverse_geocode, self) end