From 4696fa69058a340d9ab018916b5f1b9bb95215eb Mon Sep 17 00:00:00 2001
From: Alex Reisner <alex@alexreisner.com>
Date: Tue, 15 Mar 2011 00:56:30 -0400
Subject: [PATCH] Refactor: improve Lookup class name derivation.

---
 lib/geocoder.rb | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/lib/geocoder.rb b/lib/geocoder.rb
index 9be0c2c7..120cffbf 100644
--- a/lib/geocoder.rb
+++ b/lib/geocoder.rb
@@ -67,7 +67,8 @@ module Geocoder
     if valid_lookups.include?(name)
       name = name.to_s
       require "geocoder/lookups/#{name}"
-      eval("Geocoder::Lookup::#{name[0...1].upcase + name[1..-1]}.new")
+      klass = name.split("_").map{ |i| i[0...1].upcase + i[1..-1] }.join
+      eval("Geocoder::Lookup::#{klass}.new")
     else
       valids = valid_lookups.map{ |l| ":#{l}" }.join(", ")
       raise ConfigurationError, "Please specify a valid lookup for Geocoder " +
-- 
GitLab