Method: REXML::Element#root
- Defined in:
- lib/rexml/element.rb
#root ⇒ Object
:call-seq:
root -> element
Returns the most distant element (not document) ancestor of the element:
d = REXML::Document.new('<a><b><c/></b></a>')
top_element = d.first
child = top_element.first
top_element.root == top_element # => true
child.root == top_element # => true
For a document, returns the topmost element:
d.root == top_element # => true
Related: #root_node, #document.
443 444 445 446 447 448 449 450 451 452 |
# File 'lib/rexml/element.rb', line 443 def root target = self while target return target.elements[1] if target.kind_of? Document parent = target.parent return target if parent.kind_of? Document or parent.nil? target = parent end nil end |