lib/sprockets/environment.rb in sstephenson-sprockets-0.1.1 vs lib/sprockets/environment.rb in sstephenson-sprockets-0.3.0
- old
+ new
@@ -20,16 +20,29 @@
load_path.unshift(pathname)
location
end
def find(location)
- load_path.map { |pathname| pathname.find(location) }.compact.first
+ find_all(location).first
end
+ def constants(reload = false)
+ @constants = nil if reload
+ @constants ||= find_all("constants.yml").inject({}) do |constants, pathname|
+ contents = YAML.load(pathname.contents) rescue nil
+ contents = {} unless contents.is_a?(Hash)
+ constants.merge(contents)
+ end
+ end
+
protected
def absolute_location_from(location)
location = location.to_s
location = File.join(root.absolute_location, location) unless location[/^\//]
File.expand_path(location)
+ end
+
+ def find_all(location)
+ load_path.map { |pathname| pathname.find(location) }.compact
end
end
end