Extended maintenance of Ruby 1.9.3 ended on February 23, 2015. Read more
A Child object is something contained by a parent, and this class contains methods to support that. Most user code will not use this class directly.
Constructor. Any inheritors of this class should call super to make sure this method is called.
if supplied, the parent of this child will be set to the supplied value, and self will be added to the parent
# File rexml/child.rb, line 17
def initialize( parent = nil )
@parent = nil
# Declare @parent, but don't define it. The next line sets the
# parent.
parent.add( self ) if parent
end
This doesn’t yet handle encodings
# File rexml/child.rb, line 90
def bytes
document.encoding
to_s
end
the document this child belongs to, or nil if this child
belongs to no document
# File rexml/child.rb, line 84
def document
return parent.document unless parent.nil?
nil
end
Sets the next sibling of this child. This can be used to insert a child after some other child.
a = Element.new("a") b = a.add_element("b") c = Element.new("c") b.next_sibling = c # => <a><b/><c/></a>
# File rexml/child.rb, line 67
def next_sibling=( other )
parent.insert_after self, other
end
Sets the parent of this child to the supplied argument.
Must be a Parent object. If this object is the same object as the existing parent of this child, no action is taken. Otherwise, this child is removed from the current parent (if one exists), and is added to the new parent.
The parent added
# File rexml/child.rb, line 51
def parent=( other )
return @parent if @parent == other
@parent.delete self if defined? @parent and @parent
@parent = other
end
Sets the previous sibling of this child. This can be used to insert a child before some other child.
a = Element.new("a") b = a.add_element("b") c = Element.new("c") b.previous_sibling = c # => <a><b/><c/></a>
# File rexml/child.rb, line 78
def previous_sibling=(other)
parent.insert_before self, other
end
Removes this child from the parent.
self
# File rexml/child.rb, line 36
def remove
unless @parent.nil?
@parent.delete self
end
self
end
Replaces this object with another object. Basically, calls REXML::Parent#replace_child
self
# File rexml/child.rb, line 28
def replace_with( child )
@parent.replace_child( self, child )
self
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.