要約
あるノードの親ノードとなりうるノードを表すクラスです。
子ノードにアクセスするための各種メソッドを持っています。
目次
- 特異メソッド
- インスタンスメソッド
継承しているメソッド
- Enumerableから継承しているメソッド
- 
  - all?
- any?
- chain
- chunk
- chunk_while
- collect
- collect_concat
- compact
- count
- cycle
- detect
- drop
- drop_while
- each_cons
- each_entry
- each_slice
- each_with_index
- each_with_object
- entries
- filter
- filter_map
- find
- find_all
- find_index
- first
- flat_map
- grep
- grep_v
- group_by
- include?
- inject
- lazy
- map
- max
- max_by
- member?
- min
- min_by
- minmax
- minmax_by
- none?
- one?
- partition
- reduce
- reject
- reverse_each
- select
- slice_after
- slice_before
- slice_when
- sort
- sort_by
- sum
- take
- take_while
- tally
- to_h
- to_set
- uniq
- zip
 
- REXML::Childから継承しているメソッド
- REXML::Nodeから継承しているメソッド
特異メソッド
- new(parent = nil) -> REXML::Parent[permalink][rdoc][edit]
- 
REXML::Parent オブジェクトを生成します。 子ノード列は空列に初期化されます。 parent で親ノードを指定します。親ノードへの追加は行わないため、オブジェクト生成後に親に適切に設定する必要があります。 通常、このメソッドは直接は使いません。継承先のクラスが適切にこのメソッド(initialize)を呼び出します。 - [PARAM] parent:
- 親ノード
 
インスタンスメソッド
- add(object) -> ()[permalink][rdoc][edit]
- push(object) -> ()
- self << object -> ()
- 
object を子ノード列の最後に追加します。 object の親ノードには self が設定されます。 - [PARAM] object:
- 追加するノード
 
- self[index] -> REXML::Child | nil[permalink][rdoc][edit]
- 
子ノード列上の index で指定された場所のノードを返します。 範囲外を指定した場合は nil を返します。 
- self[index] = node[permalink][rdoc][edit]
- self[range] = node
- self[start, length] = node
- 
子ノード列上の指定した場所を node で置き換えます。 Array#[]= と同じ指定が可能です。 - [PARAM] index:
- 変更場所の index (Integer)
- [PARAM] range:
- 変更場所の範囲 (Range)
- [PARAM] start:
- 変更範囲の最初の位置 (Integer)
- [PARAM] length:
- 変更範囲の個数 (Integer)
- [PARAM] node:
- 置き換えるノード
 
- to_a -> [REXML::Child][permalink][rdoc][edit]
- children -> [REXML::Child]
- 
子ノード列の配列を返します。 
- deep_clone -> REXML::Parent[permalink][rdoc][edit]
- 
ノードを複製し、複製されたノードを返します。 子ノードも複製されます。 
- delete(object) -> REXML::Child | nil[permalink][rdoc][edit]
- 
object を子ノード列から削除します。 削除されたノードの親は nil に設定されます。 削除したノードを返します。削除されなかった場合は nil を返します。 - [PARAM] object:
- 削除するノード
 
- delete_at(index) -> REXML::Child | nil[permalink][rdoc][edit]
- 
子ノード列上の index で指定された場所の要素を取り除きます。 取り除いだノードを返します。indexが範囲外である場合は何もせず nil を返します。 
- delete_if {|object| ... } -> ()[permalink][rdoc][edit]
- delete_if -> Enumerator
- 
各子ノードに対しブロックを呼び出し、真を返したノードを削除します。 ブロックを省略した場合は Enumerator を返します。 
- each {|object| ... } -> ()[permalink][rdoc][edit]
- each_child {|object| ... } -> ()
- each -> Enumerator
- each_child -> Enumerator
- 
各子ノードに対しブロックを呼び出します。 ブロックを省略した場合は Enumerator を返します。 
- each_index {|index| ... } -> ()[permalink][rdoc][edit]
- each_index -> Enumerator
- 
各子ノードのインデックスに対しブロックを呼び出します。 ブロックが省略された場合は上のような繰り返しをする Enumerator オブジェクトを返します。 
- index(child) -> Integer | nil[permalink][rdoc][edit]
- 
child の子ノード列上での位置を返します。 child が子ノードでない場合には nil を返します。 
- insert_after(child1, child2) -> self[permalink][rdoc][edit]
- 
child2 を child1 で指定したノードの後ろに挿入します。 child1 が REXML::Child のインスタンスであるならば、その子ノードの後ろに挿入されます。 child1 が 文字列であるならば、XPath で場所を指定します。具体的には REXML::XPath.first(self, child1) で特定されるノードの後ろに挿入されます。 挿入されるノード(child2)の親は self に変更されます。 - [PARAM] child1:
- 挿入場所の指定
- [PARAM] child2:
- 挿入されるノード
 
- insert_before(child1, child2) -> self[permalink][rdoc][edit]
- 
child2 を child1 で指定したノードの前に挿入します。 child1 が REXML::Child のインスタンスであるならば、その子ノードの前に挿入されます。 child1 が 文字列であるならば、XPath で場所を指定します。具体的には REXML::XPath.first(self, child1) で特定されるノードの前に挿入されます。 挿入されるノード(child2)の親は self に変更されます。 - [PARAM] child1:
- 挿入場所の指定
- [PARAM] child2:
- 挿入されるノード
 
- size -> Integer[permalink][rdoc][edit]
- length -> Integer
- 
保持している子ノードの数を返します。 
- parent? -> bool[permalink][rdoc][edit]
- 
true を返します。 [SEE_ALSO] REXML::Node#parent 
- replace_child(to_replace, replacement) -> ()[permalink][rdoc][edit]
- 
子ノード列上の to_replace を replacement に置き換えます。 to_replace の parent は nil に、 replacement の parent は selfに変更されます。 - [PARAM] to_replace:
- 置き換え元のノード
- [PARAM] replacement:
- 置き換え先のノード
 
- unshift(object) -> ()[permalink][rdoc][edit]
- 
object を子ノード列の最初に追加します。 object の親ノードには self が設定されます。 - [PARAM] object:
- 追加するノード