module Haml::Precompiler

def locals_code(names)

def locals_code(names)
  names = names.keys if Hash == names
  names.map do |name|
    # Can't use || because someone might explicitly pass in false with a symbol
    sym_local = "_haml_locals[#{name.to_sym.inspect}]"
    str_local = "_haml_locals[#{name.to_s.inspect}]"
    "#{name} = #{sym_local}.nil? ? #{str_local} : #{sym_local}"
  end.join(';') + ';'
end