def configuration_for(config, filename = nil)
if config.is_a?(Compass::Configuration::Data)
config
elsif config.respond_to?(:read)
filename ||= config.to_s if config.is_a?(Pathname)
Compass::Configuration::Data.new_from_string(config.read, filename)
elsif config.is_a?(Hash)
Compass::Configuration::Data.new(filename, config)
elsif config.is_a?(String)
Compass::Configuration::Data.new_from_file(config)
elsif config.is_a?(Symbol)
Compass::AppIntegration.lookup(config).configuration
else
raise "I don't know what to do with: #{config.inspect}"
end
end