Method: XML::DOM::Node#_preceding

Defined in:
lib/xml/dom/core.rb

#_preceding(reverse = false) ⇒ Object

Masaki Fukushima


735
736
737
738
739
740
741
742
743
744
745
746
747
748
# File 'lib/xml/dom/core.rb', line 735

def _preceding(reverse = false)
  return if @parent.nil?
  prev_sib = previousSibling
  if prev_sib
    prev_sib._preceding(reverse)   {|node| yield node} if reverse
    yield prev_sib
    prev_sib._descendant(!reverse) {|node| yield node}
    prev_sib._preceding(reverse)   {|node| yield node} if !reverse
  else
    @parent._preceding(reverse) {|node| yield node} if reverse
    yield @parent
    @parent._preceding(reverse) {|node| yield node} if !reverse
  end
end