In Files

  • rexml/node.rb

Class/Module Index [+]

Quicksearch

REXML::Node

Represents a node in the tree. Nodes are never encountered except as superclasses of other objects. Nodes have siblings.

Public Instance Methods

each_recursive() click to toggle source

Visit all subnodes of self recursively

 
               # File rexml/node.rb, line 53
def each_recursive(&block) # :yields: node
        self.elements.each {|node|
                block.call(node)
                node.each_recursive(&block)
        }
end
            
find_first_recursive() click to toggle source

Find (and return) first subnode (recursively) for which the block evaluates to true. Returns nil if none was found.

 
               # File rexml/node.rb, line 62
            def find_first_recursive(&block) # :yields: node
  each_recursive {|node|
    return node if block.call(node)
  }
  return nil
end
            
indent(to, ind) click to toggle source
 
               # File rexml/node.rb, line 38
def indent to, ind
        if @parent and @parent.context and not @parent.context[:indentstyle].nil? then
                indentstyle = @parent.context[:indentstyle]
        else
                indentstyle = '  '
        end
        to << indentstyle*ind unless ind<1
end
            
index_in_parent() click to toggle source

Returns the position that self holds in its parent's array, indexed from 1.

 
               # File rexml/node.rb, line 71
def index_in_parent
  parent.index(self)+1
end
            
next_sibling_node() click to toggle source

@return the next sibling (nil if unset)

 
               # File rexml/node.rb, line 10
def next_sibling_node
        return nil if @parent.nil?
        @parent[ @parent.index(self) + 1 ]
end
            
parent?() click to toggle source
 
               # File rexml/node.rb, line 47
def parent?
        false;
end
            
previous_sibling_node() click to toggle source

@return the previous sibling (nil if unset)

 
               # File rexml/node.rb, line 16
def previous_sibling_node
        return nil if @parent.nil?
        ind = @parent.index(self)
        return nil if ind == 0
        @parent[ ind - 1 ]
end
            
to_s(indent=nil) click to toggle source
indent

DEPRECATED This parameter is now ignored. See the formatters in the REXML::Formatters package for changing the output style.

 
               # File rexml/node.rb, line 26
          def to_s indent=nil
unless indent.nil?
  Kernel.warn( "#{self.class.name}.to_s(indent) parameter is deprecated" )
  f = REXML::Formatters::Pretty.new( indent )
  f.write( self, rv, indent )
else
  f = REXML::Formatters::Default.new
  f.write( self, rv = "" )
end
return rv
          end