source: trunk/Include/Classes/System/Xml/XmlNode.ab@ 402

Last change on this file since 402 was 402, checked in by dai, 16 years ago

・XML関連のクラスの枠組みを追加。
・動的型情報にメンバ情報を改善。

File size: 3.0 KB
Line 
1Namespace System
2Namespace Xml
3
4/*!
5@brief XMLドキュメント内の単一のノードを表す。
6*/
7Class XmlNode
8Public
9
10 attributes As XmlAttributeCollection
11 childNodes As XmlNodeList
12
13 /*!
14 @brief 名前またはインデックスによってアクセスできる属性のコレクションを表します。
15 */
16 Function Attributes() As XmlAttributeCollection
17 Return attributes
18 End Function
19
20 /*!
21 @brief 子ノードリストを返します。
22 */
23 Function ChildNodes() As XmlNodeList
24 Return childNodes
25 End Function
26
27 /*!
28 @brief ノードの最初の子を取得します。
29 */
30 Function FirstChild() As XmlNode
31 If childNodes.Count = 0 Then
32 ' 子ノードが1つもないときはNothingを返す
33 Return Nothing
34 End If
35 Return childNodes[0]
36 End Function
37
38 /*!
39 @brief 子ノードが1つ以上あるかどうかを取得します。
40 */
41 Function HasChildNodes() As Boolean
42 Return Not ( childNodes.Count = 0 )
43 End Function
44
45 /*!
46 @brief このノードの子ノードリストの末尾に指定したノードを追加する。
47 */
48 Function AppendChild( newChild As XmlNode ) As XmlNode
49 ' TODO: 実装
50 End Function
51
52 /*!
53 @brief ノードを複製する。
54 */
55 Function Clone() As XmlNode
56 ' TODO: 実装
57 End Function
58
59 /*!
60 @brief 派生クラスでオーバーライドされた場合は、ノードの複製を作成する。
61 */
62 Function CloneNode( deep As Boolean ) As XmlNode
63 ' TODO: 実装
64 End Function
65
66 /*!
67 @brief XmlNode のノードに対する Foreachスタイルの反復をサポートします。
68 */
69 Function GetEnumerator() As IEnumerator
70 ' TODO: 実装
71 End Function
72
73 /*!
74 @brief 指定したノードを指定した参照ノードの直後に挿入します。
75 @param newChild 挿入するXmlNode。
76 refChild 参照ノードであるXmlNode。newNode は、refNode の後に配置されます。
77 @return 挿入されるノード。
78 */
79 Function InsertAfter( newChild As XmlNode, refChild As XmlNode ) As XmlNode
80 ' TODO: 実装
81 End Function
82
83 /*!
84 @brief 指定したノードを指定した参照ノードの直前に挿入します。
85 @param newChild 挿入するXmlNode。
86 refChild 参照ノードであるXmlNode。newNode は、refNode の前に配置されます。
87 @return 挿入されるノード。
88 */
89 Function InsertBefore( newChild As XmlNode, refChild As XmlNode ) As XmlNode
90 ' TODO: 実装
91 End Function
92
93 /*!
94 @brief このノードの子ノードのリストの先頭に、指定したノードを追加します。
95 @param newChild 挿入するXmlNode。
96 @return 挿入されるノード。
97 */
98 Function PrependChild( newChild As XmlNode ) As XmlNode
99 ' TODO: 実装
100 End Function
101
102 /*!
103 @brief 現在のノードのすべての子ノードと属性の両方、またはそのいずれかを削除します。
104 */
105 Sub RemoveAll()
106 ' TODO: 実装
107 End Sub
108
109 /*!
110 @brief 現在のノードのすべての子ノードと属性の両方、またはそのいずれかを削除します。
111 @param newChild 削除するXmlNode。
112 @return 削除されたノード。
113 */
114 Function RemoveChild( oldChild As XmlNode ) As XmlNode
115 ' TODO: 実装
116 End Function
117
118 /*!
119 @brief 子ノード oldChild を newChild ノードに置き換えます。
120 @param newChild 新しいノード。
121 oldChild 置換されノード。
122 @return 置き換えられたノード。
123 */
124 Function ReplaceChild( newChild As XmlNode, oldChild As XmlNode ) As XmlNode
125 ' TODO: 実装
126 End Function
127
128End Class
129
130
131End Namespace
132End Namespace
Note: See TracBrowser for help on using the repository browser.