class Haml::Buffer
def self.merge_attrs(to, from)
def self.merge_attrs(to, from) if to['id'] && from['id'] to['id'] << '_' << from.delete('id') elsif to['id'] || from['id'] from['id'] ||= to['id'] end if to['class'] && from['class'] # Make sure we don't duplicate class names from['class'] = (from['class'].split(' ') | to['class'].split(' ')).join(' ') elsif to['class'] || from['class'] from['class'] ||= to['class'] end to.merge!(from) end