Extended maintenance of Ruby versions 1.8.7 and 1.9.2 will end on July 31, 2014. Read more

In Files

  • rexml/node.rb

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 = "" )
else
  f = REXML::Formatters::Default.new
  f.write( self, rv = "" )
end
return rv
          end
            

Commenting is here to help enhance the documentation. For example, code samples, or clarification of the documentation.

If you have questions about Ruby or the documentation, please post to one of the Ruby mailing lists. You will get better, faster, help that way.

If you wish to post a correction of the docs, please do so, but also file bug report so that it can be corrected for the next release. Thank you.

If you want to help improve the Ruby documentation, please visit Documenting-ruby.org.

blog comments powered by Disqus