File: XPathNodeIterator.xml

package info (click to toggle)
mono-reference-assemblies 3.12.1%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 604,240 kB
  • ctags: 625,505
  • sloc: cs: 3,967,741; xml: 2,793,081; ansic: 418,042; java: 60,435; sh: 14,833; makefile: 11,576; sql: 7,956; perl: 1,467; cpp: 1,446; yacc: 1,203; python: 598; asm: 422; sed: 16; php: 1
file content (264 lines) | stat: -rw-r--r-- 19,730 bytes parent folder | download | duplicates (10)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
<?xml version="1.0" encoding="utf-8"?>
<Type Name="XPathNodeIterator" FullName="System.Xml.XPath.XPathNodeIterator">
  <TypeSignature Maintainer="auto" Language="C#" Value="public abstract class XPathNodeIterator : ICloneable, System.Collections.IEnumerable" />
  <TypeSignature Language="ILAsm" Value=".class public auto ansi abstract beforefieldinit XPathNodeIterator extends System.Object implements class System.Collections.IEnumerable, class System.ICloneable" />
  <AssemblyInfo>
    <AssemblyName>System.Xml</AssemblyName>
    <AssemblyPublicKey>[00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00]</AssemblyPublicKey>
    <AssemblyVersion>1.0.5000.0</AssemblyVersion>
    <AssemblyVersion>2.0.0.0</AssemblyVersion>
    <AssemblyVersion>4.0.0.0</AssemblyVersion>
  </AssemblyInfo>
  <ThreadSafetyStatement>All dynamic members are not designed to be thread safe.</ThreadSafetyStatement>
  <Base>
    <BaseTypeName>System.Object</BaseTypeName>
  </Base>
  <Interfaces>
    <Interface>
      <InterfaceName>System.Collections.IEnumerable</InterfaceName>
    </Interface>
    <Interface>
      <InterfaceName>System.ICloneable</InterfaceName>
    </Interface>
  </Interfaces>
  <Docs>
    <remarks>
      <attribution license="cc4" from="Microsoft" modified="false" />
      <para>An <see cref="T:System.Xml.XPath.XPathNodeIterator" /> object returned by the <see cref="T:System.Xml.XPath.XPathNavigator" /> class is not positioned on the first node in a selected set of nodes. A call to the <see cref="M:System.Xml.XPath.XPathNodeIterator.MoveNext" /> method of the <see cref="T:System.Xml.XPath.XPathNodeIterator" /> class must be made to position the <see cref="T:System.Xml.XPath.XPathNodeIterator" /> object on the first node in the selected set of nodes.</para>
      <para>When using the <see cref="T:System.Xml.XPath.XPathNodeIterator" />, if you edit the current node or any of its ancestors, your current position is lost. If you want to edit a number of nodes that you have selected, create a <see cref="T:System.Xml.XPath.XPathNavigator" /> array, copy all of the nodes from the <see cref="T:System.Xml.XPath.XPathNodeIterator" /> into the array, then iterate through the array and modify the nodes.</para>
      <para>There are two ways to iterate over an <see cref="T:System.Xml.XPath.XPathNavigator" /> collection by using the <see cref="T:System.Xml.XPath.XPathNodeIterator" /> class.</para>
      <para>One way is to use the <see cref="M:System.Xml.XPath.XPathNodeIterator.MoveNext" /> method and then call <see cref="P:System.Xml.XPath.XPathNodeIterator.Current" /> to get the current <see cref="T:System.Xml.XPath.XPathNavigator" /> instance, as in the following example:</para>
      <para>code reference: XPathNavigatorMethods#55</para>
      <para>Another way is to use a foreach loop to call the <see cref="M:System.Xml.XPath.XPathNodeIterator.GetEnumerator" /> method and use the returned <see cref="T:System.Collections.IEnumerator" /> interface to enumerate the nodes, as in the following example:</para>
      <para>code reference: XPathNavigatorMethods#56</para>
      <para>You should either use <see cref="M:System.Xml.XPath.XPathNodeIterator.MoveNext" /> and <see cref="P:System.Xml.XPath.XPathNodeIterator.Current" /> or use <see cref="M:System.Xml.XPath.XPathNodeIterator.GetEnumerator" />. Combining these two approaches can cause unexpected results. For example, if the <see cref="M:System.Xml.XPath.XPathNodeIterator.MoveNext" /> method is called first, and then the <see cref="M:System.Xml.XPath.XPathNodeIterator.GetEnumerator" /> method is called in the foreach loop, the foreach loop will not start enumerating the results from the beginning of the collection, but from the position after the <see cref="P:System.Xml.XPath.XPathNodeIterator.Current" /> method.</para>
    </remarks>
    <summary>
      <attribution license="cc4" from="Microsoft" modified="false" />
      <para>Provides an iterator over a selected set of nodes.</para>
    </summary>
  </Docs>
  <Members>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="protected XPathNodeIterator ();" />
      <MemberSignature Language="ILAsm" Value=".method familyhidebysig specialname rtspecialname instance void .ctor() cil managed" />
      <MemberType>Constructor</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue />
      <Parameters />
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This constructor is called by derived class constructors to initialize state in this type.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Initializes a new instance of the <see cref="T:System.Xml.XPath.XPathNodeIterator" /> class.</para>
        </summary>
      </Docs>
    </Member>
    <Member MemberName="Clone">
      <MemberSignature Language="C#" Value="public abstract System.Xml.XPath.XPathNodeIterator Clone ();" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Xml.XPath.XPathNodeIterator Clone() cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Xml.XPath.XPathNodeIterator</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The cloned <see cref="T:System.Xml.XPath.XPathNodeIterator" /> object is positioned at the same node in the node set if calls have been made to the <see cref="M:System.Xml.XPath.XPathNodeIterator.MoveNext" /> method. The cloned <see cref="T:System.Xml.XPath.XPathNodeIterator" /> object is not affected by subsequent changes to this <see cref="T:System.Xml.XPath.XPathNodeIterator" /> object.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>When overridden in a derived class, returns a clone of this <see cref="T:System.Xml.XPath.XPathNodeIterator" /> object.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A new <see cref="T:System.Xml.XPath.XPathNodeIterator" /> object clone of this <see cref="T:System.Xml.XPath.XPathNodeIterator" /> object.</para>
        </returns>
      </Docs>
    </Member>
    <Member MemberName="Count">
      <MemberSignature Language="C#" Value="public virtual int Count { get; }" />
      <MemberSignature Language="ILAsm" Value=".property instance int32 Count" />
      <MemberType>Property</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Int32</ReturnType>
      </ReturnValue>
      <Docs>
        <value>An integer value that represents the total count of the nodes.</value>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="P:System.Xml.XPath.XPathNodeIterator.Count" /> property does not affect the position of the <see cref="T:System.Xml.XPath.XPathNodeIterator" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Gets the index of the last node in the selected set of nodes.</para>
        </summary>
      </Docs>
    </Member>
    <Member MemberName="Current">
      <MemberSignature Language="C#" Value="public abstract System.Xml.XPath.XPathNavigator Current { get; }" />
      <MemberSignature Language="ILAsm" Value=".property instance class System.Xml.XPath.XPathNavigator Current" />
      <MemberType>Property</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Xml.XPath.XPathNavigator</ReturnType>
      </ReturnValue>
      <Docs>
        <value>An <see cref="T:System.Xml.XPath.XPathNavigator" /> instance that represents the current node.</value>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>You can use the properties of the returned <see cref="T:System.Xml.XPath.XPathNavigator" /> object to obtain information on the current node. However, the returned <see cref="T:System.Xml.XPath.XPathNavigator" /> object should not be modified. The returned <see cref="T:System.Xml.XPath.XPathNavigator" /> object cannot be moved away from the selected node set.</para>
          <para>Alternatively, you can clone the <see cref="T:System.Xml.XPath.XPathNavigator" /> object using the <see cref="M:System.Xml.XPath.XPathNavigator.Clone" /> method of the <see cref="T:System.Xml.XPath.XPathNavigator" /> class. The cloned <see cref="T:System.Xml.XPath.XPathNavigator" /> object can then be moved away from the selected node set. This method of cloning the <see cref="T:System.Xml.XPath.XPathNavigator" /> object might affect the performance of the XPath query.</para>
          <para>If the <see cref="Overload:System.Xml.XPath.XPathNavigator.SelectAncestors" />, <see cref="Overload:System.Xml.XPath.XPathNavigator.SelectDescendants" />, and <see cref="Overload:System.Xml.XPath.XPathNavigator.SelectChildren" /> methods result in no nodes being selected, the <see cref="P:System.Xml.XPath.XPathNodeIterator.Current" /> property might not be pointing to the context node.</para>
          <para>To test whether nodes have been selected, use the <see cref="P:System.Xml.XPath.XPathNodeIterator.Count" /> property as shown in the following example.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>When overridden in a derived class, gets the <see cref="T:System.Xml.XPath.XPathNavigator" /> object for this <see cref="T:System.Xml.XPath.XPathNodeIterator" />, positioned on the current context node.</para>
        </summary>
      </Docs>
    </Member>
    <Member MemberName="CurrentPosition">
      <MemberSignature Language="C#" Value="public abstract int CurrentPosition { get; }" />
      <MemberSignature Language="ILAsm" Value=".property instance int32 CurrentPosition" />
      <MemberType>Property</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Int32</ReturnType>
      </ReturnValue>
      <Docs>
        <value>an integer value that represents the position.</value>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The index is 1-based. Therefore, the first node has an index of 1. An index of 0 indicates there are no selected nodes. This property always returns a positive integer.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>When overridden in a derived class, gets the index of the current position in the selected set of nodes.</para>
        </summary>
      </Docs>
    </Member>
    <Member MemberName="GetEnumerator">
      <MemberSignature Language="C#" Value="public virtual System.Collections.IEnumerator GetEnumerator ();" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Collections.IEnumerator GetEnumerator() cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Collections.IEnumerator</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <since version=".NET 2.0" />
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The enumerator is positioned on the current position of the <see cref="T:System.Xml.XPath.XPathNodeIterator" /> object.</para>
          <para>There are two ways to iterate over an <see cref="T:System.Xml.XPath.XPathNavigator" /> collection by using the <see cref="T:System.Xml.XPath.XPathNodeIterator" /> class.</para>
          <para>One way is to use the <see cref="M:System.Xml.XPath.XPathNodeIterator.MoveNext" /> method and then call <see cref="P:System.Xml.XPath.XPathNodeIterator.Current" /> to get the current <see cref="T:System.Xml.XPath.XPathNavigator" /> instance, as in the following example:</para>
          <para>code reference: XPathNavigatorMethods#55</para>
          <para>Another way is to use a foreach loop to call the <see cref="M:System.Xml.XPath.XPathNodeIterator.GetEnumerator" /> method and use the returned <see cref="T:System.Collections.IEnumerator" /> interface to enumerate the nodes, as in the following example:</para>
          <para>code reference: XPathNavigatorMethods#56</para>
          <para>You should either use the <see cref="M:System.Xml.XPath.XPathNodeIterator.MoveNext" /> method and <see cref="P:System.Xml.XPath.XPathNodeIterator.Current" /> or use the <see cref="M:System.Xml.XPath.XPathNodeIterator.GetEnumerator" /> method. Combining these two approaches can cause unexpected results. For example, if the <see cref="M:System.Xml.XPath.XPathNodeIterator.MoveNext" /> method is called first, and then the <see cref="M:System.Xml.XPath.XPathNodeIterator.GetEnumerator" /> method is called in the foreach loop, the foreach loop will not start enumerating the results from the beginning of the collection, but from the position after the <see cref="P:System.Xml.XPath.XPathNodeIterator.Current" /> method.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns an <see cref="T:System.Collections.IEnumerator" /> object to iterate through the selected node set.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Collections.IEnumerator" /> object to iterate through the selected node set.</para>
        </returns>
      </Docs>
    </Member>
    <Member MemberName="MoveNext">
      <MemberSignature Language="C#" Value="public abstract bool MoveNext ();" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance bool MoveNext() cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="T:System.Xml.XPath.XPathNodeIterator" /> object is positioned on the first node in the selected node set only after the initial call to the <see cref="M:System.Xml.XPath.XPathNodeIterator.MoveNext" /> method. The node set is created in document order. Therefore, calling the <see cref="M:System.Xml.XPath.XPathNodeIterator.MoveNext" /> method moves to the next node in document order.</para>
          <para>There are two ways to iterate over an <see cref="T:System.Xml.XPath.XPathNavigator" /> collection by using the <see cref="T:System.Xml.XPath.XPathNodeIterator" /> class.</para>
          <para>One way is to use the <see cref="M:System.Xml.XPath.XPathNodeIterator.MoveNext" /> method and then call <see cref="P:System.Xml.XPath.XPathNodeIterator.Current" /> to get the current <see cref="T:System.Xml.XPath.XPathNavigator" /> instance, as in the following example:</para>
          <para>code reference: XPathNavigatorMethods#55</para>
          <para>Another way is to use a foreach loop to call the <see cref="M:System.Xml.XPath.XPathNodeIterator.GetEnumerator" /> method and use the returned <see cref="T:System.Collections.IEnumerator" /> interface to enumerate the nodes, as in the following example:</para>
          <para>code reference: XPathNavigatorMethods#56</para>
          <para>You should either use the <see cref="M:System.Xml.XPath.XPathNodeIterator.MoveNext" /> method and <see cref="P:System.Xml.XPath.XPathNodeIterator.Current" /> or use the <see cref="M:System.Xml.XPath.XPathNodeIterator.GetEnumerator" /> method. Combining these two approaches can cause unexpected results. For example, if the <see cref="M:System.Xml.XPath.XPathNodeIterator.MoveNext" /> method is called first, and then the <see cref="M:System.Xml.XPath.XPathNodeIterator.GetEnumerator" /> method is called in the foreach loop, the foreach loop will not start enumerating the results from the beginning of the collection, but from the position after the <see cref="P:System.Xml.XPath.XPathNodeIterator.Current" /> method.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>When overridden in a derived class, moves the <see cref="T:System.Xml.XPath.XPathNavigator" /> object returned by the <see cref="P:System.Xml.XPath.XPathNodeIterator.Current" /> property to the next node in the selected node set.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>true if the <see cref="T:System.Xml.XPath.XPathNavigator" /> object moved to the next node; false if there are no more selected nodes.</para>
        </returns>
      </Docs>
    </Member>
    <Member MemberName="System.ICloneable.Clone">
      <MemberSignature Language="C#" Value="object ICloneable.Clone ();" />
      <MemberSignature Language="ILAsm" Value=".method hidebysig newslot virtual instance object System.ICloneable.Clone() cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Object</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This member is an explicit interface member implementation. It can be used only when the <see cref="T:System.Xml.XPath.XPathNodeIterator" /> instance is cast to an <see cref="T:System.ICloneable" /> interface.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Creates a new object that is a copy of the current instance.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A new object that is a copy of this instance.</para>
        </returns>
      </Docs>
    </Member>
  </Members>
</Type>