# File lib/mofo/xoxo.rb, line 24 def self.build_tree(child) tree = [] child.search(@@children_xpath) do |element| label, branch = nil, nil element.children.each do |inner| label ||= build_label(inner) unless container?(inner) branch ||= build_tree(inner) if container?(inner) end tree << (branch ? { label => branch } : label) end tree end