class Haml::AttributeCompiler

def compile_data!(temple, key, values)

def compile_data!(temple, key, values)
  args = [@escape_attrs.inspect, "#{@quote.inspect}.freeze", values.map { |v| literal_for(v) }]
  build_code = "::Haml::AttributeBuilder.build_#{key}(#{args.join(', ')})"
  if values.all? { |type, exp| type == :static || Temple::StaticAnalyzer.static?(exp) }
    temple << [:static, eval(build_code).to_s]
  else
    temple << [:dynamic, build_code]
  end
end