class REXML::XPathParser
def child(nodeset)
def child(nodeset) nodesets = [] nodeset.each do |node| raw_node = node.raw_node node_type = raw_node.node_type # trace(:child, node_type, node) case node_type when :element nodesets << raw_node.children.collect.with_index do |child_node, i| XPathNode.new(child_node, position: i + 1) end when :document new_nodeset = [] raw_node.children.each do |child| case child when XMLDecl, Text # Ignore else new_nodeset << XPathNode.new(child, position: new_nodeset.size + 1) end end nodesets << new_nodeset unless new_nodeset.empty? end end nodesets end