1 <Type Name="XmlNameTable" FullName="System.Xml.XmlNameTable" FullNameSP="System_Xml_XmlNameTable" Maintainer="ecma">
2 <TypeSignature Language="ILASM" Value=".class public abstract XmlNameTable extends System.Object" />
3 <TypeSignature Language="C#" Value="public abstract class XmlNameTable" />
4 <MemberOfLibrary>XML</MemberOfLibrary>
6 <AssemblyName>System.Xml</AssemblyName>
7 <AssemblyPublicKey>[00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00 ]</AssemblyPublicKey>
8 <AssemblyVersion>1.0.5000.0</AssemblyVersion>
9 <AssemblyVersion>2.0.0.0</AssemblyVersion>
11 <ThreadingSafetyStatement>All public static members of this type are safe for multithreaded operations. No instance members are guaranteed to be thread safe.</ThreadingSafetyStatement>
13 <BaseTypeName>System.Object</BaseTypeName>
18 <para> Creates a table that stores unique instances of <see cref="T:System.String" qualify="true" /> objects.</para>
21 <para>Only a single instance of any given string is stored even if the string is
22 added multiple times to the table.</para>
23 <para>Using this class provides an efficient means for an XML parser to use the
24 same <see cref="T:System.String" qualify="true" />
25 object for all repeated element and attribute names in an XML document. If the
26 same object is used for all repeated names, the efficiency of name comparisons
27 is increased by allowing the names to be compared using object comparisons
28 rather than string comparisons.</para>
29 <block subset="none" type="note">
31 <see langword="abstract" /> and is implemented in the <see cref="T:System.Xml.NameTable" /> class.</para>
35 <para>See the <see cref="T:System.Xml.NameTable" /> class for an example using this
40 <Member MemberName=".ctor">
41 <MemberSignature Language="ILASM" Value="family specialname instance void .ctor()" />
42 <MemberSignature Language="C#" Value="protected XmlNameTable ();" />
43 <MemberType>Constructor</MemberType>
47 <summary>Constructs a new instance of the <see cref="T:System.Xml.XmlNameTable" /> class.</summary>
48 <remarks>To be added.</remarks>
50 <Excluded>0</Excluded>
52 <AssemblyVersion>1.0.5000.0</AssemblyVersion>
53 <AssemblyVersion>2.0.0.0</AssemblyVersion>
56 <Member MemberName="Add">
57 <MemberSignature Language="ILASM" Value=".method public hidebysig virtual abstract string Add(string array)" />
58 <MemberSignature Language="C#" Value="public abstract string Add (string name);" />
59 <MemberType>Method</MemberType>
61 <ReturnType>System.String</ReturnType>
64 <Parameter Name="name" Type="System.String" />
67 <param name="name">The <see cref="T:System.String" /> to add.</param>
69 <para>Adds the specified <see cref="T:System.String" qualify="true" /> to the table if a <see cref="T:System.String" qualify="true" /> instance with the same value does not
70 already exist in the table.</para>
74 <paramref name="array" />, if it did not exist in the table at the time of the call, or
75 the <see cref="T:System.String" />
76 instance previously stored in the table with a value equal to <paramref name="array" />.</para>
80 <block subset="none" type="behaviors"> Only a single
81 instance of any given <see cref="T:System.String" /> is stored in the table. If the value
82 of <paramref name="array" /> is already stored in the table, the <see cref="T:System.String" /> instance with that
83 value is returned.</block>
86 <block subset="none" type="overrides"> This method must be overridden in order to
87 provide the functionality described above, as there is no default implementation.
91 <exception cref="T:System.ArgumentNullException">
92 <paramref name="array" /> is <see langword="null" />.</exception>
94 <Excluded>0</Excluded>
96 <AssemblyVersion>1.0.5000.0</AssemblyVersion>
97 <AssemblyVersion>2.0.0.0</AssemblyVersion>
100 <Member MemberName="Add">
101 <MemberSignature Language="ILASM" Value=".method public hidebysig virtual abstract string Add(class System.Char[] array, int32 offset, int32 length)" />
102 <MemberSignature Language="C#" Value="public abstract string Add (char[] buffer, int offset, int length);" />
103 <MemberType>Method</MemberType>
105 <ReturnType>System.String</ReturnType>
108 <Parameter Name="buffer" Type="System.Char[]" />
109 <Parameter Name="offset" Type="System.Int32" />
110 <Parameter Name="length" Type="System.Int32" />
113 <param name="buffer">To be added.</param>
114 <param name="offset">A <see cref="T:System.Int32" qualify="true" /> specifying the zero-based index into the array of the first character of the string.</param>
115 <param name="length">A <see cref="T:System.Int32" qualify="true" /> containing the number of characters in the string.</param>
117 <para>Adds the <see cref="T:System.String" qualify="true" /> equivalent of a specified subset of a <see cref="T:System.Char" qualify="true" /> array to the
118 table if the string equivalent does not already exist in the
122 <para>The <see cref="T:System.String" qualify="true" />
123 equivalent of the specified subset of the <see cref="T:System.Char" qualify="true" /> array that is stored in the table, or
124 <see cref="F:System.String.Empty" qualify="true" /> if
125 <paramref name="length" /> is zero.</para>
129 <block subset="none" type="behaviors"> Only a single
130 instance of any given <see cref="T:System.String" /> is stored in the table. Calling this method with the
131 same subset (containing the same characters) of any <see cref="T:System.Char" qualify="true" /> array, returns
132 the same instance of the <see cref="T:System.String" qualify="true" />
136 <block subset="none" type="overrides"> This method must be overridden in order to
137 provide the functionality described above, as there is no default implementation.
141 <exception cref="T:System.IndexOutOfRangeException">
143 <paramref name="offset" /> < 0.</para>
146 <paramref name="offset" /> >= <paramref name="array" />.Length.</para>
149 <paramref name="length" /> > <paramref name="array" />.Length - <paramref name="offset" />.</para>
150 <para>The above conditions do not cause an exception to be thrown if <paramref name="length" /> = 0.</para>
152 <exception cref="T:System.ArgumentOutOfRangeException">
153 <paramref name="length" /> < 0.</exception>
155 <Excluded>0</Excluded>
157 <AssemblyVersion>1.0.5000.0</AssemblyVersion>
158 <AssemblyVersion>2.0.0.0</AssemblyVersion>
161 <Member MemberName="Get">
162 <MemberSignature Language="ILASM" Value=".method public hidebysig virtual abstract string Get(string array)" />
163 <MemberSignature Language="C#" Value="public abstract string Get (string name);" />
164 <MemberType>Method</MemberType>
166 <ReturnType>System.String</ReturnType>
169 <Parameter Name="name" Type="System.String" />
172 <param name="name">The <see cref="T:System.String" qualify="true" /> to look up.</param>
174 <para>Looks up the value of the specified <see cref="T:System.String" qualify="true" /> in the table.</para>
177 <para>The <see cref="T:System.String" />
178 instance previously stored in the table with a value equal to <paramref name="array" />, or <see langword="null" /> if it does not exist.</para>
182 <block subset="none" type="behaviors"> Only a single
183 instance of any given <see cref="T:System.String" /> is stored in the table. If the value
184 of <paramref name="array" /> is already stored in the table, the <see cref="T:System.String" /> instance with that value is returned. </block>
187 <block subset="none" type="overrides"> This method must be overridden in order to
188 provide the functionality described above, as there is no default implementation.
192 <exception cref="T:System.ArgumentNullException">
193 <paramref name="array" /> is <see langword="null" />.</exception>
195 <Excluded>0</Excluded>
197 <AssemblyVersion>1.0.5000.0</AssemblyVersion>
198 <AssemblyVersion>2.0.0.0</AssemblyVersion>
201 <Member MemberName="Get">
202 <MemberSignature Language="ILASM" Value=".method public hidebysig virtual abstract string Get(class System.Char[] array, int32 offset, int32 length)" />
203 <MemberSignature Language="C#" Value="public abstract string Get (char[] buffer, int offset, int length);" />
204 <MemberType>Method</MemberType>
206 <ReturnType>System.String</ReturnType>
209 <Parameter Name="buffer" Type="System.Char[]" />
210 <Parameter Name="offset" Type="System.Int32" />
211 <Parameter Name="length" Type="System.Int32" />
214 <param name="buffer">To be added.</param>
215 <param name="offset">A <see cref="T:System.Int32" qualify="true" /> specifying the zero-based index into the array of the first character of the string.</param>
216 <param name="length">A <see cref="T:System.Int32" qualify="true" /> containing the number of characters in the string.</param>
218 <para>Looks up the <see cref="T:System.String" qualify="true" /> equivalent of a specified subset of a <see cref="T:System.Char" qualify="true" /> array in the
222 <para>The <see cref="T:System.String" qualify="true" />
223 equivalent of the specified subset of the <see cref="T:System.Char" qualify="true" /> array that is stored in the table, or
224 <see langword="null" /> if the equivalent <see cref="T:System.String" /> is not in the table.</para>
228 <block subset="none" type="behaviors"> Only a single
229 instance of any given <see cref="T:System.String" /> is stored in the table. Calling this method with the
230 same subset (containing the same characters) of any <see cref="T:System.Char" qualify="true" /> array, returns
231 the same instance of the <see cref="T:System.String" qualify="true" /> equivalent, if it exists. </block>
234 <block subset="none" type="overrides"> This method must be overridden in order to
235 provide the functionality described above, as there is no default implementation.
239 <exception cref="T:System.IndexOutOfRangeException">
240 <paramref name="offset" /> < 0. <para>- or -</para><para><paramref name="offset" /> >= <paramref name="array" />.Length.</para><para>- or -</para><para><paramref name="length" /> > <paramref name="array" />.Length - <paramref name="offset" />.</para><para>The above conditions do not cause an exception to be thrown if <paramref name="length" /> = 0.</para></exception>
241 <exception cref="T:System.ArgumentOutOfRangeException">
242 <paramref name="length" /> < 0.</exception>
244 <Excluded>0</Excluded>
246 <AssemblyVersion>1.0.5000.0</AssemblyVersion>
247 <AssemblyVersion>2.0.0.0</AssemblyVersion>
251 <TypeExcluded>0</TypeExcluded>