diff options
author | Hiroshi SHIBATA <[email protected]> | 2020-01-11 21:37:00 +0900 |
---|---|---|
committer | SHIBATA Hiroshi <[email protected]> | 2020-01-12 12:28:29 +0900 |
commit | c3ccf23d5807f2ff20127bf5e42df0977bf672fb (patch) | |
tree | d3953c32b61645c7af65d30e626af944f143cf58 /lib/rexml/child.rb | |
parent | 012f297311817ecb19f78c55854b033bb4b0397c (diff) |
Make rexml library to the bundle gems
[Feature #16485][ruby-core:96683]
Notes
Notes:
Merged: https://github.com/ruby/ruby/pull/2832
Diffstat (limited to 'lib/rexml/child.rb')
-rw-r--r-- | lib/rexml/child.rb | 97 |
1 files changed, 0 insertions, 97 deletions
diff --git a/lib/rexml/child.rb b/lib/rexml/child.rb deleted file mode 100644 index cc6e9a4719..0000000000 --- a/lib/rexml/child.rb +++ /dev/null @@ -1,97 +0,0 @@ -# frozen_string_literal: false -require_relative "node" - -module REXML - ## - # 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. - class Child - include Node - attr_reader :parent # The Parent of this object - - # Constructor. Any inheritors of this class should call super to make - # sure this method is called. - # parent:: - # if supplied, the parent of this child will be set to the - # supplied value, and self will be added to the parent - 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 - - # Replaces this object with another object. Basically, calls - # Parent.replace_child - # - # Returns:: self - def replace_with( child ) - @parent.replace_child( self, child ) - self - end - - # Removes this child from the parent. - # - # Returns:: self - def remove - unless @parent.nil? - @parent.delete self - end - self - end - - # Sets the parent of this child to the supplied argument. - # - # other:: - # 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. - # Returns:: The parent added - def parent=( other ) - return @parent if @parent == other - @parent.delete self if defined? @parent and @parent - @parent = other - end - - alias :next_sibling :next_sibling_node - alias :previous_sibling :previous_sibling_node - - # 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> - def next_sibling=( other ) - parent.insert_after self, 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> - def previous_sibling=(other) - parent.insert_before self, other - end - - # Returns:: the document this child belongs to, or nil if this child - # belongs to no document - def document - return parent.document unless parent.nil? - nil - end - - # This doesn't yet handle encodings - def bytes - document.encoding - - to_s - end - end -end |