あるノード(親ノード)に子ノードとして保持されているノードを表すクラスです。
親にアクセスするためには REXML::Child#parent を使います。
new(parent = nil) -> REXML::Child
[permalink][rdoc]REXML::Child オブジェクトを生成します。
parent で親ノードを指定します。親ノードへの追加は行わないため、オブジェクト生成後に親に適切に設定する必要があります。
通常、このメソッドは直接は使いません。継承先のクラスが適切にこのメソッド(initialize)を呼び出します。
bytes
[permalink][rdoc][TODO]
document -> REXML::Document | nil
[permalink][rdoc]そのノードが属する document (REXML::Document) を返します。
属する document が存在しない場合は nil を返します。
next_sibling -> REXML::Node
[permalink][rdoc]次の隣接ノードを返します。
REXML::Node#next_sibling_node の別名です。
[SEE_ALSO] REXML::Child#next_sibling=
next_sibling=(other)
[permalink][rdoc]other を self の次の隣接ノードとします。
つまり、親ノードが持つ子ノード列の self の後ろに other を挿入します。
require 'rexml/document' a = REXML::Element.new("a") b = a.add_element("b") c = REXML::Element.new("c") b.next_sibling = c d = REXML::Element.new("d") b.previous_sibling = d p a.to_s # => "<a><d/><b/><c/></a>"
parent -> REXML::Parent|nil
[permalink][rdoc]親ノードを返します。
ルートノードの場合は nil を返します。
[SEE_ALSO] REXML::Child#parent=
parent=(other)
[permalink][rdoc]other を親ノードに設定します。
other が元の親ノードと同じならばこのメソッドは何もしません。 self が親を持たない場合は単純に other を親ノードに設定します。どちらでもない場合は、元の親ノードの子ノード列から self を取り除いてから other を親ノードに設定します。
このメソッドだけでは other の子ノード集合に self は追加されません。つまりこのメソッドを呼び出した直後は不完全な状態であり、親ノード側を適切に設定する必要があります。
[SEE_ALSO] REXML::Child#parent
previous_sibling -> REXML::Node
[permalink][rdoc]前の隣接ノードを返します。
REXML::Node#previous_sibling_node の別名です。
[SEE_ALSO] REXML::Child#previous_sibling=
previous_sibling=(other)
[permalink][rdoc]other を self の前の隣接ノードとします。
つまり、親ノードが持つ子ノード列の self の前に other を挿入します。
require 'rexml/document' a = REXML::Element.new("a") b = a.add_element("b") c = REXML::Element.new("c") b.next_sibling = c d = REXML::Element.new("d") b.previous_sibling = d p a.to_s # => "<a><d/><b/><c/></a>"
remove -> self
[permalink][rdoc]親ノードの子ノード列から self を取り除きます。
replace_with(child) -> self
[permalink][rdoc]親ノードの子ノード列上において、 self を child に置き換えます。
[SEE_ALSO] REXML::Parent#replace_child