4 <name>System.Collections.Immutable</name>
7 <member name="T:System.Collections.Generic.IHashKeyCollection`1">
9 Defined on a generic collection that hashes its contents using an <see cref="T:System.Collections.Generic.IEqualityComparer`1"/>.
11 <typeparam name="TKey">The type of element hashed in the collection.</typeparam>
13 <member name="P:System.Collections.Generic.IHashKeyCollection`1.KeyComparer">
15 Gets the comparer used to obtain hash codes for the keys and check equality.
18 <member name="T:System.Collections.Generic.ISortKeyCollection`1">
20 Defined on a generic collection that sorts its contents using an <see cref="T:System.Collections.Generic.IComparer`1"/>.
22 <typeparam name="TKey">The type of element sorted in the collection.</typeparam>
24 <member name="P:System.Collections.Generic.ISortKeyCollection`1.KeyComparer">
26 Gets the comparer used to sort keys.
29 <member name="T:System.Collections.Immutable.DisposableEnumeratorAdapter`2">
31 An adapter that allows a single foreach loop in C# to avoid
32 boxing an enumerator when possible, but fall back to boxing when necessary.
34 <typeparam name="T">The type of value to be enumerated.</typeparam>
35 <typeparam name="TEnumerator">The type of the enumerator struct.</typeparam>
37 <member name="F:System.Collections.Immutable.DisposableEnumeratorAdapter`2._enumeratorObject">
39 The enumerator object to use if not null.
42 <member name="F:System.Collections.Immutable.DisposableEnumeratorAdapter`2._enumeratorStruct">
44 The enumerator struct to use if <see cref="F:System.Collections.Immutable.DisposableEnumeratorAdapter`2._enumeratorObject"/> is <c>null</c>.
47 This field must NOT be readonly because the field's value is a struct and must be able to mutate
48 in-place. A readonly keyword would cause any mutation to take place in a copy rather than the field.
51 <member name="M:System.Collections.Immutable.DisposableEnumeratorAdapter`2.#ctor(`1)">
53 Initializes a new instance of the <see cref="T:System.Collections.Immutable.DisposableEnumeratorAdapter`2"/> struct
54 for enumerating over a strongly typed struct enumerator.
56 <param name="enumerator">The initialized enumerator struct.</param>
58 <member name="M:System.Collections.Immutable.DisposableEnumeratorAdapter`2.#ctor(System.Collections.Generic.IEnumerator{`0})">
60 Initializes a new instance of the <see cref="T:System.Collections.Immutable.DisposableEnumeratorAdapter`2"/> struct
61 for enumerating over a (boxed) <see cref="T:System.Collections.Generic.IEnumerable`1"/> enumerator.
63 <param name="enumerator">The initialized enumerator object.</param>
65 <member name="P:System.Collections.Immutable.DisposableEnumeratorAdapter`2.Current">
67 Gets the current enumerated value.
70 <member name="M:System.Collections.Immutable.DisposableEnumeratorAdapter`2.MoveNext">
72 Moves to the next value.
75 <member name="M:System.Collections.Immutable.DisposableEnumeratorAdapter`2.Dispose">
77 Disposes the underlying enumerator.
80 <member name="M:System.Collections.Immutable.DisposableEnumeratorAdapter`2.GetEnumerator">
82 Returns a copy of this struct.
85 This member is here so that it can be used in C# foreach loops.
88 <member name="T:System.Collections.Immutable.IBinaryTree">
90 An interface for binary tree nodes that allow our common enumerator to walk the graph.
93 <member name="P:System.Collections.Immutable.IBinaryTree.Height">
95 Gets the depth of the tree below this node.
98 <member name="P:System.Collections.Immutable.IBinaryTree.IsEmpty">
100 Gets a value indicating whether this node is empty.
103 <member name="P:System.Collections.Immutable.IBinaryTree.Count">
105 Gets the number of non-empty nodes at this node and below.
107 <exception cref="T:System.NotSupportedException">Thrown if the implementation does not store this value at the node.</exception>
109 <member name="P:System.Collections.Immutable.IBinaryTree.Left">
111 Gets the left branch of this node.
114 <member name="P:System.Collections.Immutable.IBinaryTree.Right">
116 Gets the right branch of this node.
119 <member name="T:System.Collections.Immutable.IBinaryTree`1">
121 An interface for binary tree nodes that allow our common enumerator to walk the graph.
123 <typeparam name="T">The type of value for each node.</typeparam>
125 <member name="P:System.Collections.Immutable.IBinaryTree`1.Value">
127 Gets the value represented by the current node.
130 <member name="P:System.Collections.Immutable.IBinaryTree`1.Left">
132 Gets the left branch of this node.
135 <member name="P:System.Collections.Immutable.IBinaryTree`1.Right">
137 Gets the right branch of this node.
140 <member name="T:System.Collections.Immutable.IImmutableArray">
142 An internal non-generic interface implemented by <see cref="T:System.Collections.Immutable.ImmutableArray`1"/>
143 that allows for recognition of an <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> instance and access
144 to its underlying array, without actually knowing the type of value
148 Casting to this interface requires a boxed instance of the <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> struct,
149 and as such should be avoided. This interface is useful, however, where the value
150 is already boxed and we want to try to reuse immutable arrays instead of copying them.
151 ** This interface is INTENTIONALLY INTERNAL, as it gives access to the inner array. **
154 <member name="P:System.Collections.Immutable.IImmutableArray.Array">
156 Gets an untyped reference to the array.
159 <member name="T:System.Collections.Immutable.IImmutableDictionary`2">
161 An immutable key-value dictionary.
163 <typeparam name="TKey">The type of the key.</typeparam>
164 <typeparam name="TValue">The type of the value.</typeparam>
166 <member name="M:System.Collections.Immutable.IImmutableDictionary`2.Clear">
168 Gets an empty dictionary with equivalent ordering and key/value comparison rules.
171 <member name="M:System.Collections.Immutable.IImmutableDictionary`2.Add(`0,`1)">
173 Adds the specified key and value to the dictionary.
175 <param name="key">The key of the entry to add.</param>
176 <param name="value">The value of the entry to add.</param>
177 <returns>The new dictionary containing the additional key-value pair.</returns>
178 <exception cref="T:System.ArgumentException">Thrown when the given key already exists in the dictionary but has a different value.</exception>
180 If the given key-value pair are already in the dictionary, the existing instance is returned.
183 <member name="M:System.Collections.Immutable.IImmutableDictionary`2.AddRange(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{`0,`1}})">
185 Adds the specified key-value pairs to the dictionary.
187 <param name="pairs">The pairs.</param>
188 <returns>The new dictionary containing the additional key-value pairs.</returns>
189 <exception cref="T:System.ArgumentException">Thrown when one of the given keys already exists in the dictionary but has a different value.</exception>
191 <member name="M:System.Collections.Immutable.IImmutableDictionary`2.SetItem(`0,`1)">
193 Sets the specified key and value to the dictionary, possibly overwriting an existing value for the given key.
195 <param name="key">The key of the entry to add.</param>
196 <param name="value">The value of the entry to add.</param>
197 <returns>The new dictionary containing the additional key-value pair.</returns>
199 If the given key-value pair are already in the dictionary, the existing instance is returned.
200 If the key already exists but with a different value, a new instance with the overwritten value will be returned.
203 <member name="M:System.Collections.Immutable.IImmutableDictionary`2.SetItems(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{`0,`1}})">
205 Applies a given set of key=value pairs to an immutable dictionary, replacing any conflicting keys in the resulting dictionary.
207 <param name="items">The key=value pairs to set on the dictionary. Any keys that conflict with existing keys will overwrite the previous values.</param>
208 <returns>An immutable dictionary.</returns>
210 <member name="M:System.Collections.Immutable.IImmutableDictionary`2.RemoveRange(System.Collections.Generic.IEnumerable{`0})">
212 Removes the specified keys from the dictionary with their associated values.
214 <param name="keys">The keys to remove.</param>
215 <returns>A new dictionary with those keys removed; or this instance if those keys are not in the dictionary.</returns>
217 <member name="M:System.Collections.Immutable.IImmutableDictionary`2.Remove(`0)">
219 Removes the specified key from the dictionary with its associated value.
221 <param name="key">The key to remove.</param>
222 <returns>A new dictionary with the matching entry removed; or this instance if the key is not in the dictionary.</returns>
224 <member name="M:System.Collections.Immutable.IImmutableDictionary`2.Contains(System.Collections.Generic.KeyValuePair{`0,`1})">
226 Determines whether this dictionary contains the specified key-value pair.
228 <param name="pair">The key value pair.</param>
230 <c>true</c> if this dictionary contains the key-value pair; otherwise, <c>false</c>.
233 <member name="M:System.Collections.Immutable.IImmutableDictionary`2.TryGetKey(`0,`0@)">
235 Searches the dictionary for a given key and returns the equal key it finds, if any.
237 <param name="equalKey">The key to search for.</param>
238 <param name="actualKey">The key from the dictionary that the search found, or <paramref name="equalKey"/> if the search yielded no match.</param>
239 <returns>A value indicating whether the search was successful.</returns>
241 This can be useful when you want to reuse a previously stored reference instead of
242 a newly constructed one (so that more sharing of references can occur) or to look up
243 the canonical value, or a value that has more complete data than the value you currently have,
244 although their comparer functions indicate they are equal.
247 <member name="M:System.Collections.Immutable.IImmutableDictionaryInternal`2.ContainsValue(`1)">
249 Determines whether the <see cref="T:System.Collections.Immutable.ImmutableDictionary`2"/>
250 contains an element with the specified value.
253 The value to locate in the <see cref="T:System.Collections.Immutable.ImmutableDictionary`2"/>.
254 The value can be null for reference types.
257 true if the <see cref="T:System.Collections.Immutable.ImmutableDictionary`2"/> contains
258 an element with the specified value; otherwise, false.
261 <member name="T:System.Collections.Immutable.IImmutableList`1">
263 A list of elements that can only be modified by creating a new instance of the list.
265 <typeparam name="T">The type of element stored in the list.</typeparam>
267 Mutations on this list generate new lists. Incremental changes to a list share as much memory as possible with the prior versions of a list,
268 while allowing garbage collection to clean up any unique list data that is no longer being referenced.
271 <member name="M:System.Collections.Immutable.IImmutableList`1.Clear">
273 Gets an empty list that retains the same sort semantics that this instance has.
276 <member name="M:System.Collections.Immutable.IImmutableList`1.IndexOf(`0,System.Int32,System.Int32,System.Collections.Generic.IEqualityComparer{`0})">
278 Searches for the specified object and returns the zero-based index of the
279 first occurrence within the range of elements in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/>
280 that starts at the specified index and contains the specified number of elements.
283 The object to locate in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/>. The value
284 can be null for reference types.
287 The zero-based starting index of the search. 0 (zero) is valid in an empty
291 The number of elements in the section to search.
293 <param name="equalityComparer">
294 The equality comparer to use in the search.
295 If <c>null</c>, <see cref="P:System.Collections.Generic.EqualityComparer`1.Default"/> is used.
298 The zero-based index of the first occurrence of item within the range of
299 elements in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/> that starts at index and
300 contains count number of elements, if found; otherwise, -1.
303 <member name="M:System.Collections.Immutable.IImmutableList`1.LastIndexOf(`0,System.Int32,System.Int32,System.Collections.Generic.IEqualityComparer{`0})">
305 Searches for the specified object and returns the zero-based index of the
306 last occurrence within the range of elements in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/>
307 that contains the specified number of elements and ends at the specified
311 The object to locate in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/>. The value
312 can be null for reference types.
314 <param name="index">The starting position of the search. The search proceeds from <paramref name="index"/> toward the beginning of this instance.</param>
315 <param name="count">The number of elements in the section to search.</param>
316 <param name="equalityComparer">
317 The equality comparer to use in the search.
318 If <c>null</c>, <see cref="P:System.Collections.Generic.EqualityComparer`1.Default"/> is used.
321 The zero-based index of the last occurrence of <paramref name="item"/> within the range of elements
322 in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/> that contains <paramref name="count"/> number of elements
323 and ends at <paramref name="index"/>, if found; otherwise, -1.
326 <member name="M:System.Collections.Immutable.IImmutableList`1.Add(`0)">
328 Adds the specified value to this list.
330 <param name="value">The value to add.</param>
331 <returns>A new list with the element added.</returns>
333 <member name="M:System.Collections.Immutable.IImmutableList`1.AddRange(System.Collections.Generic.IEnumerable{`0})">
335 Adds the specified values to this list.
337 <param name="items">The values to add.</param>
338 <returns>A new list with the elements added.</returns>
340 <member name="M:System.Collections.Immutable.IImmutableList`1.Insert(System.Int32,`0)">
342 Inserts the specified value at the specified index.
344 <param name="index">The index at which to insert the value.</param>
345 <param name="element">The element to insert.</param>
346 <returns>The new immutable list.</returns>
348 <member name="M:System.Collections.Immutable.IImmutableList`1.InsertRange(System.Int32,System.Collections.Generic.IEnumerable{`0})">
350 Inserts the specified values at the specified index.
352 <param name="index">The index at which to insert the value.</param>
353 <param name="items">The elements to insert.</param>
354 <returns>The new immutable list.</returns>
356 <member name="M:System.Collections.Immutable.IImmutableList`1.Remove(`0,System.Collections.Generic.IEqualityComparer{`0})">
358 Removes the specified value from this list.
360 <param name="value">The value to remove.</param>
361 <param name="equalityComparer">
362 The equality comparer to use in the search.
363 If <c>null</c>, <see cref="P:System.Collections.Generic.EqualityComparer`1.Default"/> is used.
365 <returns>A new list with the element removed, or this list if the element is not in this list.</returns>
367 <member name="M:System.Collections.Immutable.IImmutableList`1.RemoveAll(System.Predicate{`0})">
369 Removes all the elements that match the conditions defined by the specified
373 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the elements
380 <member name="M:System.Collections.Immutable.IImmutableList`1.RemoveRange(System.Collections.Generic.IEnumerable{`0},System.Collections.Generic.IEqualityComparer{`0})">
382 Removes the specified values from this list.
384 <param name="items">The items to remove if matches are found in this list.</param>
385 <param name="equalityComparer">
386 The equality comparer to use in the search.
387 If <c>null</c>, <see cref="P:System.Collections.Generic.EqualityComparer`1.Default"/> is used.
390 A new list with the elements removed.
393 <member name="M:System.Collections.Immutable.IImmutableList`1.RemoveRange(System.Int32,System.Int32)">
395 Removes the specified values from this list.
397 <param name="index">The starting index to begin removal.</param>
398 <param name="count">The number of elements to remove.</param>
400 A new list with the elements removed.
403 <member name="M:System.Collections.Immutable.IImmutableList`1.RemoveAt(System.Int32)">
405 Removes the element at the specified index.
407 <param name="index">The index.</param>
408 <returns>A new list with the elements removed.</returns>
410 <member name="M:System.Collections.Immutable.IImmutableList`1.SetItem(System.Int32,`0)">
412 Replaces an element in the list at a given position with the specified element.
414 <param name="index">The position in the list of the element to replace.</param>
415 <param name="value">The element to replace the old element with.</param>
416 <returns>The new list -- even if the value being replaced is equal to the new value for that position.</returns>
418 <member name="M:System.Collections.Immutable.IImmutableList`1.Replace(`0,`0,System.Collections.Generic.IEqualityComparer{`0})">
420 Replaces the first equal element in the list with the specified element.
422 <param name="oldValue">The element to replace.</param>
423 <param name="newValue">The element to replace the old element with.</param>
424 <param name="equalityComparer">
425 The equality comparer to use in the search.
426 If <c>null</c>, <see cref="P:System.Collections.Generic.EqualityComparer`1.Default"/> is used.
428 <returns>The new list -- even if the value being replaced is equal to the new value for that position.</returns>
429 <exception cref="T:System.ArgumentException">Thrown when the old value does not exist in the list.</exception>
431 <member name="T:System.Collections.Immutable.IImmutableListQueries`1">
433 An interface that describes the methods that the <see cref="T:System.Collections.Immutable.ImmutableList`1"/> and <see cref="T:System.Collections.Immutable.ImmutableList`1.Builder"/> types have in common.
435 <typeparam name="T">The type of element in the collection.</typeparam>
437 <member name="M:System.Collections.Immutable.IImmutableListQueries`1.ConvertAll``1(System.Func{`0,``0})">
439 Converts the elements in the current <see cref="T:System.Collections.Immutable.ImmutableList`1"/> to
440 another type, and returns a list containing the converted elements.
442 <param name="converter">
443 A <see cref="T:System.Func`2"/> delegate that converts each element from
444 one type to another type.
446 <typeparam name="TOutput">
447 The type of the elements of the target array.
450 A <see cref="T:System.Collections.Immutable.ImmutableList`1"/> of the target type containing the converted
451 elements from the current <see cref="T:System.Collections.Immutable.ImmutableList`1"/>.
454 <member name="M:System.Collections.Immutable.IImmutableListQueries`1.ForEach(System.Action{`0})">
456 Performs the specified action on each element of the list.
458 <param name="action">The <see cref="T:System.Action`1"/> delegate to perform on each element of the list.</param>
460 <member name="M:System.Collections.Immutable.IImmutableListQueries`1.GetRange(System.Int32,System.Int32)">
462 Creates a shallow copy of a range of elements in the source <see cref="T:System.Collections.Immutable.ImmutableList`1"/>.
465 The zero-based <see cref="T:System.Collections.Immutable.ImmutableList`1"/> index at which the range
469 The number of elements in the range.
472 A shallow copy of a range of elements in the source <see cref="T:System.Collections.Immutable.ImmutableList`1"/>.
475 <member name="M:System.Collections.Immutable.IImmutableListQueries`1.CopyTo(`0[])">
477 Copies the entire <see cref="T:System.Collections.Immutable.ImmutableList`1"/> to a compatible one-dimensional
478 array, starting at the beginning of the target array.
481 The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements
482 copied from <see cref="T:System.Collections.Immutable.ImmutableList`1"/>. The <see cref="T:System.Array"/> must have
486 <member name="M:System.Collections.Immutable.IImmutableListQueries`1.CopyTo(`0[],System.Int32)">
488 Copies the entire <see cref="T:System.Collections.Immutable.ImmutableList`1"/> to a compatible one-dimensional
489 array, starting at the specified index of the target array.
492 The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements
493 copied from <see cref="T:System.Collections.Immutable.ImmutableList`1"/>. The <see cref="T:System.Array"/> must have
496 <param name="arrayIndex">
497 The zero-based index in <paramref name="array"/> at which copying begins.
500 <member name="M:System.Collections.Immutable.IImmutableListQueries`1.CopyTo(System.Int32,`0[],System.Int32,System.Int32)">
502 Copies a range of elements from the <see cref="T:System.Collections.Immutable.ImmutableList`1"/> to
503 a compatible one-dimensional array, starting at the specified index of the
507 The zero-based index in the source <see cref="T:System.Collections.Immutable.ImmutableList`1"/> at
508 which copying begins.
511 The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements
512 copied from <see cref="T:System.Collections.Immutable.ImmutableList`1"/>. The <see cref="T:System.Array"/> must have
515 <param name="arrayIndex">The zero-based index in <paramref name="array"/> at which copying begins.</param>
516 <param name="count">The number of elements to copy.</param>
518 <member name="M:System.Collections.Immutable.IImmutableListQueries`1.Exists(System.Predicate{`0})">
520 Determines whether the <see cref="T:System.Collections.Immutable.ImmutableList`1"/> contains elements
521 that match the conditions defined by the specified predicate.
524 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the elements
528 true if the <see cref="T:System.Collections.Immutable.ImmutableList`1"/> contains one or more elements
529 that match the conditions defined by the specified predicate; otherwise,
533 <member name="M:System.Collections.Immutable.IImmutableListQueries`1.Find(System.Predicate{`0})">
535 Searches for an element that matches the conditions defined by the specified
536 predicate, and returns the first occurrence within the entire <see cref="T:System.Collections.Immutable.ImmutableList`1"/>.
539 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element
543 The first element that matches the conditions defined by the specified predicate,
544 if found; otherwise, the default value for type <typeparamref name="T"/>.
547 <member name="M:System.Collections.Immutable.IImmutableListQueries`1.FindAll(System.Predicate{`0})">
549 Retrieves all the elements that match the conditions defined by the specified
553 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the elements
557 A <see cref="T:System.Collections.Immutable.ImmutableList`1"/> containing all the elements that match
558 the conditions defined by the specified predicate, if found; otherwise, an
559 empty <see cref="T:System.Collections.Immutable.ImmutableList`1"/>.
562 <member name="M:System.Collections.Immutable.IImmutableListQueries`1.FindIndex(System.Predicate{`0})">
564 Searches for an element that matches the conditions defined by the specified
565 predicate, and returns the zero-based index of the first occurrence within
566 the entire <see cref="T:System.Collections.Immutable.ImmutableList`1"/>.
569 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element
573 The zero-based index of the first occurrence of an element that matches the
574 conditions defined by <paramref name="match"/>, if found; otherwise, -1.
577 <member name="M:System.Collections.Immutable.IImmutableListQueries`1.FindIndex(System.Int32,System.Predicate{`0})">
579 Searches for an element that matches the conditions defined by the specified
580 predicate, and returns the zero-based index of the first occurrence within
581 the range of elements in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/> that extends
582 from the specified index to the last element.
584 <param name="startIndex">The zero-based starting index of the search.</param>
585 <param name="match">The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element to search for.</param>
587 The zero-based index of the first occurrence of an element that matches the
588 conditions defined by <paramref name="match"/>, if found; otherwise, -1.
591 <member name="M:System.Collections.Immutable.IImmutableListQueries`1.FindIndex(System.Int32,System.Int32,System.Predicate{`0})">
593 Searches for an element that matches the conditions defined by the specified
594 predicate, and returns the zero-based index of the first occurrence within
595 the range of elements in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/> that starts
596 at the specified index and contains the specified number of elements.
598 <param name="startIndex">The zero-based starting index of the search.</param>
599 <param name="count">The number of elements in the section to search.</param>
600 <param name="match">The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element to search for.</param>
602 The zero-based index of the first occurrence of an element that matches the
603 conditions defined by <paramref name="match"/>, if found; otherwise, -1.
606 <member name="M:System.Collections.Immutable.IImmutableListQueries`1.FindLast(System.Predicate{`0})">
608 Searches for an element that matches the conditions defined by the specified
609 predicate, and returns the last occurrence within the entire <see cref="T:System.Collections.Immutable.ImmutableList`1"/>.
612 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element
616 The last element that matches the conditions defined by the specified predicate,
617 if found; otherwise, the default value for type <typeparamref name="T"/>.
620 <member name="M:System.Collections.Immutable.IImmutableListQueries`1.FindLastIndex(System.Predicate{`0})">
622 Searches for an element that matches the conditions defined by the specified
623 predicate, and returns the zero-based index of the last occurrence within
624 the entire <see cref="T:System.Collections.Immutable.ImmutableList`1"/>.
627 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element
631 The zero-based index of the last occurrence of an element that matches the
632 conditions defined by <paramref name="match"/>, if found; otherwise, -1.
635 <member name="M:System.Collections.Immutable.IImmutableListQueries`1.FindLastIndex(System.Int32,System.Predicate{`0})">
637 Searches for an element that matches the conditions defined by the specified
638 predicate, and returns the zero-based index of the last occurrence within
639 the range of elements in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/> that extends
640 from the first element to the specified index.
642 <param name="startIndex">The zero-based starting index of the backward search.</param>
643 <param name="match">The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element
644 to search for.</param>
646 The zero-based index of the last occurrence of an element that matches the
647 conditions defined by <paramref name="match"/>, if found; otherwise, -1.
650 <member name="M:System.Collections.Immutable.IImmutableListQueries`1.FindLastIndex(System.Int32,System.Int32,System.Predicate{`0})">
652 Searches for an element that matches the conditions defined by the specified
653 predicate, and returns the zero-based index of the last occurrence within
654 the range of elements in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/> that contains
655 the specified number of elements and ends at the specified index.
657 <param name="startIndex">The zero-based starting index of the backward search.</param>
658 <param name="count">The number of elements in the section to search.</param>
660 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element
664 The zero-based index of the last occurrence of an element that matches the
665 conditions defined by <paramref name="match"/>, if found; otherwise, -1.
668 <member name="M:System.Collections.Immutable.IImmutableListQueries`1.TrueForAll(System.Predicate{`0})">
670 Determines whether every element in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/>
671 matches the conditions defined by the specified predicate.
674 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions to check against
678 true if every element in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/> matches the
679 conditions defined by the specified predicate; otherwise, false. If the list
680 has no elements, the return value is true.
683 <member name="M:System.Collections.Immutable.IImmutableListQueries`1.BinarySearch(`0)">
685 Searches the entire sorted <see cref="T:System.Collections.Generic.IReadOnlyList`1"/> for an element
686 using the default comparer and returns the zero-based index of the element.
688 <param name="item">The object to locate. The value can be null for reference types.</param>
690 The zero-based index of <paramref name="item"/> in the sorted <see cref="T:System.Collections.Generic.IReadOnlyList`1"/>,
691 if <paramref name="item"/> is found; otherwise, a negative number that is the bitwise complement
692 of the index of the next element that is larger than <paramref name="item"/> or, if there is
693 no larger element, the bitwise complement of <see cref="P:System.Collections.Generic.IReadOnlyCollection`1.Count"/>.
695 <exception cref="T:System.InvalidOperationException">
696 The default comparer <see cref="P:System.Collections.Generic.Comparer`1.Default"/> cannot
697 find an implementation of the <see cref="T:System.IComparable`1"/> generic interface or
698 the <see cref="T:System.IComparable"/> interface for type <typeparamref name="T"/>.
701 <member name="M:System.Collections.Immutable.IImmutableListQueries`1.BinarySearch(`0,System.Collections.Generic.IComparer{`0})">
703 Searches the entire sorted <see cref="T:System.Collections.Generic.IReadOnlyList`1"/> for an element
704 using the specified comparer and returns the zero-based index of the element.
706 <param name="item">The object to locate. The value can be null for reference types.</param>
707 <param name="comparer">
708 The <see cref="T:System.Collections.Generic.IComparer`1"/> implementation to use when comparing
709 elements.-or-null to use the default comparer <see cref="P:System.Collections.Generic.Comparer`1.Default"/>.
712 The zero-based index of <paramref name="item"/> in the sorted <see cref="T:System.Collections.Generic.IReadOnlyList`1"/>,
713 if <paramref name="item"/> is found; otherwise, a negative number that is the bitwise complement
714 of the index of the next element that is larger than <paramref name="item"/> or, if there is
715 no larger element, the bitwise complement of <see cref="P:System.Collections.Generic.IReadOnlyCollection`1.Count"/>.
717 <exception cref="T:System.InvalidOperationException">
718 <paramref name="comparer"/> is null, and the default comparer <see cref="P:System.Collections.Generic.Comparer`1.Default"/>
719 cannot find an implementation of the <see cref="T:System.IComparable`1"/> generic interface
720 or the <see cref="T:System.IComparable"/> interface for type <typeparamref name="T"/>.
723 <member name="M:System.Collections.Immutable.IImmutableListQueries`1.BinarySearch(System.Int32,System.Int32,`0,System.Collections.Generic.IComparer{`0})">
725 Searches a range of elements in the sorted <see cref="T:System.Collections.Generic.IReadOnlyList`1"/>
726 for an element using the specified comparer and returns the zero-based index
729 <param name="index">The zero-based starting index of the range to search.</param>
730 <param name="count"> The length of the range to search.</param>
731 <param name="item">The object to locate. The value can be null for reference types.</param>
732 <param name="comparer">
733 The <see cref="T:System.Collections.Generic.IComparer`1"/> implementation to use when comparing
734 elements, or null to use the default comparer <see cref="P:System.Collections.Generic.Comparer`1.Default"/>.
737 The zero-based index of <paramref name="item"/> in the sorted <see cref="T:System.Collections.Generic.IReadOnlyList`1"/>,
738 if <paramref name="item"/> is found; otherwise, a negative number that is the bitwise complement
739 of the index of the next element that is larger than <paramref name="item"/> or, if there is
740 no larger element, the bitwise complement of <see cref="P:System.Collections.Generic.IReadOnlyCollection`1.Count"/>.
742 <exception cref="T:System.ArgumentOutOfRangeException">
743 <paramref name="index"/> is less than 0.-or-<paramref name="count"/> is less than 0.
745 <exception cref="T:System.ArgumentException">
746 <paramref name="index"/> and <paramref name="count"/> do not denote a valid range in the <see cref="T:System.Collections.Generic.IReadOnlyList`1"/>.
748 <exception cref="T:System.InvalidOperationException">
749 <paramref name="comparer"/> is null, and the default comparer <see cref="P:System.Collections.Generic.Comparer`1.Default"/>
750 cannot find an implementation of the <see cref="T:System.IComparable`1"/> generic interface
751 or the <see cref="T:System.IComparable"/> interface for type <typeparamref name="T"/>.
754 <member name="T:System.Collections.Immutable.IImmutableQueue`1">
758 <typeparam name="T">The type of elements in the queue.</typeparam>
760 <member name="P:System.Collections.Immutable.IImmutableQueue`1.IsEmpty">
762 Gets a value indicating whether this is the empty queue.
765 <c>true</c> if this queue is empty; otherwise, <c>false</c>.
768 <member name="M:System.Collections.Immutable.IImmutableQueue`1.Clear">
773 <member name="M:System.Collections.Immutable.IImmutableQueue`1.Peek">
775 Gets the element at the front of the queue.
778 The element at the front of the queue.
780 <exception cref="T:System.InvalidOperationException">Thrown when the queue is empty.</exception>
782 <member name="M:System.Collections.Immutable.IImmutableQueue`1.Enqueue(`0)">
784 Adds an element to the back of the queue.
786 <param name="value">The value.</param>
791 <member name="M:System.Collections.Immutable.IImmutableQueue`1.Dequeue">
793 Returns a queue that is missing the front element.
795 <returns>A queue; never <c>null</c>.</returns>
796 <exception cref="T:System.InvalidOperationException">Thrown when the queue is empty.</exception>
798 <member name="T:System.Collections.Immutable.IImmutableSet`1">
800 A set of elements that can only be modified by creating a new instance of the set.
802 <typeparam name="T">The type of element stored in the set.</typeparam>
804 Mutations on this set generate new sets. Incremental changes to a set share as much memory as possible with the prior versions of a set,
805 while allowing garbage collection to clean up any unique set data that is no longer being referenced.
808 <member name="M:System.Collections.Immutable.IImmutableSet`1.Clear">
810 Gets an empty set that retains the same sort or unordered semantics that this instance has.
813 <member name="M:System.Collections.Immutable.IImmutableSet`1.Contains(`0)">
815 Determines whether this set contains the specified value.
817 <param name="value">The value.</param>
819 <c>true</c> if the set contains the specified value; otherwise, <c>false</c>.
822 <member name="M:System.Collections.Immutable.IImmutableSet`1.Add(`0)">
824 Adds the specified value to this set.
826 <param name="value">The value to add.</param>
827 <returns>A new set with the element added, or this set if the element is already in this set.</returns>
829 <member name="M:System.Collections.Immutable.IImmutableSet`1.Remove(`0)">
831 Removes the specified value from this set.
833 <param name="value">The value to remove.</param>
834 <returns>A new set with the element removed, or this set if the element is not in this set.</returns>
836 <member name="M:System.Collections.Immutable.IImmutableSet`1.TryGetValue(`0,`0@)">
838 Searches the set for a given value and returns the equal value it finds, if any.
840 <param name="equalValue">The value to search for.</param>
841 <param name="actualValue">The value from the set that the search found, or <paramref name="equalValue"/> if the search yielded no match.</param>
842 <returns>A value indicating whether the search was successful.</returns>
844 This can be useful when you want to reuse a previously stored reference instead of
845 a newly constructed one (so that more sharing of references can occur) or to look up
846 a value that has more complete data than the value you currently have, although their
847 comparer functions indicate they are equal.
850 <member name="M:System.Collections.Immutable.IImmutableSet`1.Intersect(System.Collections.Generic.IEnumerable{`0})">
852 Produces a set that contains elements that exist in both this set and the specified set.
854 <param name="other">The set to intersect with this one.</param>
855 <returns>A new set that contains any elements that exist in both sets.</returns>
857 <member name="M:System.Collections.Immutable.IImmutableSet`1.Except(System.Collections.Generic.IEnumerable{`0})">
859 Removes a given set of items from this set.
861 <param name="other">The items to remove from this set.</param>
862 <returns>The new set with the items removed; or the original set if none of the items were in the set.</returns>
864 <member name="M:System.Collections.Immutable.IImmutableSet`1.SymmetricExcept(System.Collections.Generic.IEnumerable{`0})">
866 Produces a set that contains elements either in this set or a given sequence, but not both.
868 <param name="other">The other sequence of items.</param>
869 <returns>The new set.</returns>
871 <member name="M:System.Collections.Immutable.IImmutableSet`1.Union(System.Collections.Generic.IEnumerable{`0})">
873 Adds a given set of items to this set.
875 <param name="other">The items to add.</param>
876 <returns>The new set with the items added; or the original set if all the items were already in the set.</returns>
878 <member name="M:System.Collections.Immutable.IImmutableSet`1.SetEquals(System.Collections.Generic.IEnumerable{`0})">
880 Checks whether a given sequence of items entirely describe the contents of this set.
882 <param name="other">The sequence of items to check against this set.</param>
883 <returns>A value indicating whether the sets are equal.</returns>
885 <member name="M:System.Collections.Immutable.IImmutableSet`1.IsProperSubsetOf(System.Collections.Generic.IEnumerable{`0})">
887 Determines whether the current set is a proper (strict) subset of a specified collection.
889 <param name="other">The collection to compare to the current set.</param>
890 <returns>true if the current set is a correct subset of other; otherwise, false.</returns>
892 <member name="M:System.Collections.Immutable.IImmutableSet`1.IsProperSupersetOf(System.Collections.Generic.IEnumerable{`0})">
894 Determines whether the current set is a proper superset of a specified collection.
896 <param name="other">The collection to compare to the current set.</param>
897 <returns>true if the current set is a correct superset of other; otherwise, false.</returns>
899 <member name="M:System.Collections.Immutable.IImmutableSet`1.IsSubsetOf(System.Collections.Generic.IEnumerable{`0})">
901 Determines whether a set is a subset of a specified collection.
903 <param name="other">The collection to compare to the current set.</param>
904 <returns>true if the current set is a subset of other; otherwise, false.</returns>
906 <member name="M:System.Collections.Immutable.IImmutableSet`1.IsSupersetOf(System.Collections.Generic.IEnumerable{`0})">
908 Determines whether the current set is a superset of a specified collection.
910 <param name="other">The collection to compare to the current set.</param>
911 <returns>true if the current set is a superset of other; otherwise, false.</returns>
913 <member name="M:System.Collections.Immutable.IImmutableSet`1.Overlaps(System.Collections.Generic.IEnumerable{`0})">
915 Determines whether the current set overlaps with the specified collection.
917 <param name="other">The collection to compare to the current set.</param>
918 <returns>true if the current set and other share at least one common element; otherwise, false.</returns>
920 <member name="T:System.Collections.Immutable.IImmutableStack`1">
924 <typeparam name="T">The type of elements stored in the stack.</typeparam>
926 <member name="P:System.Collections.Immutable.IImmutableStack`1.IsEmpty">
928 Gets a value indicating whether this is the empty stack.
931 <c>true</c> if this stack is empty; otherwise, <c>false</c>.
934 <member name="M:System.Collections.Immutable.IImmutableStack`1.Clear">
939 <member name="M:System.Collections.Immutable.IImmutableStack`1.Push(`0)">
941 Pushes an element onto a stack and returns the new stack.
943 <param name="value">The element to push onto the stack.</param>
944 <returns>The new stack.</returns>
946 <member name="M:System.Collections.Immutable.IImmutableStack`1.Pop">
948 Pops the top element off the stack.
950 <returns>The new stack; never <c>null</c></returns>
951 <exception cref="T:System.InvalidOperationException">Thrown when the stack is empty.</exception>
953 <member name="M:System.Collections.Immutable.IImmutableStack`1.Peek">
955 Gets the element on the top of the stack.
957 <exception cref="T:System.InvalidOperationException">Thrown when the stack is empty.</exception>
959 <member name="T:System.Collections.Immutable.IStrongEnumerable`2">
961 An interface that must be implemented by collections that want to avoid
962 boxing their own enumerators when using the
963 <see cref="M:System.Collections.Immutable.ImmutableExtensions.GetEnumerableDisposable``2(System.Collections.Generic.IEnumerable{``0})"/>
966 <typeparam name="T">The type of value to be enumerated.</typeparam>
967 <typeparam name="TEnumerator">The type of the enumerator struct.</typeparam>
969 <member name="M:System.Collections.Immutable.IStrongEnumerable`2.GetEnumerator">
971 Gets the strongly-typed enumerator.
975 <member name="T:System.Collections.Immutable.IStrongEnumerator`1">
977 An <see cref="T:System.Collections.Generic.IEnumerator`1"/>-like interface that does not derive from <see cref="T:System.IDisposable"/>.
979 <typeparam name="T">The type of value to be enumerated.</typeparam>
981 This interface is useful because some enumerator struct types do not want to implement
982 <see cref="T:System.IDisposable"/> since it increases the size of the generated code in foreach.
985 <member name="P:System.Collections.Immutable.IStrongEnumerator`1.Current">
987 Returns the current element.
990 <member name="M:System.Collections.Immutable.IStrongEnumerator`1.MoveNext">
992 Advances to the next element.
995 <member name="T:System.Collections.Immutable.SortedInt32KeyNode`1">
997 A node in the AVL tree storing key/value pairs with Int32 keys.
1000 This is a trimmed down version of <see cref="T:System.Collections.Immutable.ImmutableSortedDictionary`2.Node"/>
1001 with <c>TKey</c> fixed to be <see cref="T:System.Int32"/>. This avoids multiple interface-based dispatches while examining
1002 each node in the tree during a lookup: an interface call to the comparer's <see cref="M:System.Collections.Generic.IComparer`1.Compare(`0,`0)"/> method,
1003 and then an interface call to <see cref="T:System.Int32"/>'s <see cref="M:System.IComparable`1.CompareTo(`0)"/> method as part of
1004 the <see cref="T:System.Collections.Generic.GenericComparer`1"/>'s <see cref="M:System.Collections.Generic.IComparer`1.Compare(`0,`0)"/> implementation.
1007 <member name="F:System.Collections.Immutable.SortedInt32KeyNode`1.EmptyNode">
1009 The default empty node.
1012 <member name="F:System.Collections.Immutable.SortedInt32KeyNode`1._key">
1014 The Int32 key associated with this node.
1017 <member name="F:System.Collections.Immutable.SortedInt32KeyNode`1._value">
1019 The value associated with this node.
1022 Sadly, this field could be readonly but doing so breaks serialization due to bug:
1023 http://connect.microsoft.com/VisualStudio/feedback/details/312970/weird-argumentexception-when-deserializing-field-in-typedreferences-cannot-be-static-or-init-only
1026 <member name="F:System.Collections.Immutable.SortedInt32KeyNode`1._frozen">
1028 A value indicating whether this node has been frozen (made immutable).
1031 Nodes must be frozen before ever being observed by a wrapping collection type
1032 to protect collections from further mutations.
1035 <member name="F:System.Collections.Immutable.SortedInt32KeyNode`1._height">
1037 The depth of the tree beneath this node.
1040 <member name="F:System.Collections.Immutable.SortedInt32KeyNode`1._left">
1045 <member name="F:System.Collections.Immutable.SortedInt32KeyNode`1._right">
1050 <member name="M:System.Collections.Immutable.SortedInt32KeyNode`1.#ctor">
1052 Initializes a new instance of the <see cref="T:System.Collections.Immutable.SortedInt32KeyNode`1"/> class that is pre-frozen.
1055 <member name="M:System.Collections.Immutable.SortedInt32KeyNode`1.#ctor(System.Int32,`0,System.Collections.Immutable.SortedInt32KeyNode{`0},System.Collections.Immutable.SortedInt32KeyNode{`0},System.Boolean)">
1057 Initializes a new instance of the <see cref="T:System.Collections.Immutable.SortedInt32KeyNode`1"/> class that is not yet frozen.
1059 <param name="key">The key.</param>
1060 <param name="value">The value.</param>
1061 <param name="left">The left.</param>
1062 <param name="right">The right.</param>
1063 <param name="frozen">Whether this node is prefrozen.</param>
1065 <member name="P:System.Collections.Immutable.SortedInt32KeyNode`1.IsEmpty">
1067 Gets a value indicating whether this instance is empty.
1070 <c>true</c> if this instance is empty; otherwise, <c>false</c>.
1073 <member name="P:System.Collections.Immutable.SortedInt32KeyNode`1.Height">
1075 Gets the height of the tree beneath this node.
1078 <member name="P:System.Collections.Immutable.SortedInt32KeyNode`1.Left">
1080 Gets the left branch of this node.
1083 <member name="P:System.Collections.Immutable.SortedInt32KeyNode`1.Right">
1085 Gets the right branch of this node.
1088 <member name="P:System.Collections.Immutable.SortedInt32KeyNode`1.System#Collections#Immutable#IBinaryTree#Left">
1090 Gets the left branch of this node.
1093 <member name="P:System.Collections.Immutable.SortedInt32KeyNode`1.System#Collections#Immutable#IBinaryTree#Right">
1095 Gets the right branch of this node.
1098 <member name="P:System.Collections.Immutable.SortedInt32KeyNode`1.System#Collections#Immutable#IBinaryTree#Count">
1100 Gets the number of elements contained by this node and below.
1103 <member name="P:System.Collections.Immutable.SortedInt32KeyNode`1.Value">
1105 Gets the value represented by the current node.
1108 <member name="P:System.Collections.Immutable.SortedInt32KeyNode`1.Values">
1113 <member name="M:System.Collections.Immutable.SortedInt32KeyNode`1.GetEnumerator">
1115 Returns an enumerator that iterates through the collection.
1118 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
1121 <member name="M:System.Collections.Immutable.SortedInt32KeyNode`1.SetItem(System.Int32,`0,System.Collections.Generic.IEqualityComparer{`0},System.Boolean@,System.Boolean@)">
1123 Adds the specified key.
1125 <param name="key">The key.</param>
1126 <param name="value">The value.</param>
1127 <param name="valueComparer">The value comparer.</param>
1128 <param name="replacedExistingValue">Receives a value indicating whether an existing value was replaced.</param>
1129 <param name="mutated">Receives a value indicating whether this node tree has mutated because of this operation.</param>
1131 <member name="M:System.Collections.Immutable.SortedInt32KeyNode`1.Remove(System.Int32,System.Boolean@)">
1133 Removes the specified key.
1135 <param name="key">The key.</param>
1136 <param name="mutated">Receives a value indicating whether this node tree has mutated because of this operation.</param>
1137 <returns>The new AVL tree.</returns>
1139 <member name="M:System.Collections.Immutable.SortedInt32KeyNode`1.GetValueOrDefault(System.Int32)">
1141 Gets the value or default.
1143 <param name="key">The key.</param>
1144 <returns>The value.</returns>
1146 <member name="M:System.Collections.Immutable.SortedInt32KeyNode`1.TryGetValue(System.Int32,`0@)">
1148 Tries to get the value.
1150 <param name="key">The key.</param>
1151 <param name="value">The value.</param>
1152 <returns>True if the key was found.</returns>
1154 <member name="M:System.Collections.Immutable.SortedInt32KeyNode`1.Freeze(System.Action{System.Collections.Generic.KeyValuePair{System.Int32,`0}})">
1156 Freezes this node and all descendant nodes so that any mutations require a new instance of the nodes.
1159 <member name="M:System.Collections.Immutable.SortedInt32KeyNode`1.RotateLeft(System.Collections.Immutable.SortedInt32KeyNode{`0})">
1161 AVL rotate left operation.
1163 <param name="tree">The tree.</param>
1164 <returns>The rotated tree.</returns>
1166 <member name="M:System.Collections.Immutable.SortedInt32KeyNode`1.RotateRight(System.Collections.Immutable.SortedInt32KeyNode{`0})">
1168 AVL rotate right operation.
1170 <param name="tree">The tree.</param>
1171 <returns>The rotated tree.</returns>
1173 <member name="M:System.Collections.Immutable.SortedInt32KeyNode`1.DoubleLeft(System.Collections.Immutable.SortedInt32KeyNode{`0})">
1175 AVL rotate double-left operation.
1177 <param name="tree">The tree.</param>
1178 <returns>The rotated tree.</returns>
1180 <member name="M:System.Collections.Immutable.SortedInt32KeyNode`1.DoubleRight(System.Collections.Immutable.SortedInt32KeyNode{`0})">
1182 AVL rotate double-right operation.
1184 <param name="tree">The tree.</param>
1185 <returns>The rotated tree.</returns>
1187 <member name="M:System.Collections.Immutable.SortedInt32KeyNode`1.Balance(System.Collections.Immutable.SortedInt32KeyNode{`0})">
1189 Returns a value indicating whether the tree is in balance.
1191 <param name="tree">The tree.</param>
1192 <returns>0 if the tree is in balance, a positive integer if the right side is heavy, or a negative integer if the left side is heavy.</returns>
1194 <member name="M:System.Collections.Immutable.SortedInt32KeyNode`1.IsRightHeavy(System.Collections.Immutable.SortedInt32KeyNode{`0})">
1196 Determines whether the specified tree is right heavy.
1198 <param name="tree">The tree.</param>
1200 <c>true</c> if [is right heavy] [the specified tree]; otherwise, <c>false</c>.
1203 <member name="M:System.Collections.Immutable.SortedInt32KeyNode`1.IsLeftHeavy(System.Collections.Immutable.SortedInt32KeyNode{`0})">
1205 Determines whether the specified tree is left heavy.
1208 <member name="M:System.Collections.Immutable.SortedInt32KeyNode`1.MakeBalanced(System.Collections.Immutable.SortedInt32KeyNode{`0})">
1210 Balances the specified tree.
1212 <param name="tree">The tree.</param>
1213 <returns>A balanced tree.</returns>
1215 <member name="M:System.Collections.Immutable.SortedInt32KeyNode`1.SetOrAdd(System.Int32,`0,System.Collections.Generic.IEqualityComparer{`0},System.Boolean,System.Boolean@,System.Boolean@)">
1217 Adds the specified key. Callers are expected to have validated arguments.
1219 <param name="key">The key.</param>
1220 <param name="value">The value.</param>
1221 <param name="valueComparer">The value comparer.</param>
1222 <param name="overwriteExistingValue">if <c>true</c>, an existing key=value pair will be overwritten with the new one.</param>
1223 <param name="replacedExistingValue">Receives a value indicating whether an existing value was replaced.</param>
1224 <param name="mutated">Receives a value indicating whether this node tree has mutated because of this operation.</param>
1225 <returns>The new AVL tree.</returns>
1227 <member name="M:System.Collections.Immutable.SortedInt32KeyNode`1.RemoveRecursive(System.Int32,System.Boolean@)">
1229 Removes the specified key. Callers are expected to validate arguments.
1231 <param name="key">The key.</param>
1232 <param name="mutated">Receives a value indicating whether this node tree has mutated because of this operation.</param>
1233 <returns>The new AVL tree.</returns>
1235 <member name="M:System.Collections.Immutable.SortedInt32KeyNode`1.Mutate(System.Collections.Immutable.SortedInt32KeyNode{`0},System.Collections.Immutable.SortedInt32KeyNode{`0})">
1237 Creates a node mutation, either by mutating this node (if not yet frozen) or by creating a clone of this node
1238 with the described changes.
1240 <param name="left">The left branch of the mutated node.</param>
1241 <param name="right">The right branch of the mutated node.</param>
1242 <returns>The mutated (or created) node.</returns>
1244 <member name="M:System.Collections.Immutable.SortedInt32KeyNode`1.Search(System.Int32)">
1246 Searches the specified key. Callers are expected to validate arguments.
1248 <param name="key">The key.</param>
1250 <member name="T:System.Collections.Immutable.SortedInt32KeyNode`1.Enumerator">
1252 Enumerates the contents of a binary tree.
1255 This struct can and should be kept in exact sync with the other binary tree enumerators:
1256 <see cref="T:System.Collections.Immutable.ImmutableList`1.Enumerator"/>, <see cref="T:System.Collections.Immutable.ImmutableSortedDictionary`2.Enumerator"/>, and <see cref="T:System.Collections.Immutable.ImmutableSortedSet`1.Enumerator"/>.
1258 CAUTION: when this enumerator is actually used as a valuetype (not boxed) do NOT copy it by assigning to a second variable
1259 or by passing it to another method. When this enumerator is disposed of it returns a mutable reference type stack to a resource pool,
1260 and if the value type enumerator is copied (which can easily happen unintentionally if you pass the value around) there is a risk
1261 that a stack that has already been returned to the resource pool may still be in use by one of the enumerator copies, leading to data
1262 corruption and/or exceptions.
1265 <member name="F:System.Collections.Immutable.SortedInt32KeyNode`1.Enumerator.s_enumeratingStacks">
1267 The resource pool of reusable mutable stacks for purposes of enumeration.
1270 We utilize this resource pool to make "allocation free" enumeration achievable.
1273 <member name="F:System.Collections.Immutable.SortedInt32KeyNode`1.Enumerator._poolUserId">
1275 A unique ID for this instance of this enumerator.
1276 Used to protect pooled objects from use after they are recycled.
1279 <member name="F:System.Collections.Immutable.SortedInt32KeyNode`1.Enumerator._root">
1281 The set being enumerated.
1284 <member name="F:System.Collections.Immutable.SortedInt32KeyNode`1.Enumerator._stack">
1286 The stack to use for enumerating the binary tree.
1289 <member name="F:System.Collections.Immutable.SortedInt32KeyNode`1.Enumerator._current">
1291 The node currently selected.
1294 <member name="M:System.Collections.Immutable.SortedInt32KeyNode`1.Enumerator.#ctor(System.Collections.Immutable.SortedInt32KeyNode{`0})">
1296 Initializes an <see cref="T:System.Collections.Immutable.SortedInt32KeyNode`1.Enumerator"/> structure.
1298 <param name="root">The root of the set to be enumerated.</param>
1300 <member name="P:System.Collections.Immutable.SortedInt32KeyNode`1.Enumerator.Current">
1302 The current element.
1305 <member name="P:System.Collections.Immutable.SortedInt32KeyNode`1.Enumerator.System#Collections#Immutable#ISecurePooledObjectUser#PoolUserId">
1308 <member name="P:System.Collections.Immutable.SortedInt32KeyNode`1.Enumerator.System#Collections#IEnumerator#Current">
1310 The current element.
1313 <member name="M:System.Collections.Immutable.SortedInt32KeyNode`1.Enumerator.Dispose">
1315 Disposes of this enumerator and returns the stack reference to the resource pool.
1318 <member name="M:System.Collections.Immutable.SortedInt32KeyNode`1.Enumerator.MoveNext">
1320 Advances enumeration to the next element.
1322 <returns>A value indicating whether there is another element in the enumeration.</returns>
1324 <member name="M:System.Collections.Immutable.SortedInt32KeyNode`1.Enumerator.Reset">
1326 Restarts enumeration.
1329 <member name="M:System.Collections.Immutable.SortedInt32KeyNode`1.Enumerator.ThrowIfDisposed">
1331 Throws an <see cref="T:System.ObjectDisposedException"/> if this enumerator has been disposed.
1334 <member name="M:System.Collections.Immutable.SortedInt32KeyNode`1.Enumerator.PushLeft(System.Collections.Immutable.SortedInt32KeyNode{`0})">
1336 Pushes this node and all its Left descendants onto the stack.
1338 <param name="node">The starting node to push onto the stack.</param>
1340 <member name="T:System.Collections.Immutable.IOrderedCollection`1">
1342 Describes an ordered collection of elements.
1344 <typeparam name="T">The type of element in the collection.</typeparam>
1346 <member name="P:System.Collections.Immutable.IOrderedCollection`1.Count">
1348 Gets the number of elements in the collection.
1351 <member name="P:System.Collections.Immutable.IOrderedCollection`1.Item(System.Int32)">
1353 Gets the element in the collection at a given index.
1356 <member name="T:System.Collections.Immutable.ImmutableArray">
1358 A set of initialization methods for instances of <see cref="T:System.Collections.Immutable.ImmutableArray`1"/>.
1361 <member name="F:System.Collections.Immutable.ImmutableArray.TwoElementArray">
1363 A two element array useful for throwing exceptions the way LINQ does.
1366 <member name="M:System.Collections.Immutable.ImmutableArray.Create``1">
1368 Creates an empty <see cref="T:System.Collections.Immutable.ImmutableArray`1"/>.
1370 <typeparam name="T">The type of element stored in the array.</typeparam>
1371 <returns>An empty array.</returns>
1373 <member name="M:System.Collections.Immutable.ImmutableArray.Create``1(``0)">
1375 Creates an <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> with the specified element as its only member.
1377 <typeparam name="T">The type of element stored in the array.</typeparam>
1378 <param name="item">The element to store in the array.</param>
1379 <returns>A 1-element array.</returns>
1381 <member name="M:System.Collections.Immutable.ImmutableArray.Create``1(``0,``0)">
1383 Creates an <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> with the specified elements.
1385 <typeparam name="T">The type of element stored in the array.</typeparam>
1386 <param name="item1">The first element to store in the array.</param>
1387 <param name="item2">The second element to store in the array.</param>
1388 <returns>A 2-element array.</returns>
1390 <member name="M:System.Collections.Immutable.ImmutableArray.Create``1(``0,``0,``0)">
1392 Creates an <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> with the specified elements.
1394 <typeparam name="T">The type of element stored in the array.</typeparam>
1395 <param name="item1">The first element to store in the array.</param>
1396 <param name="item2">The second element to store in the array.</param>
1397 <param name="item3">The third element to store in the array.</param>
1398 <returns>A 3-element array.</returns>
1400 <member name="M:System.Collections.Immutable.ImmutableArray.Create``1(``0,``0,``0,``0)">
1402 Creates an <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> with the specified elements.
1404 <typeparam name="T">The type of element stored in the array.</typeparam>
1405 <param name="item1">The first element to store in the array.</param>
1406 <param name="item2">The second element to store in the array.</param>
1407 <param name="item3">The third element to store in the array.</param>
1408 <param name="item4">The fourth element to store in the array.</param>
1409 <returns>A 4-element array.</returns>
1411 <member name="M:System.Collections.Immutable.ImmutableArray.CreateRange``1(System.Collections.Generic.IEnumerable{``0})">
1413 Creates an <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> populated with the contents of the specified sequence.
1415 <typeparam name="T">The type of element stored in the array.</typeparam>
1416 <param name="items">The elements to store in the array.</param>
1417 <returns>An immutable array.</returns>
1419 <member name="M:System.Collections.Immutable.ImmutableArray.Create``1(``0[])">
1421 Creates an empty <see cref="T:System.Collections.Immutable.ImmutableArray`1"/>.
1423 <typeparam name="T">The type of element stored in the array.</typeparam>
1424 <param name="items">The elements to store in the array.</param>
1425 <returns>An immutable array.</returns>
1427 <member name="M:System.Collections.Immutable.ImmutableArray.Create``1(``0[],System.Int32,System.Int32)">
1429 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> struct.
1431 <param name="items">The array to initialize the array with. A defensive copy is made.</param>
1432 <param name="start">The index of the first element in the source array to include in the resulting array.</param>
1433 <param name="length">The number of elements from the source array to include in the resulting array.</param>
1435 This overload allows helper methods or custom builder classes to efficiently avoid paying a redundant
1436 tax for copying an array when the new array is a segment of an existing array.
1439 <member name="M:System.Collections.Immutable.ImmutableArray.Create``1(System.Collections.Immutable.ImmutableArray{``0},System.Int32,System.Int32)">
1441 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> struct.
1443 <param name="items">The array to initialize the array with.
1444 The selected array segment may be copied into a new array.</param>
1445 <param name="start">The index of the first element in the source array to include in the resulting array.</param>
1446 <param name="length">The number of elements from the source array to include in the resulting array.</param>
1448 This overload allows helper methods or custom builder classes to efficiently avoid paying a redundant
1449 tax for copying an array when the new array is a segment of an existing array.
1452 <member name="M:System.Collections.Immutable.ImmutableArray.CreateRange``2(System.Collections.Immutable.ImmutableArray{``0},System.Func{``0,``1})">
1454 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> struct.
1456 <param name="items">The source array to initialize the resulting array with.</param>
1457 <param name="selector">The function to apply to each element from the source array.</param>
1459 This overload allows efficient creation of an <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> based on an existing
1460 <see cref="T:System.Collections.Immutable.ImmutableArray`1"/>, where a mapping function needs to be applied to each element from
1464 <member name="M:System.Collections.Immutable.ImmutableArray.CreateRange``2(System.Collections.Immutable.ImmutableArray{``0},System.Int32,System.Int32,System.Func{``0,``1})">
1466 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> struct.
1468 <param name="items">The source array to initialize the resulting array with.</param>
1469 <param name="start">The index of the first element in the source array to include in the resulting array.</param>
1470 <param name="length">The number of elements from the source array to include in the resulting array.</param>
1471 <param name="selector">The function to apply to each element from the source array included in the resulting array.</param>
1473 This overload allows efficient creation of an <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> based on a slice of an existing
1474 <see cref="T:System.Collections.Immutable.ImmutableArray`1"/>, where a mapping function needs to be applied to each element from the source array
1475 included in the resulting array.
1478 <member name="M:System.Collections.Immutable.ImmutableArray.CreateRange``3(System.Collections.Immutable.ImmutableArray{``0},System.Func{``0,``1,``2},``1)">
1480 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> struct.
1482 <param name="items">The source array to initialize the resulting array with.</param>
1483 <param name="selector">The function to apply to each element from the source array.</param>
1484 <param name="arg">An argument to be passed to the selector mapping function.</param>
1486 This overload allows efficient creation of an <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> based on an existing
1487 <see cref="T:System.Collections.Immutable.ImmutableArray`1"/>, where a mapping function needs to be applied to each element from
1491 <member name="M:System.Collections.Immutable.ImmutableArray.CreateRange``3(System.Collections.Immutable.ImmutableArray{``0},System.Int32,System.Int32,System.Func{``0,``1,``2},``1)">
1493 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> struct.
1495 <param name="items">The source array to initialize the resulting array with.</param>
1496 <param name="start">The index of the first element in the source array to include in the resulting array.</param>
1497 <param name="length">The number of elements from the source array to include in the resulting array.</param>
1498 <param name="selector">The function to apply to each element from the source array included in the resulting array.</param>
1499 <param name="arg">An argument to be passed to the selector mapping function.</param>
1501 This overload allows efficient creation of an <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> based on a slice of an existing
1502 <see cref="T:System.Collections.Immutable.ImmutableArray`1"/>, where a mapping function needs to be applied to each element from the source array
1503 included in the resulting array.
1506 <member name="M:System.Collections.Immutable.ImmutableArray.CreateBuilder``1">
1508 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableArray`1.Builder"/> class.
1510 <typeparam name="T">The type of elements stored in the array.</typeparam>
1511 <returns>A new builder.</returns>
1513 <member name="M:System.Collections.Immutable.ImmutableArray.CreateBuilder``1(System.Int32)">
1515 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableArray`1.Builder"/> class.
1517 <typeparam name="T">The type of elements stored in the array.</typeparam>
1518 <param name="initialCapacity">The size of the initial array backing the builder.</param>
1519 <returns>A new builder.</returns>
1521 <member name="M:System.Collections.Immutable.ImmutableArray.ToImmutableArray``1(System.Collections.Generic.IEnumerable{``0})">
1523 Enumerates a sequence exactly once and produces an immutable array of its contents.
1525 <typeparam name="TSource">The type of element in the sequence.</typeparam>
1526 <param name="items">The sequence to enumerate.</param>
1527 <returns>An immutable array.</returns>
1529 <member name="M:System.Collections.Immutable.ImmutableArray.BinarySearch``1(System.Collections.Immutable.ImmutableArray{``0},``0)">
1531 Searches an entire one-dimensional sorted <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> for a specific element,
1532 using the <see cref="T:System.IComparable`1"/> generic interface implemented by each element
1533 of the <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> and by the specified object.
1535 <typeparam name="T">The type of element stored in the array.</typeparam>
1536 <param name="array">The sorted, one-dimensional array to search.</param>
1537 <param name="value">The object to search for.</param>
1539 The index of the specified <paramref name="value"/> in the specified array, if <paramref name="value"/> is found.
1540 If <paramref name="value"/> is not found and <paramref name="value"/> is less than one or more elements in array,
1541 a negative number which is the bitwise complement of the index of the first
1542 element that is larger than <paramref name="value"/>. If <paramref name="value"/> is not found and <paramref name="value"/> is greater
1543 than any of the elements in array, a negative number which is the bitwise
1544 complement of (the index of the last element plus 1).
1546 <exception cref="T:System.InvalidOperationException">
1547 <paramref name="value"/> does not implement the <see cref="T:System.IComparable`1"/> generic interface, and
1548 the search encounters an element that does not implement the <see cref="T:System.IComparable`1"/>
1552 <member name="M:System.Collections.Immutable.ImmutableArray.BinarySearch``1(System.Collections.Immutable.ImmutableArray{``0},``0,System.Collections.Generic.IComparer{``0})">
1554 Searches an entire one-dimensional sorted <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> for a value using
1555 the specified <see cref="T:System.Collections.Generic.IComparer`1"/> generic interface.
1557 <typeparam name="T">The type of element stored in the array.</typeparam>
1558 <param name="array">The sorted, one-dimensional array to search.</param>
1559 <param name="value">The object to search for.</param>
1560 <param name="comparer">
1561 The <see cref="T:System.Collections.Generic.IComparer`1"/> implementation to use when comparing
1562 elements; or null to use the <see cref="T:System.IComparable`1"/> implementation of each
1566 The index of the specified <paramref name="value"/> in the specified array, if <paramref name="value"/> is found.
1567 If <paramref name="value"/> is not found and <paramref name="value"/> is less than one or more elements in array,
1568 a negative number which is the bitwise complement of the index of the first
1569 element that is larger than <paramref name="value"/>. If <paramref name="value"/> is not found and <paramref name="value"/> is greater
1570 than any of the elements in array, a negative number which is the bitwise
1571 complement of (the index of the last element plus 1).
1573 <exception cref="T:System.InvalidOperationException">
1574 <paramref name="comparer"/> is null, <paramref name="value"/> does not implement the <see cref="T:System.IComparable`1"/> generic interface, and
1575 the search encounters an element that does not implement the <see cref="T:System.IComparable`1"/>
1579 <member name="M:System.Collections.Immutable.ImmutableArray.BinarySearch``1(System.Collections.Immutable.ImmutableArray{``0},System.Int32,System.Int32,``0)">
1581 Searches a range of elements in a one-dimensional sorted <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> for
1582 a value, using the <see cref="T:System.IComparable`1"/> generic interface implemented by
1583 each element of the <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> and by the specified value.
1585 <typeparam name="T">The type of element stored in the array.</typeparam>
1586 <param name="array">The sorted, one-dimensional array to search.</param>
1587 <param name="index">The starting index of the range to search.</param>
1588 <param name="length">The length of the range to search.</param>
1589 <param name="value">The object to search for.</param>
1591 The index of the specified <paramref name="value"/> in the specified <paramref name="array"/>, if <paramref name="value"/> is found.
1592 If <paramref name="value"/> is not found and <paramref name="value"/> is less than one or more elements in <paramref name="array"/>,
1593 a negative number which is the bitwise complement of the index of the first
1594 element that is larger than <paramref name="value"/>. If <paramref name="value"/> is not found and <paramref name="value"/> is greater
1595 than any of the elements in <paramref name="array"/>, a negative number which is the bitwise
1596 complement of (the index of the last element plus 1).
1598 <exception cref="T:System.InvalidOperationException">
1599 <paramref name="value"/> does not implement the <see cref="T:System.IComparable`1"/> generic interface, and
1600 the search encounters an element that does not implement the <see cref="T:System.IComparable`1"/>
1603 <exception cref="T:System.ArgumentException">
1604 <paramref name="index"/> and <paramref name="length"/> do not specify a valid range in <paramref name="array"/>.
1606 <exception cref="T:System.ArgumentOutOfRangeException">
1607 <paramref name="index"/> is less than the lower bound of <paramref name="array"/>. -or- <paramref name="length"/> is less than zero.
1610 <member name="M:System.Collections.Immutable.ImmutableArray.BinarySearch``1(System.Collections.Immutable.ImmutableArray{``0},System.Int32,System.Int32,``0,System.Collections.Generic.IComparer{``0})">
1612 Searches a range of elements in a one-dimensional sorted <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> for
1613 a value, using the specified <see cref="T:System.Collections.Generic.IComparer`1"/> generic
1616 <typeparam name="T">The type of element stored in the array.</typeparam>
1617 <param name="array">The sorted, one-dimensional array to search.</param>
1618 <param name="index">The starting index of the range to search.</param>
1619 <param name="length">The length of the range to search.</param>
1620 <param name="value">The object to search for.</param>
1621 <param name="comparer">
1622 The <see cref="T:System.Collections.Generic.IComparer`1"/> implementation to use when comparing
1623 elements; or null to use the <see cref="T:System.IComparable`1"/> implementation of each
1627 The index of the specified <paramref name="value"/> in the specified <paramref name="array"/>, if <paramref name="value"/> is found.
1628 If <paramref name="value"/> is not found and <paramref name="value"/> is less than one or more elements in <paramref name="array"/>,
1629 a negative number which is the bitwise complement of the index of the first
1630 element that is larger than <paramref name="value"/>. If <paramref name="value"/> is not found and <paramref name="value"/> is greater
1631 than any of the elements in <paramref name="array"/>, a negative number which is the bitwise
1632 complement of (the index of the last element plus 1).
1634 <exception cref="T:System.InvalidOperationException">
1635 <paramref name="comparer"/> is null, <paramref name="value"/> does not implement the <see cref="T:System.IComparable`1"/> generic
1636 interface, and the search encounters an element that does not implement the
1637 <see cref="T:System.IComparable`1"/> generic interface.
1639 <exception cref="T:System.ArgumentException">
1640 <paramref name="index"/> and <paramref name="length"/> do not specify a valid range in <paramref name="array"/>.-or-<paramref name="comparer"/> is null,
1641 and <paramref name="value"/> is of a type that is not compatible with the elements of <paramref name="array"/>.
1643 <exception cref="T:System.ArgumentOutOfRangeException">
1644 <paramref name="index"/> is less than the lower bound of <paramref name="array"/>. -or- <paramref name="length"/> is less than zero.
1647 <member name="M:System.Collections.Immutable.ImmutableArray.CreateDefensiveCopy``1(``0[])">
1649 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> struct.
1651 <param name="items">The array from which to copy.</param>
1653 <member name="T:System.Collections.Immutable.ImmutableArray`1">
1655 A readonly array with O(1) indexable lookup time.
1657 <typeparam name="T">The type of element stored by the array.</typeparam>
1659 This type has a documented contract of being exactly one reference-type field in size.
1660 Our own <see cref="T:System.Collections.Immutable.ImmutableInterlocked"/> class depends on it, as well as others externally.
1661 IMPORTANT NOTICE FOR MAINTAINERS AND REVIEWERS:
1662 This type should be thread-safe. As a struct, it cannot protect its own fields
1663 from being changed from one thread while its members are executing on other threads
1664 because structs can change *in place* simply by reassigning the field containing
1665 this struct. Therefore it is extremely important that
1666 ** Every member should only dereference <c>this</c> ONCE. **
1667 If a member needs to reference the array field, that counts as a dereference of <c>this</c>.
1668 Calling other instance members (properties or methods) also counts as dereferencing <c>this</c>.
1669 Any member that needs to use <c>this</c> more than once must instead
1670 assign <c>this</c> to a local variable and use that for the rest of the code instead.
1671 This effectively copies the one field in the struct to a local variable so that
1672 it is insulated from other threads.
1675 <member name="T:System.Collections.Immutable.ImmutableArray`1.Builder">
1677 A writable array accessor that can be converted into an <see cref="T:System.Collections.Immutable.ImmutableArray`1"/>
1678 instance without allocating memory.
1681 <member name="F:System.Collections.Immutable.ImmutableArray`1.Builder._elements">
1683 The backing array for the builder.
1686 <member name="F:System.Collections.Immutable.ImmutableArray`1.Builder._count">
1688 The number of initialized elements in the array.
1691 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.#ctor(System.Int32)">
1693 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableArray`1.Builder"/> class.
1695 <param name="capacity">The initial capacity of the internal array.</param>
1697 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.#ctor">
1699 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableArray`1.Builder"/> class.
1702 <member name="P:System.Collections.Immutable.ImmutableArray`1.Builder.Capacity">
1704 Get and sets the length of the internal array. When set the internal array is
1705 reallocated to the given capacity if it is not already the specified length.
1708 <member name="P:System.Collections.Immutable.ImmutableArray`1.Builder.Count">
1710 Gets or sets the length of the builder.
1713 If the value is decreased, the array contents are truncated.
1714 If the value is increased, the added elements are initialized to the default value of type <typeparamref name="T"/>.
1717 <member name="P:System.Collections.Immutable.ImmutableArray`1.Builder.Item(System.Int32)">
1719 Gets or sets the element at the specified index.
1721 <param name="index">The index.</param>
1723 <exception cref="T:System.IndexOutOfRangeException">
1726 <member name="P:System.Collections.Immutable.ImmutableArray`1.Builder.System#Collections#Generic#ICollection{T}#IsReadOnly">
1728 Gets a value indicating whether the <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.
1730 <returns>true if the <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only; otherwise, false.
1733 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.ToImmutable">
1735 Returns an immutable copy of the current contents of this collection.
1737 <returns>An immutable array.</returns>
1739 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.MoveToImmutable">
1741 Extracts the internal array as an <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> and replaces it
1742 with a zero length array.
1744 <exception cref="T:System.InvalidOperationException">When <see cref="P:System.Collections.Immutable.ImmutableArray`1.Builder.Count"/> doesn't
1745 equal <see cref="P:System.Collections.Immutable.ImmutableArray`1.Builder.Capacity"/>.</exception>
1747 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.Clear">
1749 Removes all items from the <see cref="T:System.Collections.Generic.ICollection`1"/>.
1752 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.Insert(System.Int32,`0)">
1754 Inserts an item to the <see cref="T:System.Collections.Generic.IList`1"/> at the specified index.
1756 <param name="index">The zero-based index at which <paramref name="item"/> should be inserted.</param>
1757 <param name="item">The object to insert into the <see cref="T:System.Collections.Generic.IList`1"/>.</param>
1759 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.Add(`0)">
1761 Adds an item to the <see cref="T:System.Collections.Generic.ICollection`1"/>.
1763 <param name="item">The object to add to the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
1765 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.AddRange(System.Collections.Generic.IEnumerable{`0})">
1767 Adds the specified items to the end of the array.
1769 <param name="items">The items.</param>
1771 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.AddRange(`0[])">
1773 Adds the specified items to the end of the array.
1775 <param name="items">The items.</param>
1777 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.AddRange``1(``0[])">
1779 Adds the specified items to the end of the array.
1781 <param name="items">The items.</param>
1783 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.AddRange(`0[],System.Int32)">
1785 Adds the specified items to the end of the array.
1787 <param name="items">The items.</param>
1788 <param name="length">The number of elements from the source array to add.</param>
1790 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.AddRange(System.Collections.Immutable.ImmutableArray{`0})">
1792 Adds the specified items to the end of the array.
1794 <param name="items">The items.</param>
1796 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.AddRange(System.Collections.Immutable.ImmutableArray{`0},System.Int32)">
1798 Adds the specified items to the end of the array.
1800 <param name="items">The items.</param>
1801 <param name="length">The number of elements from the source array to add.</param>
1803 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.AddRange``1(System.Collections.Immutable.ImmutableArray{``0})">
1805 Adds the specified items to the end of the array.
1807 <param name="items">The items.</param>
1809 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.AddRange(System.Collections.Immutable.ImmutableArray{`0}.Builder)">
1811 Adds the specified items to the end of the array.
1813 <param name="items">The items.</param>
1815 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.AddRange``1(System.Collections.Immutable.ImmutableArray{``0}.Builder)">
1817 Adds the specified items to the end of the array.
1819 <param name="items">The items.</param>
1821 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.Remove(`0)">
1823 Removes the specified element.
1825 <param name="element">The element.</param>
1826 <returns>A value indicating whether the specified element was found and removed from the collection.</returns>
1828 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.RemoveAt(System.Int32)">
1830 Removes the <see cref="T:System.Collections.Generic.IList`1"/> item at the specified index.
1832 <param name="index">The zero-based index of the item to remove.</param>
1834 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.Contains(`0)">
1836 Determines whether the <see cref="T:System.Collections.Generic.ICollection`1"/> contains a specific value.
1838 <param name="item">The object to locate in the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
1840 true if <paramref name="item"/> is found in the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false.
1843 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.ToArray">
1845 Creates a new array with the current contents of this Builder.
1848 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.CopyTo(`0[],System.Int32)">
1850 Copies the current contents to the specified array.
1852 <param name="array">The array to copy to.</param>
1853 <param name="index">The starting index of the target array.</param>
1855 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.EnsureCapacity(System.Int32)">
1857 Resizes the array to accommodate the specified capacity requirement.
1859 <param name="capacity">The required capacity.</param>
1861 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.IndexOf(`0)">
1863 Determines the index of a specific item in the <see cref="T:System.Collections.Generic.IList`1"/>.
1865 <param name="item">The object to locate in the <see cref="T:System.Collections.Generic.IList`1"/>.</param>
1867 The index of <paramref name="item"/> if found in the list; otherwise, -1.
1870 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.IndexOf(`0,System.Int32)">
1872 Searches the array for the specified item.
1874 <param name="item">The item to search for.</param>
1875 <param name="startIndex">The index at which to begin the search.</param>
1876 <returns>The 0-based index into the array where the item was found; or -1 if it could not be found.</returns>
1878 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.IndexOf(`0,System.Int32,System.Int32)">
1880 Searches the array for the specified item.
1882 <param name="item">The item to search for.</param>
1883 <param name="startIndex">The index at which to begin the search.</param>
1884 <param name="count">The number of elements to search.</param>
1885 <returns>The 0-based index into the array where the item was found; or -1 if it could not be found.</returns>
1887 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.IndexOf(`0,System.Int32,System.Int32,System.Collections.Generic.IEqualityComparer{`0})">
1889 Searches the array for the specified item.
1891 <param name="item">The item to search for.</param>
1892 <param name="startIndex">The index at which to begin the search.</param>
1893 <param name="count">The number of elements to search.</param>
1894 <param name="equalityComparer">
1895 The equality comparer to use in the search.
1896 If <c>null</c>, <see cref="P:System.Collections.Generic.EqualityComparer`1.Default"/> is used.
1898 <returns>The 0-based index into the array where the item was found; or -1 if it could not be found.</returns>
1900 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.LastIndexOf(`0)">
1902 Searches the array for the specified item in reverse.
1904 <param name="item">The item to search for.</param>
1905 <returns>The 0-based index into the array where the item was found; or -1 if it could not be found.</returns>
1907 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.LastIndexOf(`0,System.Int32)">
1909 Searches the array for the specified item in reverse.
1911 <param name="item">The item to search for.</param>
1912 <param name="startIndex">The index at which to begin the search.</param>
1913 <returns>The 0-based index into the array where the item was found; or -1 if it could not be found.</returns>
1915 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.LastIndexOf(`0,System.Int32,System.Int32)">
1917 Searches the array for the specified item in reverse.
1919 <param name="item">The item to search for.</param>
1920 <param name="startIndex">The index at which to begin the search.</param>
1921 <param name="count">The number of elements to search.</param>
1922 <returns>The 0-based index into the array where the item was found; or -1 if it could not be found.</returns>
1924 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.LastIndexOf(`0,System.Int32,System.Int32,System.Collections.Generic.IEqualityComparer{`0})">
1926 Searches the array for the specified item in reverse.
1928 <param name="item">The item to search for.</param>
1929 <param name="startIndex">The index at which to begin the search.</param>
1930 <param name="count">The number of elements to search.</param>
1931 <param name="equalityComparer">The equality comparer to use in the search.</param>
1932 <returns>The 0-based index into the array where the item was found; or -1 if it could not be found.</returns>
1934 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.Reverse">
1936 Reverses the order of elements in the collection.
1939 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.Sort">
1944 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.Sort(System.Comparison{`0})">
1946 Sorts the elements in the entire array using
1947 the specified <see cref="T:System.Comparison`1"/>.
1949 <param name="comparison">
1950 The <see cref="T:System.Comparison`1"/> to use when comparing elements.
1952 <exception cref="T:System.ArgumentNullException"><paramref name="comparison"/> is null.</exception>
1954 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.Sort(System.Collections.Generic.IComparer{`0})">
1958 <param name="comparer">The comparer to use in sorting. If <c>null</c>, the default comparer is used.</param>
1960 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.Sort(System.Int32,System.Int32,System.Collections.Generic.IComparer{`0})">
1964 <param name="index">The index of the first element to consider in the sort.</param>
1965 <param name="count">The number of elements to include in the sort.</param>
1966 <param name="comparer">The comparer to use in sorting. If <c>null</c>, the default comparer is used.</param>
1968 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.GetEnumerator">
1970 Returns an enumerator for the contents of the array.
1972 <returns>An enumerator.</returns>
1974 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.System#Collections#Generic#IEnumerable{T}#GetEnumerator">
1976 Returns an enumerator for the contents of the array.
1978 <returns>An enumerator.</returns>
1980 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.System#Collections#IEnumerable#GetEnumerator">
1982 Returns an enumerator for the contents of the array.
1984 <returns>An enumerator.</returns>
1986 <member name="M:System.Collections.Immutable.ImmutableArray`1.Builder.AddRange``1(``0[],System.Int32)">
1988 Adds items to this collection.
1990 <typeparam name="TDerived">The type of source elements.</typeparam>
1991 <param name="items">The source array.</param>
1992 <param name="length">The number of elements to add to this array.</param>
1994 <member name="T:System.Collections.Immutable.ImmutableArray`1.Enumerator">
1996 An array enumerator.
1999 It is important that this enumerator does NOT implement <see cref="T:System.IDisposable"/>.
2000 We want the iterator to inline when we do foreach and to not result in
2001 a try/finally frame in the client.
2004 <member name="F:System.Collections.Immutable.ImmutableArray`1.Enumerator._array">
2006 The array being enumerated.
2009 <member name="F:System.Collections.Immutable.ImmutableArray`1.Enumerator._index">
2011 The currently enumerated position.
2014 -1 before the first call to <see cref="M:System.Collections.Immutable.ImmutableArray`1.Enumerator.MoveNext"/>.
2015 >= this.array.Length after <see cref="M:System.Collections.Immutable.ImmutableArray`1.Enumerator.MoveNext"/> returns false.
2018 <member name="M:System.Collections.Immutable.ImmutableArray`1.Enumerator.#ctor(`0[])">
2020 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableArray`1.Enumerator"/> struct.
2022 <param name="array">The array to enumerate.</param>
2024 <member name="P:System.Collections.Immutable.ImmutableArray`1.Enumerator.Current">
2026 Gets the currently enumerated value.
2029 <member name="M:System.Collections.Immutable.ImmutableArray`1.Enumerator.MoveNext">
2031 Advances to the next value to be enumerated.
2033 <returns><c>true</c> if another item exists in the array; <c>false</c> otherwise.</returns>
2035 <member name="T:System.Collections.Immutable.ImmutableArray`1.EnumeratorObject">
2037 An array enumerator that implements <see cref="T:System.Collections.Generic.IEnumerator`1"/> pattern (including <see cref="T:System.IDisposable"/>).
2040 <member name="F:System.Collections.Immutable.ImmutableArray`1.EnumeratorObject.s_EmptyEnumerator">
2042 A shareable singleton for enumerating empty arrays.
2045 <member name="F:System.Collections.Immutable.ImmutableArray`1.EnumeratorObject._array">
2047 The array being enumerated.
2050 <member name="F:System.Collections.Immutable.ImmutableArray`1.EnumeratorObject._index">
2052 The currently enumerated position.
2055 -1 before the first call to <see cref="M:System.Collections.Immutable.ImmutableArray`1.EnumeratorObject.MoveNext"/>.
2056 this.array.Length - 1 after MoveNext returns false.
2059 <member name="M:System.Collections.Immutable.ImmutableArray`1.EnumeratorObject.#ctor(`0[])">
2061 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableArray`1.Enumerator"/> class.
2064 <member name="P:System.Collections.Immutable.ImmutableArray`1.EnumeratorObject.Current">
2066 Gets the currently enumerated value.
2069 <member name="P:System.Collections.Immutable.ImmutableArray`1.EnumeratorObject.System#Collections#IEnumerator#Current">
2071 Gets the currently enumerated value.
2074 <member name="M:System.Collections.Immutable.ImmutableArray`1.EnumeratorObject.MoveNext">
2076 If another item exists in the array, advances to the next value to be enumerated.
2078 <returns><c>true</c> if another item exists in the array; <c>false</c> otherwise.</returns>
2080 <member name="M:System.Collections.Immutable.ImmutableArray`1.EnumeratorObject.System#Collections#IEnumerator#Reset">
2082 Resets enumeration to the start of the array.
2085 <member name="M:System.Collections.Immutable.ImmutableArray`1.EnumeratorObject.Dispose">
2087 Disposes this enumerator.
2090 Currently has no action.
2093 <member name="M:System.Collections.Immutable.ImmutableArray`1.EnumeratorObject.Create(`0[])">
2095 Creates an enumerator for the specified array.
2098 <member name="F:System.Collections.Immutable.ImmutableArray`1.Empty">
2100 An empty (initialized) instance of <see cref="T:System.Collections.Immutable.ImmutableArray`1"/>.
2103 <member name="F:System.Collections.Immutable.ImmutableArray`1.array">
2105 The backing field for this instance. References to this value should never be shared with outside code.
2108 This would be private, but we make it internal so that our own extension methods can access it.
2111 <member name="M:System.Collections.Immutable.ImmutableArray`1.#ctor(`0[])">
2113 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> struct
2114 *without making a defensive copy*.
2116 <param name="items">The array to use. May be null for "default" arrays.</param>
2118 <member name="M:System.Collections.Immutable.ImmutableArray`1.op_Equality(System.Collections.Immutable.ImmutableArray{`0},System.Collections.Immutable.ImmutableArray{`0})">
2120 Checks equality between two instances.
2122 <param name="left">The instance to the left of the operator.</param>
2123 <param name="right">The instance to the right of the operator.</param>
2124 <returns><c>true</c> if the values' underlying arrays are reference equal; <c>false</c> otherwise.</returns>
2126 <member name="M:System.Collections.Immutable.ImmutableArray`1.op_Inequality(System.Collections.Immutable.ImmutableArray{`0},System.Collections.Immutable.ImmutableArray{`0})">
2128 Checks inequality between two instances.
2130 <param name="left">The instance to the left of the operator.</param>
2131 <param name="right">The instance to the right of the operator.</param>
2132 <returns><c>true</c> if the values' underlying arrays are reference not equal; <c>false</c> otherwise.</returns>
2134 <member name="M:System.Collections.Immutable.ImmutableArray`1.op_Equality(System.Nullable{System.Collections.Immutable.ImmutableArray{`0}},System.Nullable{System.Collections.Immutable.ImmutableArray{`0}})">
2136 Checks equality between two instances.
2138 <param name="left">The instance to the left of the operator.</param>
2139 <param name="right">The instance to the right of the operator.</param>
2140 <returns><c>true</c> if the values' underlying arrays are reference equal; <c>false</c> otherwise.</returns>
2142 <member name="M:System.Collections.Immutable.ImmutableArray`1.op_Inequality(System.Nullable{System.Collections.Immutable.ImmutableArray{`0}},System.Nullable{System.Collections.Immutable.ImmutableArray{`0}})">
2144 Checks inequality between two instances.
2146 <param name="left">The instance to the left of the operator.</param>
2147 <param name="right">The instance to the right of the operator.</param>
2148 <returns><c>true</c> if the values' underlying arrays are reference not equal; <c>false</c> otherwise.</returns>
2150 <member name="P:System.Collections.Immutable.ImmutableArray`1.Item(System.Int32)">
2152 Gets the element at the specified index in the read-only list.
2154 <param name="index">The zero-based index of the element to get.</param>
2155 <returns>The element at the specified index in the read-only list.</returns>
2157 <member name="P:System.Collections.Immutable.ImmutableArray`1.System#Collections#Generic#IList{T}#Item(System.Int32)">
2159 Gets or sets the element at the specified index in the read-only list.
2161 <param name="index">The zero-based index of the element to get.</param>
2162 <returns>The element at the specified index in the read-only list.</returns>
2163 <exception cref="T:System.NotSupportedException">Always thrown from the setter.</exception>
2164 <exception cref="T:System.InvalidOperationException">Thrown if the <see cref="P:System.Collections.Immutable.ImmutableArray`1.IsDefault"/> property returns true.</exception>
2166 <member name="P:System.Collections.Immutable.ImmutableArray`1.System#Collections#Generic#ICollection{T}#IsReadOnly">
2168 Gets a value indicating whether this instance is read only.
2171 <c>true</c> if this instance is read only; otherwise, <c>false</c>.
2174 <member name="P:System.Collections.Immutable.ImmutableArray`1.IsEmpty">
2176 Gets a value indicating whether this collection is empty.
2179 <member name="P:System.Collections.Immutable.ImmutableArray`1.Length">
2181 Gets the number of array in the collection.
2184 <member name="P:System.Collections.Immutable.ImmutableArray`1.System#Collections#Generic#ICollection{T}#Count">
2186 Gets the number of array in the collection.
2188 <exception cref="T:System.InvalidOperationException">Thrown if the <see cref="P:System.Collections.Immutable.ImmutableArray`1.IsDefault"/> property returns true.</exception>
2190 <member name="P:System.Collections.Immutable.ImmutableArray`1.System#Collections#Generic#IReadOnlyCollection{T}#Count">
2192 Gets the number of array in the collection.
2194 <exception cref="T:System.InvalidOperationException">Thrown if the <see cref="P:System.Collections.Immutable.ImmutableArray`1.IsDefault"/> property returns true.</exception>
2196 <member name="P:System.Collections.Immutable.ImmutableArray`1.System#Collections#Generic#IReadOnlyList{T}#Item(System.Int32)">
2198 Gets the element at the specified index.
2200 <param name="index">The index.</param>
2204 <exception cref="T:System.InvalidOperationException">Thrown if the <see cref="P:System.Collections.Immutable.ImmutableArray`1.IsDefault"/> property returns true.</exception>
2206 <member name="P:System.Collections.Immutable.ImmutableArray`1.IsDefault">
2208 Gets a value indicating whether this struct was initialized without an actual array instance.
2211 <member name="P:System.Collections.Immutable.ImmutableArray`1.IsDefaultOrEmpty">
2213 Gets a value indicating whether this struct is empty or uninitialized.
2216 <member name="P:System.Collections.Immutable.ImmutableArray`1.System#Collections#Immutable#IImmutableArray#Array">
2218 Gets an untyped reference to the array.
2221 <member name="P:System.Collections.Immutable.ImmutableArray`1.DebuggerDisplay">
2223 Gets the string to display in the debugger watches window for this instance.
2226 <member name="M:System.Collections.Immutable.ImmutableArray`1.IndexOf(`0)">
2228 Searches the array for the specified item.
2230 <param name="item">The item to search for.</param>
2231 <returns>The 0-based index into the array where the item was found; or -1 if it could not be found.</returns>
2233 <member name="M:System.Collections.Immutable.ImmutableArray`1.IndexOf(`0,System.Int32,System.Collections.Generic.IEqualityComparer{`0})">
2235 Searches the array for the specified item.
2237 <param name="item">The item to search for.</param>
2238 <param name="startIndex">The index at which to begin the search.</param>
2239 <param name="equalityComparer">The equality comparer to use in the search.</param>
2240 <returns>The 0-based index into the array where the item was found; or -1 if it could not be found.</returns>
2242 <member name="M:System.Collections.Immutable.ImmutableArray`1.IndexOf(`0,System.Int32)">
2244 Searches the array for the specified item.
2246 <param name="item">The item to search for.</param>
2247 <param name="startIndex">The index at which to begin the search.</param>
2248 <returns>The 0-based index into the array where the item was found; or -1 if it could not be found.</returns>
2250 <member name="M:System.Collections.Immutable.ImmutableArray`1.IndexOf(`0,System.Int32,System.Int32)">
2252 Searches the array for the specified item.
2254 <param name="item">The item to search for.</param>
2255 <param name="startIndex">The index at which to begin the search.</param>
2256 <param name="count">The number of elements to search.</param>
2257 <returns>The 0-based index into the array where the item was found; or -1 if it could not be found.</returns>
2259 <member name="M:System.Collections.Immutable.ImmutableArray`1.IndexOf(`0,System.Int32,System.Int32,System.Collections.Generic.IEqualityComparer{`0})">
2261 Searches the array for the specified item.
2263 <param name="item">The item to search for.</param>
2264 <param name="startIndex">The index at which to begin the search.</param>
2265 <param name="count">The number of elements to search.</param>
2266 <param name="equalityComparer">
2267 The equality comparer to use in the search.
2268 If <c>null</c>, <see cref="P:System.Collections.Generic.EqualityComparer`1.Default"/> is used.
2270 <returns>The 0-based index into the array where the item was found; or -1 if it could not be found.</returns>
2272 <member name="M:System.Collections.Immutable.ImmutableArray`1.LastIndexOf(`0)">
2274 Searches the array for the specified item in reverse.
2276 <param name="item">The item to search for.</param>
2277 <returns>The 0-based index into the array where the item was found; or -1 if it could not be found.</returns>
2279 <member name="M:System.Collections.Immutable.ImmutableArray`1.LastIndexOf(`0,System.Int32)">
2281 Searches the array for the specified item in reverse.
2283 <param name="item">The item to search for.</param>
2284 <param name="startIndex">The index at which to begin the search.</param>
2285 <returns>The 0-based index into the array where the item was found; or -1 if it could not be found.</returns>
2287 <member name="M:System.Collections.Immutable.ImmutableArray`1.LastIndexOf(`0,System.Int32,System.Int32)">
2289 Searches the array for the specified item in reverse.
2291 <param name="item">The item to search for.</param>
2292 <param name="startIndex">The index at which to begin the search.</param>
2293 <param name="count">The number of elements to search.</param>
2294 <returns>The 0-based index into the array where the item was found; or -1 if it could not be found.</returns>
2296 <member name="M:System.Collections.Immutable.ImmutableArray`1.LastIndexOf(`0,System.Int32,System.Int32,System.Collections.Generic.IEqualityComparer{`0})">
2298 Searches the array for the specified item in reverse.
2300 <param name="item">The item to search for.</param>
2301 <param name="startIndex">The index at which to begin the search.</param>
2302 <param name="count">The number of elements to search.</param>
2303 <param name="equalityComparer">The equality comparer to use in the search.</param>
2304 <returns>The 0-based index into the array where the item was found; or -1 if it could not be found.</returns>
2306 <member name="M:System.Collections.Immutable.ImmutableArray`1.Contains(`0)">
2308 Determines whether the specified item exists in the array.
2310 <param name="item">The item to search for.</param>
2311 <returns><c>true</c> if an equal value was found in the array; <c>false</c> otherwise.</returns>
2313 <member name="M:System.Collections.Immutable.ImmutableArray`1.CopyTo(`0[])">
2315 Copies the contents of this array to the specified array.
2317 <param name="destination">The array to copy to.</param>
2319 <member name="M:System.Collections.Immutable.ImmutableArray`1.CopyTo(`0[],System.Int32)">
2321 Copies the contents of this array to the specified array.
2323 <param name="destination">The array to copy to.</param>
2324 <param name="destinationIndex">The index into the destination array to which the first copied element is written.</param>
2326 <member name="M:System.Collections.Immutable.ImmutableArray`1.CopyTo(System.Int32,`0[],System.Int32,System.Int32)">
2328 Copies the contents of this array to the specified array.
2330 <param name="sourceIndex">The index into this collection of the first element to copy.</param>
2331 <param name="destination">The array to copy to.</param>
2332 <param name="destinationIndex">The index into the destination array to which the first copied element is written.</param>
2333 <param name="length">The number of elements to copy.</param>
2335 <member name="M:System.Collections.Immutable.ImmutableArray`1.Insert(System.Int32,`0)">
2337 Returns a new array with the specified value inserted at the specified position.
2339 <param name="index">The 0-based index into the array at which the new item should be added.</param>
2340 <param name="item">The item to insert at the start of the array.</param>
2341 <returns>A new array.</returns>
2343 <member name="M:System.Collections.Immutable.ImmutableArray`1.InsertRange(System.Int32,System.Collections.Generic.IEnumerable{`0})">
2345 Inserts the specified values at the specified index.
2347 <param name="index">The index at which to insert the value.</param>
2348 <param name="items">The elements to insert.</param>
2349 <returns>The new immutable collection.</returns>
2351 <member name="M:System.Collections.Immutable.ImmutableArray`1.InsertRange(System.Int32,System.Collections.Immutable.ImmutableArray{`0})">
2353 Inserts the specified values at the specified index.
2355 <param name="index">The index at which to insert the value.</param>
2356 <param name="items">The elements to insert.</param>
2357 <returns>The new immutable collection.</returns>
2359 <member name="M:System.Collections.Immutable.ImmutableArray`1.Add(`0)">
2361 Returns a new array with the specified value inserted at the end.
2363 <param name="item">The item to insert at the end of the array.</param>
2364 <returns>A new array.</returns>
2366 <member name="M:System.Collections.Immutable.ImmutableArray`1.AddRange(System.Collections.Generic.IEnumerable{`0})">
2368 Adds the specified values to this list.
2370 <param name="items">The values to add.</param>
2371 <returns>A new list with the elements added.</returns>
2373 <member name="M:System.Collections.Immutable.ImmutableArray`1.AddRange(System.Collections.Immutable.ImmutableArray{`0})">
2375 Adds the specified values to this list.
2377 <param name="items">The values to add.</param>
2378 <returns>A new list with the elements added.</returns>
2380 <member name="M:System.Collections.Immutable.ImmutableArray`1.SetItem(System.Int32,`0)">
2382 Returns an array with the item at the specified position replaced.
2384 <param name="index">The index of the item to replace.</param>
2385 <param name="item">The new item.</param>
2386 <returns>The new array.</returns>
2388 <member name="M:System.Collections.Immutable.ImmutableArray`1.Replace(`0,`0)">
2390 Replaces the first equal element in the list with the specified element.
2392 <param name="oldValue">The element to replace.</param>
2393 <param name="newValue">The element to replace the old element with.</param>
2394 <returns>The new list -- even if the value being replaced is equal to the new value for that position.</returns>
2395 <exception cref="T:System.ArgumentException">Thrown when the old value does not exist in the list.</exception>
2397 <member name="M:System.Collections.Immutable.ImmutableArray`1.Replace(`0,`0,System.Collections.Generic.IEqualityComparer{`0})">
2399 Replaces the first equal element in the list with the specified element.
2401 <param name="oldValue">The element to replace.</param>
2402 <param name="newValue">The element to replace the old element with.</param>
2403 <param name="equalityComparer">
2404 The equality comparer to use in the search.
2405 If <c>null</c>, <see cref="P:System.Collections.Generic.EqualityComparer`1.Default"/> is used.
2407 <returns>The new list -- even if the value being replaced is equal to the new value for that position.</returns>
2408 <exception cref="T:System.ArgumentException">Thrown when the old value does not exist in the list.</exception>
2410 <member name="M:System.Collections.Immutable.ImmutableArray`1.Remove(`0)">
2412 Returns an array with the first occurrence of the specified element removed from the array.
2413 If no match is found, the current array is returned.
2415 <param name="item">The item to remove.</param>
2416 <returns>The new array.</returns>
2418 <member name="M:System.Collections.Immutable.ImmutableArray`1.Remove(`0,System.Collections.Generic.IEqualityComparer{`0})">
2420 Returns an array with the first occurrence of the specified element removed from the array.
2421 If no match is found, the current array is returned.
2423 <param name="item">The item to remove.</param>
2424 <param name="equalityComparer">
2425 The equality comparer to use in the search.
2426 If <c>null</c>, <see cref="P:System.Collections.Generic.EqualityComparer`1.Default"/> is used.
2428 <returns>The new array.</returns>
2430 <member name="M:System.Collections.Immutable.ImmutableArray`1.RemoveAt(System.Int32)">
2432 Returns an array with the element at the specified position removed.
2434 <param name="index">The 0-based index into the array for the element to omit from the returned array.</param>
2435 <returns>The new array.</returns>
2437 <member name="M:System.Collections.Immutable.ImmutableArray`1.RemoveRange(System.Int32,System.Int32)">
2439 Returns an array with the elements at the specified position removed.
2441 <param name="index">The 0-based index into the array for the element to omit from the returned array.</param>
2442 <param name="length">The number of elements to remove.</param>
2443 <returns>The new array.</returns>
2445 <member name="M:System.Collections.Immutable.ImmutableArray`1.RemoveRange(System.Collections.Generic.IEnumerable{`0})">
2447 Removes the specified values from this list.
2449 <param name="items">The items to remove if matches are found in this list.</param>
2451 A new list with the elements removed.
2454 <member name="M:System.Collections.Immutable.ImmutableArray`1.RemoveRange(System.Collections.Generic.IEnumerable{`0},System.Collections.Generic.IEqualityComparer{`0})">
2456 Removes the specified values from this list.
2458 <param name="items">The items to remove if matches are found in this list.</param>
2459 <param name="equalityComparer">
2460 The equality comparer to use in the search.
2461 If <c>null</c>, <see cref="P:System.Collections.Generic.EqualityComparer`1.Default"/> is used.
2464 A new list with the elements removed.
2467 <member name="M:System.Collections.Immutable.ImmutableArray`1.RemoveRange(System.Collections.Immutable.ImmutableArray{`0})">
2469 Removes the specified values from this list.
2471 <param name="items">The items to remove if matches are found in this list.</param>
2473 A new list with the elements removed.
2476 <member name="M:System.Collections.Immutable.ImmutableArray`1.RemoveRange(System.Collections.Immutable.ImmutableArray{`0},System.Collections.Generic.IEqualityComparer{`0})">
2478 Removes the specified values from this list.
2480 <param name="items">The items to remove if matches are found in this list.</param>
2481 <param name="equalityComparer">
2482 The equality comparer to use in the search.
2485 A new list with the elements removed.
2488 <member name="M:System.Collections.Immutable.ImmutableArray`1.RemoveAll(System.Predicate{`0})">
2490 Removes all the elements that match the conditions defined by the specified
2493 <param name="match">
2494 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the elements
2501 <member name="M:System.Collections.Immutable.ImmutableArray`1.Clear">
2503 Returns an empty array.
2506 <member name="M:System.Collections.Immutable.ImmutableArray`1.Sort">
2508 Returns a sorted instance of this array.
2511 <member name="M:System.Collections.Immutable.ImmutableArray`1.Sort(System.Comparison{`0})">
2513 Sorts the elements in the entire <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> using
2514 the specified <see cref="T:System.Comparison`1"/>.
2516 <param name="comparison">
2517 The <see cref="T:System.Comparison`1"/> to use when comparing elements.
2519 <returns>The sorted list.</returns>
2520 <exception cref="T:System.ArgumentNullException"><paramref name="comparison"/> is null.</exception>
2522 <member name="M:System.Collections.Immutable.ImmutableArray`1.Sort(System.Collections.Generic.IComparer{`0})">
2524 Returns a sorted instance of this array.
2526 <param name="comparer">The comparer to use in sorting. If <c>null</c>, the default comparer is used.</param>
2528 <member name="M:System.Collections.Immutable.ImmutableArray`1.Sort(System.Int32,System.Int32,System.Collections.Generic.IComparer{`0})">
2530 Returns a sorted instance of this array.
2532 <param name="index">The index of the first element to consider in the sort.</param>
2533 <param name="count">The number of elements to include in the sort.</param>
2534 <param name="comparer">The comparer to use in sorting. If <c>null</c>, the default comparer is used.</param>
2536 <member name="M:System.Collections.Immutable.ImmutableArray`1.ToBuilder">
2538 Returns a builder that is populated with the same contents as this array.
2540 <returns>The new builder.</returns>
2542 <member name="M:System.Collections.Immutable.ImmutableArray`1.GetEnumerator">
2544 Returns an enumerator for the contents of the array.
2546 <returns>An enumerator.</returns>
2548 <member name="M:System.Collections.Immutable.ImmutableArray`1.GetHashCode">
2550 Returns a hash code for this instance.
2553 A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table.
2556 <member name="M:System.Collections.Immutable.ImmutableArray`1.Equals(System.Object)">
2558 Determines whether the specified <see cref="T:System.Object"/> is equal to this instance.
2560 <param name="obj">The <see cref="T:System.Object"/> to compare with this instance.</param>
2562 <c>true</c> if the specified <see cref="T:System.Object"/> is equal to this instance; otherwise, <c>false</c>.
2565 <member name="M:System.Collections.Immutable.ImmutableArray`1.Equals(System.Collections.Immutable.ImmutableArray{`0})">
2567 Indicates whether the current object is equal to another object of the same type.
2569 <param name="other">An object to compare with this object.</param>
2571 true if the current object is equal to the <paramref name="other"/> parameter; otherwise, false.
2574 <member name="M:System.Collections.Immutable.ImmutableArray`1.CastUp``1(System.Collections.Immutable.ImmutableArray{``0})">
2576 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> struct based on the contents
2577 of an existing instance, allowing a covariant static cast to efficiently reuse the existing array.
2579 <param name="items">The array to initialize the array with. No copy is made.</param>
2581 Covariant upcasts from this method may be reversed by calling the
2582 <see cref="M:System.Collections.Immutable.ImmutableArray`1.As``1"/> or <see cref="M:System.Collections.Immutable.ImmutableArray`1.CastArray``1"/>method.
2585 <member name="M:System.Collections.Immutable.ImmutableArray`1.CastArray``1">
2587 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> struct by casting the underlying
2588 array to an array of type <typeparam name="TOther"/>.
2590 <exception cref="T:System.InvalidCastException">Thrown if the cast is illegal.</exception>
2592 <member name="M:System.Collections.Immutable.ImmutableArray`1.As``1">
2594 Creates an immutable array for this array, cast to a different element type.
2596 <typeparam name="TOther">The type of array element to return.</typeparam>
2598 A struct typed for the base element type. If the cast fails, an instance
2599 is returned whose <see cref="P:System.Collections.Immutable.ImmutableArray`1.IsDefault"/> property returns <c>true</c>.
2602 Arrays of derived elements types can be cast to arrays of base element types
2603 without reallocating the array.
2604 These upcasts can be reversed via this same method, casting an array of base
2605 element types to their derived types. However, downcasting is only successful
2606 when it reverses a prior upcasting operation.
2609 <member name="M:System.Collections.Immutable.ImmutableArray`1.OfType``1">
2611 Filters the elements of this array to those assignable to the specified type.
2613 <typeparam name="TResult">The type to filter the elements of the sequence on.</typeparam>
2615 An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that contains elements from
2616 the input sequence of type <typeparamref name="TResult"/>.
2619 <member name="M:System.Collections.Immutable.ImmutableArray`1.System#Collections#Generic#IEnumerable{T}#GetEnumerator">
2621 Returns an enumerator for the contents of the array.
2623 <returns>An enumerator.</returns>
2624 <exception cref="T:System.InvalidOperationException">Thrown if the <see cref="P:System.Collections.Immutable.ImmutableArray`1.IsDefault"/> property returns true.</exception>
2626 <member name="M:System.Collections.Immutable.ImmutableArray`1.System#Collections#IEnumerable#GetEnumerator">
2628 Returns an enumerator for the contents of the array.
2630 <returns>An enumerator.</returns>
2631 <exception cref="T:System.InvalidOperationException">Thrown if the <see cref="P:System.Collections.Immutable.ImmutableArray`1.IsDefault"/> property returns true.</exception>
2633 <member name="M:System.Collections.Immutable.ImmutableArray`1.System#Collections#Immutable#IImmutableList{T}#Clear">
2635 See <see cref="T:System.Collections.Immutable.IImmutableList`1"/>
2638 <member name="M:System.Collections.Immutable.ImmutableArray`1.System#Collections#Immutable#IImmutableList{T}#Add(`0)">
2640 See <see cref="T:System.Collections.Immutable.IImmutableList`1"/>
2643 <member name="M:System.Collections.Immutable.ImmutableArray`1.System#Collections#Immutable#IImmutableList{T}#AddRange(System.Collections.Generic.IEnumerable{`0})">
2645 See <see cref="T:System.Collections.Immutable.IImmutableList`1"/>
2648 <member name="M:System.Collections.Immutable.ImmutableArray`1.System#Collections#Immutable#IImmutableList{T}#Insert(System.Int32,`0)">
2650 See <see cref="T:System.Collections.Immutable.IImmutableList`1"/>
2653 <member name="M:System.Collections.Immutable.ImmutableArray`1.System#Collections#Immutable#IImmutableList{T}#InsertRange(System.Int32,System.Collections.Generic.IEnumerable{`0})">
2655 See <see cref="T:System.Collections.Immutable.IImmutableList`1"/>
2658 <member name="M:System.Collections.Immutable.ImmutableArray`1.System#Collections#Immutable#IImmutableList{T}#Remove(`0,System.Collections.Generic.IEqualityComparer{`0})">
2660 See <see cref="T:System.Collections.Immutable.IImmutableList`1"/>
2663 <member name="M:System.Collections.Immutable.ImmutableArray`1.System#Collections#Immutable#IImmutableList{T}#RemoveAll(System.Predicate{`0})">
2665 See <see cref="T:System.Collections.Immutable.IImmutableList`1"/>
2668 <member name="M:System.Collections.Immutable.ImmutableArray`1.System#Collections#Immutable#IImmutableList{T}#RemoveRange(System.Collections.Generic.IEnumerable{`0},System.Collections.Generic.IEqualityComparer{`0})">
2670 See <see cref="T:System.Collections.Immutable.IImmutableList`1"/>
2673 <member name="M:System.Collections.Immutable.ImmutableArray`1.System#Collections#Immutable#IImmutableList{T}#RemoveRange(System.Int32,System.Int32)">
2675 See <see cref="T:System.Collections.Immutable.IImmutableList`1"/>
2678 <member name="M:System.Collections.Immutable.ImmutableArray`1.System#Collections#Immutable#IImmutableList{T}#RemoveAt(System.Int32)">
2680 See <see cref="T:System.Collections.Immutable.IImmutableList`1"/>
2683 <member name="M:System.Collections.Immutable.ImmutableArray`1.System#Collections#Immutable#IImmutableList{T}#SetItem(System.Int32,`0)">
2685 See <see cref="T:System.Collections.Immutable.IImmutableList`1"/>
2688 <member name="M:System.Collections.Immutable.ImmutableArray`1.System#Collections#Immutable#IImmutableList{T}#Replace(`0,`0,System.Collections.Generic.IEqualityComparer{`0})">
2690 See <see cref="T:System.Collections.Immutable.IImmutableList`1"/>
2693 <member name="M:System.Collections.Immutable.ImmutableArray`1.System#Collections#IList#Add(System.Object)">
2695 Adds an item to the <see cref="T:System.Collections.IList"/>.
2697 <param name="value">The object to add to the <see cref="T:System.Collections.IList"/>.</param>
2699 The position into which the new element was inserted, or -1 to indicate that the item was not inserted into the collection,
2701 <exception cref="T:System.NotSupportedException"></exception>
2703 <member name="M:System.Collections.Immutable.ImmutableArray`1.System#Collections#IList#Clear">
2705 Removes all items from the <see cref="T:System.Collections.Generic.ICollection`1"/>.
2707 <exception cref="T:System.NotSupportedException"></exception>
2709 <member name="M:System.Collections.Immutable.ImmutableArray`1.System#Collections#IList#Contains(System.Object)">
2711 Determines whether the <see cref="T:System.Collections.IList"/> contains a specific value.
2713 <param name="value">The object to locate in the <see cref="T:System.Collections.IList"/>.</param>
2715 true if the <see cref="T:System.Object"/> is found in the <see cref="T:System.Collections.IList"/>; otherwise, false.
2718 <member name="M:System.Collections.Immutable.ImmutableArray`1.System#Collections#IList#IndexOf(System.Object)">
2720 Determines the index of a specific item in the <see cref="T:System.Collections.IList"/>.
2722 <param name="value">The object to locate in the <see cref="T:System.Collections.IList"/>.</param>
2724 The index of <paramref name="value"/> if found in the list; otherwise, -1.
2727 <member name="M:System.Collections.Immutable.ImmutableArray`1.System#Collections#IList#Insert(System.Int32,System.Object)">
2729 Inserts an item to the <see cref="T:System.Collections.IList"/> at the specified index.
2731 <param name="index">The zero-based index at which <paramref name="value"/> should be inserted.</param>
2732 <param name="value">The object to insert into the <see cref="T:System.Collections.IList"/>.</param>
2733 <exception cref="T:System.NotSupportedException"></exception>
2735 <member name="P:System.Collections.Immutable.ImmutableArray`1.System#Collections#IList#IsFixedSize">
2737 Gets a value indicating whether this instance is fixed size.
2740 <c>true</c> if this instance is fixed size; otherwise, <c>false</c>.
2743 <member name="P:System.Collections.Immutable.ImmutableArray`1.System#Collections#IList#IsReadOnly">
2745 Gets a value indicating whether this instance is read only.
2748 <c>true</c> if this instance is read only; otherwise, <c>false</c>.
2751 <member name="P:System.Collections.Immutable.ImmutableArray`1.System#Collections#ICollection#Count">
2753 Gets the size of the array.
2755 <exception cref="T:System.InvalidOperationException">Thrown if the <see cref="P:System.Collections.Immutable.ImmutableArray`1.IsDefault"/> property returns true.</exception>
2757 <member name="P:System.Collections.Immutable.ImmutableArray`1.System#Collections#ICollection#IsSynchronized">
2759 See the <see cref="T:System.Collections.ICollection"/> interface.
2762 <member name="P:System.Collections.Immutable.ImmutableArray`1.System#Collections#ICollection#SyncRoot">
2767 <member name="M:System.Collections.Immutable.ImmutableArray`1.System#Collections#IList#Remove(System.Object)">
2769 Removes the first occurrence of a specific object from the <see cref="T:System.Collections.IList"/>.
2771 <param name="value">The object to remove from the <see cref="T:System.Collections.IList"/>.</param>
2772 <exception cref="T:System.NotSupportedException"></exception>
2774 <member name="M:System.Collections.Immutable.ImmutableArray`1.System#Collections#IList#RemoveAt(System.Int32)">
2776 Removes the <see cref="T:System.Collections.Generic.IList`1"/> item at the specified index.
2778 <param name="index">The zero-based index of the item to remove.</param>
2779 <exception cref="T:System.NotSupportedException"></exception>
2781 <member name="P:System.Collections.Immutable.ImmutableArray`1.System#Collections#IList#Item(System.Int32)">
2783 Gets or sets the <see cref="T:System.Object"/> at the specified index.
2786 The <see cref="T:System.Object"/>.
2788 <param name="index">The index.</param>
2790 <exception cref="T:System.NotSupportedException">Always thrown from the setter.</exception>
2791 <exception cref="T:System.InvalidOperationException">Thrown if the <see cref="P:System.Collections.Immutable.ImmutableArray`1.IsDefault"/> property returns true.</exception>
2793 <member name="M:System.Collections.Immutable.ImmutableArray`1.System#Collections#ICollection#CopyTo(System.Array,System.Int32)">
2795 Copies the elements of the <see cref="T:System.Collections.ICollection"/> to an <see cref="T:System.Array"/>, starting at a particular <see cref="T:System.Array"/> index.
2797 <param name="array">The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements copied from <see cref="T:System.Collections.ICollection"/>. The <see cref="T:System.Array"/> must have zero-based indexing.</param>
2798 <param name="index">The zero-based index in <paramref name="array"/> at which copying begins.</param>
2800 <member name="M:System.Collections.Immutable.ImmutableArray`1.System#Collections#IStructuralEquatable#Equals(System.Object,System.Collections.IEqualityComparer)">
2802 Determines whether an object is structurally equal to the current instance.
2804 <param name="other">The object to compare with the current instance.</param>
2805 <param name="comparer">An object that determines whether the current instance and other are equal.</param>
2806 <returns>true if the two objects are equal; otherwise, false.</returns>
2808 <member name="M:System.Collections.Immutable.ImmutableArray`1.System#Collections#IStructuralEquatable#GetHashCode(System.Collections.IEqualityComparer)">
2810 Returns a hash code for the current instance.
2812 <param name="comparer">An object that computes the hash code of the current object.</param>
2813 <returns>The hash code for the current instance.</returns>
2815 <member name="M:System.Collections.Immutable.ImmutableArray`1.System#Collections#IStructuralComparable#CompareTo(System.Object,System.Collections.IComparer)">
2817 Determines whether the current collection object precedes, occurs in the
2818 same position as, or follows another object in the sort order.
2820 <param name="other">The object to compare with the current instance.</param>
2821 <param name="comparer">
2822 An object that compares members of the current collection object with the
2823 corresponding members of other.
2826 An integer that indicates the relationship of the current collection object
2830 <member name="M:System.Collections.Immutable.ImmutableArray`1.ThrowNullRefIfNotInitialized">
2832 Throws a null reference exception if the array field is null.
2835 <member name="M:System.Collections.Immutable.ImmutableArray`1.ThrowInvalidOperationIfNotInitialized">
2837 Throws an <see cref="T:System.InvalidOperationException"/> if the <see cref="F:System.Collections.Immutable.ImmutableArray`1.array"/> field is null, i.e. the
2838 <see cref="P:System.Collections.Immutable.ImmutableArray`1.IsDefault"/> property returns true. The
2839 <see cref="T:System.InvalidOperationException"/> message specifies that the operation cannot be performed
2840 on a default instance of <see cref="T:System.Collections.Immutable.ImmutableArray`1"/>.
2842 This is intended for explicitly implemented interface method and property implementations.
2845 <member name="M:System.Collections.Immutable.ImmutableArray`1.RemoveAtRange(System.Collections.Generic.ICollection{System.Int32})">
2847 Returns an array with items at the specified indexes removed.
2849 <param name="indexesToRemove">A **sorted set** of indexes to elements that should be omitted from the returned array.</param>
2850 <returns>The new array.</returns>
2852 <member name="M:System.Collections.Immutable.ImmutableArray`1.ThrowNullRefIfNotInitialized(System.Collections.Immutable.ImmutableArray{`0})">
2854 Throws a <see cref="T:System.NullReferenceException"/> if the specified array is uninitialized.
2857 <member name="T:System.Collections.Immutable.ImmutableArrayBuilderDebuggerProxy`1">
2859 A simple view of the immutable collection that the debugger can show to the developer.
2862 <member name="F:System.Collections.Immutable.ImmutableArrayBuilderDebuggerProxy`1._builder">
2864 The collection to be enumerated.
2867 <member name="M:System.Collections.Immutable.ImmutableArrayBuilderDebuggerProxy`1.#ctor(System.Collections.Immutable.ImmutableArray{`0}.Builder)">
2869 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableArrayBuilderDebuggerProxy`1"/> class.
2871 <param name="builder">The collection to display in the debugger</param>
2873 <member name="P:System.Collections.Immutable.ImmutableArrayBuilderDebuggerProxy`1.A">
2875 Gets a simple debugger-viewable collection.
2878 <member name="T:System.Collections.Immutable.ImmutableDictionary">
2880 A set of initialization methods for instances of <see cref="T:System.Collections.Immutable.ImmutableDictionary`2"/>.
2883 <member name="M:System.Collections.Immutable.ImmutableDictionary.Create``2">
2885 Returns an empty collection.
2887 <typeparam name="TKey">The type of keys stored by the dictionary.</typeparam>
2888 <typeparam name="TValue">The type of values stored by the dictionary.</typeparam>
2889 <returns>The immutable collection.</returns>
2891 <member name="M:System.Collections.Immutable.ImmutableDictionary.Create``2(System.Collections.Generic.IEqualityComparer{``0})">
2893 Returns an empty collection with the specified key comparer.
2895 <typeparam name="TKey">The type of keys stored by the dictionary.</typeparam>
2896 <typeparam name="TValue">The type of values stored by the dictionary.</typeparam>
2897 <param name="keyComparer">The key comparer.</param>
2899 The immutable collection.
2902 <member name="M:System.Collections.Immutable.ImmutableDictionary.Create``2(System.Collections.Generic.IEqualityComparer{``0},System.Collections.Generic.IEqualityComparer{``1})">
2904 Returns an empty collection with the specified comparers.
2906 <typeparam name="TKey">The type of keys stored by the dictionary.</typeparam>
2907 <typeparam name="TValue">The type of values stored by the dictionary.</typeparam>
2908 <param name="keyComparer">The key comparer.</param>
2909 <param name="valueComparer">The value comparer.</param>
2911 The immutable collection.
2914 <member name="M:System.Collections.Immutable.ImmutableDictionary.CreateRange``2(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{``0,``1}})">
2916 Creates a new immutable collection prefilled with the specified items.
2918 <typeparam name="TKey">The type of keys stored by the dictionary.</typeparam>
2919 <typeparam name="TValue">The type of values stored by the dictionary.</typeparam>
2920 <param name="items">The items to prepopulate.</param>
2921 <returns>The new immutable collection.</returns>
2923 <member name="M:System.Collections.Immutable.ImmutableDictionary.CreateRange``2(System.Collections.Generic.IEqualityComparer{``0},System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{``0,``1}})">
2925 Creates a new immutable collection prefilled with the specified items.
2927 <typeparam name="TKey">The type of keys stored by the dictionary.</typeparam>
2928 <typeparam name="TValue">The type of values stored by the dictionary.</typeparam>
2929 <param name="keyComparer">The key comparer.</param>
2930 <param name="items">The items to prepopulate.</param>
2931 <returns>The new immutable collection.</returns>
2933 <member name="M:System.Collections.Immutable.ImmutableDictionary.CreateRange``2(System.Collections.Generic.IEqualityComparer{``0},System.Collections.Generic.IEqualityComparer{``1},System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{``0,``1}})">
2935 Creates a new immutable collection prefilled with the specified items.
2937 <typeparam name="TKey">The type of keys stored by the dictionary.</typeparam>
2938 <typeparam name="TValue">The type of values stored by the dictionary.</typeparam>
2939 <param name="keyComparer">The key comparer.</param>
2940 <param name="valueComparer">The value comparer.</param>
2941 <param name="items">The items to prepopulate.</param>
2942 <returns>The new immutable collection.</returns>
2944 <member name="M:System.Collections.Immutable.ImmutableDictionary.CreateBuilder``2">
2946 Creates a new immutable dictionary builder.
2948 <typeparam name="TKey">The type of keys stored by the dictionary.</typeparam>
2949 <typeparam name="TValue">The type of values stored by the dictionary.</typeparam>
2950 <returns>The new builder.</returns>
2952 <member name="M:System.Collections.Immutable.ImmutableDictionary.CreateBuilder``2(System.Collections.Generic.IEqualityComparer{``0})">
2954 Creates a new immutable dictionary builder.
2956 <typeparam name="TKey">The type of keys stored by the dictionary.</typeparam>
2957 <typeparam name="TValue">The type of values stored by the dictionary.</typeparam>
2958 <param name="keyComparer">The key comparer.</param>
2959 <returns>The new builder.</returns>
2961 <member name="M:System.Collections.Immutable.ImmutableDictionary.CreateBuilder``2(System.Collections.Generic.IEqualityComparer{``0},System.Collections.Generic.IEqualityComparer{``1})">
2963 Creates a new immutable dictionary builder.
2965 <typeparam name="TKey">The type of keys stored by the dictionary.</typeparam>
2966 <typeparam name="TValue">The type of values stored by the dictionary.</typeparam>
2967 <param name="keyComparer">The key comparer.</param>
2968 <param name="valueComparer">The value comparer.</param>
2969 <returns>The new builder.</returns>
2971 <member name="M:System.Collections.Immutable.ImmutableDictionary.ToImmutableDictionary``3(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Func{``0,``2},System.Collections.Generic.IEqualityComparer{``1},System.Collections.Generic.IEqualityComparer{``2})">
2973 Constructs an immutable dictionary based on some transformation of a sequence.
2975 <typeparam name="TSource">The type of element in the sequence.</typeparam>
2976 <typeparam name="TKey">The type of key in the resulting map.</typeparam>
2977 <typeparam name="TValue">The type of value in the resulting map.</typeparam>
2978 <param name="source">The sequence to enumerate to generate the map.</param>
2979 <param name="keySelector">The function that will produce the key for the map from each sequence element.</param>
2980 <param name="elementSelector">The function that will produce the value for the map from each sequence element.</param>
2981 <param name="keyComparer">The key comparer to use for the map.</param>
2982 <param name="valueComparer">The value comparer to use for the map.</param>
2983 <returns>The immutable map.</returns>
2985 <member name="M:System.Collections.Immutable.ImmutableDictionary.ToImmutableDictionary``3(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Func{``0,``2},System.Collections.Generic.IEqualityComparer{``1})">
2987 Constructs an immutable dictionary based on some transformation of a sequence.
2989 <typeparam name="TSource">The type of element in the sequence.</typeparam>
2990 <typeparam name="TKey">The type of key in the resulting map.</typeparam>
2991 <typeparam name="TValue">The type of value in the resulting map.</typeparam>
2992 <param name="source">The sequence to enumerate to generate the map.</param>
2993 <param name="keySelector">The function that will produce the key for the map from each sequence element.</param>
2994 <param name="elementSelector">The function that will produce the value for the map from each sequence element.</param>
2995 <param name="keyComparer">The key comparer to use for the map.</param>
2996 <returns>The immutable map.</returns>
2998 <member name="M:System.Collections.Immutable.ImmutableDictionary.ToImmutableDictionary``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1})">
3000 Constructs an immutable dictionary based on some transformation of a sequence.
3002 <typeparam name="TSource">The type of element in the sequence.</typeparam>
3003 <typeparam name="TKey">The type of key in the resulting map.</typeparam>
3004 <param name="source">The sequence to enumerate to generate the map.</param>
3005 <param name="keySelector">The function that will produce the key for the map from each sequence element.</param>
3006 <returns>The immutable map.</returns>
3008 <member name="M:System.Collections.Immutable.ImmutableDictionary.ToImmutableDictionary``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Collections.Generic.IEqualityComparer{``1})">
3010 Constructs an immutable dictionary based on some transformation of a sequence.
3012 <typeparam name="TSource">The type of element in the sequence.</typeparam>
3013 <typeparam name="TKey">The type of key in the resulting map.</typeparam>
3014 <param name="source">The sequence to enumerate to generate the map.</param>
3015 <param name="keySelector">The function that will produce the key for the map from each sequence element.</param>
3016 <param name="keyComparer">The key comparer to use for the map.</param>
3017 <returns>The immutable map.</returns>
3019 <member name="M:System.Collections.Immutable.ImmutableDictionary.ToImmutableDictionary``3(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Func{``0,``2})">
3021 Constructs an immutable dictionary based on some transformation of a sequence.
3023 <typeparam name="TSource">The type of element in the sequence.</typeparam>
3024 <typeparam name="TKey">The type of key in the resulting map.</typeparam>
3025 <typeparam name="TValue">The type of value in the resulting map.</typeparam>
3026 <param name="source">The sequence to enumerate to generate the map.</param>
3027 <param name="keySelector">The function that will produce the key for the map from each sequence element.</param>
3028 <param name="elementSelector">The function that will produce the value for the map from each sequence element.</param>
3029 <returns>The immutable map.</returns>
3031 <member name="M:System.Collections.Immutable.ImmutableDictionary.ToImmutableDictionary``2(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{``0,``1}},System.Collections.Generic.IEqualityComparer{``0},System.Collections.Generic.IEqualityComparer{``1})">
3033 Creates an immutable dictionary given a sequence of key=value pairs.
3035 <typeparam name="TKey">The type of key in the map.</typeparam>
3036 <typeparam name="TValue">The type of value in the map.</typeparam>
3037 <param name="source">The sequence of key=value pairs.</param>
3038 <param name="keyComparer">The key comparer to use when building the immutable map.</param>
3039 <param name="valueComparer">The value comparer to use for the immutable map.</param>
3040 <returns>An immutable map.</returns>
3042 <member name="M:System.Collections.Immutable.ImmutableDictionary.ToImmutableDictionary``2(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{``0,``1}},System.Collections.Generic.IEqualityComparer{``0})">
3044 Creates an immutable dictionary given a sequence of key=value pairs.
3046 <typeparam name="TKey">The type of key in the map.</typeparam>
3047 <typeparam name="TValue">The type of value in the map.</typeparam>
3048 <param name="source">The sequence of key=value pairs.</param>
3049 <param name="keyComparer">The key comparer to use when building the immutable map.</param>
3050 <returns>An immutable map.</returns>
3052 <member name="M:System.Collections.Immutable.ImmutableDictionary.ToImmutableDictionary``2(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{``0,``1}})">
3054 Creates an immutable dictionary given a sequence of key=value pairs.
3056 <typeparam name="TKey">The type of key in the map.</typeparam>
3057 <typeparam name="TValue">The type of value in the map.</typeparam>
3058 <param name="source">The sequence of key=value pairs.</param>
3059 <returns>An immutable map.</returns>
3061 <member name="M:System.Collections.Immutable.ImmutableDictionary.Contains``2(System.Collections.Immutable.IImmutableDictionary{``0,``1},``0,``1)">
3063 Determines whether this map contains the specified key-value pair.
3065 <typeparam name="TKey">The type of key in the map.</typeparam>
3066 <typeparam name="TValue">The type of value in the map.</typeparam>
3067 <param name="map">The map to search.</param>
3068 <param name="key">The key to check for.</param>
3069 <param name="value">The value to check for on a matching key, if found.</param>
3071 <c>true</c> if this map contains the key-value pair; otherwise, <c>false</c>.
3074 <member name="M:System.Collections.Immutable.ImmutableDictionary.GetValueOrDefault``2(System.Collections.Immutable.IImmutableDictionary{``0,``1},``0)">
3076 Gets the value for a given key if a matching key exists in the dictionary.
3078 <param name="dictionary">The dictionary to retrieve the value from.</param>
3079 <param name="key">The key to search for.</param>
3080 <returns>The value for the key, or the default value of type <typeparamref name="TValue"/> if no matching key was found.</returns>
3082 <member name="M:System.Collections.Immutable.ImmutableDictionary.GetValueOrDefault``2(System.Collections.Immutable.IImmutableDictionary{``0,``1},``0,``1)">
3084 Gets the value for a given key if a matching key exists in the dictionary.
3086 <typeparam name="TKey">The type of the key.</typeparam>
3087 <typeparam name="TValue">The type of the value.</typeparam>
3088 <param name="dictionary">The dictionary to retrieve the value from.</param>
3089 <param name="key">The key to search for.</param>
3090 <param name="defaultValue">The default value to return if no matching key is found in the dictionary.</param>
3092 The value for the key, or <paramref name="defaultValue"/> if no matching key was found.
3095 <member name="T:System.Collections.Immutable.ImmutableDictionary`2">
3097 Contains the inner <see cref="T:System.Collections.Immutable.ImmutableDictionary`2.Builder"/> class.
3100 Contains the inner <see cref="T:System.Collections.Immutable.ImmutableDictionary`2.Comparers"/> class.
3103 Contains the inner <see cref="T:System.Collections.Immutable.ImmutableDictionary`2.Enumerator"/> struct.
3106 Contains the inner <see cref="T:System.Collections.Immutable.ImmutableDictionary`2.HashBucket"/> struct.
3109 Contains the inner <see cref="T:System.Collections.Immutable.ImmutableDictionary`2.MutationInput"/> class.
3112 Contains the inner <see cref="T:System.Collections.Immutable.ImmutableDictionary`2.MutationResult"/> class.
3115 An immutable unordered dictionary implementation.
3117 <typeparam name="TKey">The type of the key.</typeparam>
3118 <typeparam name="TValue">The type of the value.</typeparam>
3120 <member name="T:System.Collections.Immutable.ImmutableDictionary`2.Builder">
3122 A dictionary that mutates with little or no memory allocations,
3123 can produce and/or build on immutable dictionary instances very efficiently.
3127 While <see cref="M:System.Collections.Immutable.ImmutableDictionary`2.AddRange(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{`0,`1}})"/>
3128 and other bulk change methods already provide fast bulk change operations on the collection, this class allows
3129 multiple combinations of changes to be made to a set with equal efficiency.
3132 Instance members of this class are <em>not</em> thread-safe.
3136 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.Builder._root">
3138 The root of the binary tree that stores the collection. Contents are typically not entirely frozen.
3141 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.Builder._comparers">
3146 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.Builder._count">
3148 The number of elements in this collection.
3151 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.Builder._immutable">
3153 Caches an immutable instance that represents the current state of the collection.
3155 <value>Null if no immutable view has been created for the current version.</value>
3157 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.Builder._version">
3159 A number that increments every time the builder changes its contents.
3162 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.Builder._syncRoot">
3164 The object callers may use to synchronize access to this collection.
3167 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Builder.#ctor(System.Collections.Immutable.ImmutableDictionary{`0,`1})">
3169 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableDictionary`2.Builder"/> class.
3171 <param name="map">The map that serves as the basis for this Builder.</param>
3173 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.Builder.KeyComparer">
3175 Gets or sets the key comparer.
3181 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.Builder.ValueComparer">
3183 Gets or sets the value comparer.
3189 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.Builder.Count">
3191 Gets the number of elements contained in the <see cref="T:System.Collections.Generic.ICollection`1"/>.
3193 <returns>The number of elements contained in the <see cref="T:System.Collections.Generic.ICollection`1"/>.</returns>
3195 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.Builder.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{TKey,TValue}}#IsReadOnly">
3197 Gets a value indicating whether the <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.
3199 <returns>true if the <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only; otherwise, false.</returns>
3201 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.Builder.Keys">
3203 See <see cref="T:System.Collections.Generic.IReadOnlyDictionary`2"/>
3206 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.Builder.System#Collections#Generic#IDictionary{TKey,TValue}#Keys">
3208 Gets an <see cref="T:System.Collections.Generic.ICollection`1"/> containing the keys of the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
3210 <returns>An <see cref="T:System.Collections.Generic.ICollection`1"/> containing the keys of the object that implements <see cref="T:System.Collections.Generic.IDictionary`2"/>.</returns>
3212 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.Builder.Values">
3214 See <see cref="T:System.Collections.Generic.IReadOnlyDictionary`2"/>
3217 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.Builder.System#Collections#Generic#IDictionary{TKey,TValue}#Values">
3219 Gets an <see cref="T:System.Collections.Generic.ICollection`1"/> containing the values in the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
3221 <returns>An <see cref="T:System.Collections.Generic.ICollection`1"/> containing the values in the object that implements <see cref="T:System.Collections.Generic.IDictionary`2"/>.</returns>
3223 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.Builder.System#Collections#IDictionary#IsFixedSize">
3225 Gets a value indicating whether the <see cref="T:System.Collections.IDictionary"/> object has a fixed size.
3227 <returns>true if the <see cref="T:System.Collections.IDictionary"/> object has a fixed size; otherwise, false.</returns>
3229 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.Builder.System#Collections#IDictionary#IsReadOnly">
3231 Gets a value indicating whether the <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.
3233 <returns>true if the <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only; otherwise, false.
3236 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.Builder.System#Collections#IDictionary#Keys">
3238 Gets an <see cref="T:System.Collections.Generic.ICollection`1"/> containing the keys of the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
3241 An <see cref="T:System.Collections.Generic.ICollection`1"/> containing the keys of the object that implements <see cref="T:System.Collections.Generic.IDictionary`2"/>.
3244 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.Builder.System#Collections#IDictionary#Values">
3246 Gets an <see cref="T:System.Collections.Generic.ICollection`1"/> containing the values in the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
3249 An <see cref="T:System.Collections.Generic.ICollection`1"/> containing the values in the object that implements <see cref="T:System.Collections.Generic.IDictionary`2"/>.
3252 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.Builder.System#Collections#ICollection#SyncRoot">
3254 Gets an object that can be used to synchronize access to the <see cref="T:System.Collections.ICollection"/>.
3256 <returns>An object that can be used to synchronize access to the <see cref="T:System.Collections.ICollection"/>.</returns>
3258 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.Builder.System#Collections#ICollection#IsSynchronized">
3260 Gets a value indicating whether access to the <see cref="T:System.Collections.ICollection"/> is synchronized (thread safe).
3262 <returns>true if access to the <see cref="T:System.Collections.ICollection"/> is synchronized (thread safe); otherwise, false.</returns>
3264 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Builder.System#Collections#IDictionary#Add(System.Object,System.Object)">
3266 Adds an element with the provided key and value to the <see cref="T:System.Collections.IDictionary"/> object.
3268 <param name="key">The <see cref="T:System.Object"/> to use as the key of the element to add.</param>
3269 <param name="value">The <see cref="T:System.Object"/> to use as the value of the element to add.</param>
3271 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Builder.System#Collections#IDictionary#Contains(System.Object)">
3273 Determines whether the <see cref="T:System.Collections.IDictionary"/> object contains an element with the specified key.
3275 <param name="key">The key to locate in the <see cref="T:System.Collections.IDictionary"/> object.</param>
3277 true if the <see cref="T:System.Collections.IDictionary"/> contains an element with the key; otherwise, false.
3280 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Builder.System#Collections#IDictionary#GetEnumerator">
3282 Returns an <see cref="T:System.Collections.IDictionaryEnumerator"/> object for the <see cref="T:System.Collections.IDictionary"/> object.
3285 An <see cref="T:System.Collections.IDictionaryEnumerator"/> object for the <see cref="T:System.Collections.IDictionary"/> object.
3288 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Builder.System#Collections#IDictionary#Remove(System.Object)">
3290 Removes the element with the specified key from the <see cref="T:System.Collections.IDictionary"/> object.
3292 <param name="key">The key of the element to remove.</param>
3294 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.Builder.System#Collections#IDictionary#Item(System.Object)">
3296 Gets or sets the element with the specified key.
3298 <param name="key">The key.</param>
3301 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Builder.System#Collections#ICollection#CopyTo(System.Array,System.Int32)">
3303 Copies the elements of the <see cref="T:System.Collections.ICollection"/> to an <see cref="T:System.Array"/>, starting at a particular <see cref="T:System.Array"/> index.
3305 <param name="array">The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements copied from <see cref="T:System.Collections.ICollection"/>. The <see cref="T:System.Array"/> must have zero-based indexing.</param>
3306 <param name="arrayIndex">The zero-based index in <paramref name="array"/> at which copying begins.</param>
3308 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.Builder.Version">
3310 Gets the current version of the contents of this builder.
3313 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.Builder.Origin">
3315 Gets the initial data to pass to a query or mutation method.
3318 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.Builder.Root">
3320 Gets or sets the root of this data structure.
3323 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.Builder.Item(`0)">
3325 Gets or sets the element with the specified key.
3327 <returns>The element with the specified key.</returns>
3328 <exception cref="T:System.ArgumentNullException"><paramref name="key"/> is null.</exception>
3329 <exception cref="T:System.Collections.Generic.KeyNotFoundException">The property is retrieved and <paramref name="key"/> is not found.</exception>
3330 <exception cref="T:System.NotSupportedException">The property is set and the <see cref="T:System.Collections.Generic.IDictionary`2"/> is read-only.</exception>
3332 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Builder.AddRange(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{`0,`1}})">
3334 Adds a sequence of values to this collection.
3336 <param name="items">The items.</param>
3338 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Builder.RemoveRange(System.Collections.Generic.IEnumerable{`0})">
3340 Removes any entries from the dictionaries with keys that match those found in the specified sequence.
3342 <param name="keys">The keys for entries to remove from the dictionary.</param>
3344 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Builder.GetEnumerator">
3346 Returns an enumerator that iterates through the collection.
3349 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
3352 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Builder.GetValueOrDefault(`0)">
3354 Gets the value for a given key if a matching key exists in the dictionary.
3356 <param name="key">The key to search for.</param>
3357 <returns>The value for the key, or the default value of type <typeparamref name="TValue"/> if no matching key was found.</returns>
3359 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Builder.GetValueOrDefault(`0,`1)">
3361 Gets the value for a given key if a matching key exists in the dictionary.
3363 <param name="key">The key to search for.</param>
3364 <param name="defaultValue">The default value to return if no matching key is found in the dictionary.</param>
3366 The value for the key, or <paramref name="defaultValue"/> if no matching key was found.
3369 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Builder.ToImmutable">
3371 Creates an immutable dictionary based on the contents of this instance.
3373 <returns>An immutable map.</returns>
3375 This method is an O(n) operation, and approaches O(1) time as the number of
3376 actual mutations to the set since the last call to this method approaches 0.
3379 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Builder.Add(`0,`1)">
3381 Adds an element with the provided key and value to the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
3383 <param name="key">The object to use as the key of the element to add.</param>
3384 <param name="value">The object to use as the value of the element to add.</param>
3385 <exception cref="T:System.ArgumentNullException"><paramref name="key"/> is null.</exception>
3386 <exception cref="T:System.ArgumentException">An element with the same key already exists in the <see cref="T:System.Collections.Generic.IDictionary`2"/>.</exception>
3387 <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.IDictionary`2"/> is read-only.</exception>
3389 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Builder.ContainsKey(`0)">
3391 Determines whether the <see cref="T:System.Collections.Generic.IDictionary`2"/> contains an element with the specified key.
3393 <param name="key">The key to locate in the <see cref="T:System.Collections.Generic.IDictionary`2"/>.</param>
3395 true if the <see cref="T:System.Collections.Generic.IDictionary`2"/> contains an element with the key; otherwise, false.
3397 <exception cref="T:System.ArgumentNullException"><paramref name="key"/> is null.</exception>
3399 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Builder.ContainsValue(`1)">
3401 Determines whether the <see cref="T:System.Collections.Immutable.ImmutableDictionary`2"/>
3402 contains an element with the specified value.
3404 <param name="value">
3405 The value to locate in the <see cref="T:System.Collections.Immutable.ImmutableDictionary`2"/>.
3406 The value can be null for reference types.
3409 true if the <see cref="T:System.Collections.Immutable.ImmutableDictionary`2"/> contains
3410 an element with the specified value; otherwise, false.
3413 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Builder.Remove(`0)">
3415 Removes the element with the specified key from the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
3417 <param name="key">The key of the element to remove.</param>
3419 true if the element is successfully removed; otherwise, false. This method also returns false if <paramref name="key"/> was not found in the original <see cref="T:System.Collections.Generic.IDictionary`2"/>.
3421 <exception cref="T:System.ArgumentNullException"><paramref name="key"/> is null.</exception>
3423 <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.IDictionary`2"/> is read-only.</exception>
3425 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Builder.TryGetValue(`0,`1@)">
3427 Gets the value associated with the specified key.
3429 <param name="key">The key whose value to get.</param>
3430 <param name="value">When this method returns, the value associated with the specified key, if the key is found; otherwise, the default value of the type <typeparamref name="TValue"/>. This parameter is passed uninitialized.</param>
3432 true if the object that implements <see cref="T:System.Collections.Generic.IDictionary`2"/> contains an element with the specified key; otherwise, false.
3434 <exception cref="T:System.ArgumentNullException"><paramref name="key"/> is null.</exception>
3436 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Builder.TryGetKey(`0,`0@)">
3438 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
3441 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Builder.Add(System.Collections.Generic.KeyValuePair{`0,`1})">
3443 Adds an item to the <see cref="T:System.Collections.Generic.ICollection`1"/>.
3445 <param name="item">The object to add to the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
3446 <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.</exception>
3448 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Builder.Clear">
3450 Removes all items from the <see cref="T:System.Collections.Generic.ICollection`1"/>.
3452 <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only. </exception>
3454 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Builder.Contains(System.Collections.Generic.KeyValuePair{`0,`1})">
3456 Determines whether the <see cref="T:System.Collections.Generic.ICollection`1"/> contains a specific value.
3458 <param name="item">The object to locate in the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
3460 true if <paramref name="item"/> is found in the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false.
3463 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Builder.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{TKey,TValue}}#CopyTo(System.Collections.Generic.KeyValuePair{`0,`1}[],System.Int32)">
3465 See the <see cref="T:System.Collections.Generic.ICollection`1"/> interface.
3468 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Builder.Remove(System.Collections.Generic.KeyValuePair{`0,`1})">
3470 Removes the first occurrence of a specific object from the <see cref="T:System.Collections.Generic.ICollection`1"/>.
3472 <param name="item">The object to remove from the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
3474 true if <paramref name="item"/> was successfully removed from the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false. This method also returns false if <paramref name="item"/> is not found in the original <see cref="T:System.Collections.Generic.ICollection`1"/>.
3476 <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.</exception>
3478 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Builder.System#Collections#Generic#IEnumerable{System#Collections#Generic#KeyValuePair{TKey,TValue}}#GetEnumerator">
3480 Returns an enumerator that iterates through the collection.
3483 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
3486 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Builder.System#Collections#IEnumerable#GetEnumerator">
3488 Returns an enumerator that iterates through a collection.
3491 An <see cref="T:System.Collections.IEnumerator"/> object that can be used to iterate through the collection.
3494 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Builder.Apply(System.Collections.Immutable.ImmutableDictionary{`0,`1}.MutationResult)">
3496 Applies the result of some mutation operation to this instance.
3498 <param name="result">The result.</param>
3500 <member name="T:System.Collections.Immutable.ImmutableDictionary`2.Comparers">
3502 A shareable container for the comparers used by an immutable dictionary.
3505 To reduce allocations, we directly implement the <see cref="T:System.Collections.Immutable.ImmutableDictionary`2.HashBucket"/> and Key-Only comparers,
3506 but we try to keep this an implementation detail by exposing properties that return
3507 references for these particular facilities, that are implemented as returning "this".
3510 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.Comparers.Default">
3512 The default instance to use when all the comparers used are their default values.
3515 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.Comparers._keyComparer">
3517 The equality comparer to use for the key.
3520 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.Comparers._valueComparer">
3525 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Comparers.#ctor(System.Collections.Generic.IEqualityComparer{`0},System.Collections.Generic.IEqualityComparer{`1})">
3527 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableDictionary`2.Comparers"/> class.
3529 <param name="keyComparer">The key only comparer.</param>
3530 <param name="valueComparer">The value comparer.</param>
3532 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.Comparers.KeyComparer">
3534 Gets the key comparer.
3540 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.Comparers.KeyOnlyComparer">
3542 Gets the key only comparer.
3545 The key only comparer.
3548 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.Comparers.ValueComparer">
3550 Gets the value comparer.
3556 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.Comparers.HashBucketEqualityComparer">
3558 Gets the equality comparer to use with hash buckets.
3561 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Comparers.Equals(System.Collections.Immutable.ImmutableDictionary{`0,`1}.HashBucket,System.Collections.Immutable.ImmutableDictionary{`0,`1}.HashBucket)">
3563 Determines whether the specified objects are equal.
3565 <param name="x">The first object to compare.</param>
3566 <param name="y">The second object to compare.</param>
3568 true if the specified objects are equal; otherwise, false.
3571 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Comparers.GetHashCode(System.Collections.Immutable.ImmutableDictionary{`0,`1}.HashBucket)">
3573 Returns a hash code for this instance.
3575 <param name="obj">The obj.</param>
3577 A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table.
3580 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Comparers.System#Collections#Generic#IEqualityComparer{System#Collections#Generic#KeyValuePair{TKey,TValue}}#Equals(System.Collections.Generic.KeyValuePair{`0,`1},System.Collections.Generic.KeyValuePair{`0,`1})">
3582 Determines whether the specified objects are equal.
3584 <param name="x">The first object to compare.</param>
3585 <param name="y">The second object to compare.</param>
3587 true if the specified objects are equal; otherwise, false.
3590 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Comparers.System#Collections#Generic#IEqualityComparer{System#Collections#Generic#KeyValuePair{TKey,TValue}}#GetHashCode(System.Collections.Generic.KeyValuePair{`0,`1})">
3592 Returns a hash code for this instance.
3594 <param name="obj">The obj.</param>
3596 A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table.
3599 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Comparers.Get(System.Collections.Generic.IEqualityComparer{`0},System.Collections.Generic.IEqualityComparer{`1})">
3601 Gets an instance that refers to the specified combination of comparers.
3603 <param name="keyComparer">The key comparer.</param>
3604 <param name="valueComparer">The value comparer.</param>
3605 <returns>An instance of <see cref="T:System.Collections.Immutable.ImmutableDictionary`2.Comparers"/></returns>
3607 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Comparers.WithValueComparer(System.Collections.Generic.IEqualityComparer{`1})">
3609 Returns an instance of <see cref="T:System.Collections.Immutable.ImmutableDictionary`2.Comparers"/> that shares the same key comparers
3610 with this instance, but uses the specified value comparer.
3612 <param name="valueComparer">The new value comparer to use.</param>
3613 <returns>A new instance of <see cref="T:System.Collections.Immutable.ImmutableDictionary`2.Comparers"/></returns>
3615 <member name="T:System.Collections.Immutable.ImmutableDictionary`2.Enumerator">
3617 Enumerates the contents of the collection in an allocation-free manner.
3620 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.Enumerator._builder">
3622 The builder being enumerated, if applicable.
3625 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.Enumerator._mapEnumerator">
3627 The enumerator over the sorted dictionary whose keys are hash values.
3630 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.Enumerator._bucketEnumerator">
3632 The enumerator in use within an individual <see cref="T:System.Collections.Immutable.ImmutableDictionary`2.HashBucket"/>.
3635 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.Enumerator._enumeratingBuilderVersion">
3637 The version of the builder (when applicable) that is being enumerated.
3640 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Enumerator.#ctor(System.Collections.Immutable.SortedInt32KeyNode{System.Collections.Immutable.ImmutableDictionary{`0,`1}.HashBucket},System.Collections.Immutable.ImmutableDictionary{`0,`1}.Builder)">
3642 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableDictionary`2.Enumerator"/> struct.
3644 <param name="root">The root.</param>
3645 <param name="builder">The builder, if applicable.</param>
3647 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.Enumerator.Current">
3649 Gets the current element.
3652 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.Enumerator.System#Collections#IEnumerator#Current">
3654 Gets the current element.
3657 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Enumerator.MoveNext">
3659 Advances the enumerator to the next element of the collection.
3662 true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection.
3664 <exception cref="T:System.InvalidOperationException">The collection was modified after the enumerator was created. </exception>
3666 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Enumerator.Reset">
3668 Sets the enumerator to its initial position, which is before the first element in the collection.
3670 <exception cref="T:System.InvalidOperationException">The collection was modified after the enumerator was created. </exception>
3672 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Enumerator.Dispose">
3674 Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
3677 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Enumerator.ThrowIfChanged">
3679 Throws an exception if the underlying builder's contents have been changed since enumeration started.
3681 <exception cref="T:System.InvalidOperationException">Thrown if the collection has changed.</exception>
3683 <member name="T:System.Collections.Immutable.ImmutableDictionary`2.HashBucket">
3685 Contains all the key/values in the collection that hash to the same value.
3688 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.HashBucket._firstValue">
3690 One of the values in this bucket.
3693 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.HashBucket._additionalElements">
3695 Any other elements that hash to the same value.
3698 This is null if and only if the entire bucket is empty (including <see cref="F:System.Collections.Immutable.ImmutableDictionary`2.HashBucket._firstValue"/>).
3699 It's empty if <see cref="F:System.Collections.Immutable.ImmutableDictionary`2.HashBucket._firstValue"/> has an element but no additional elements.
3702 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.HashBucket.#ctor(System.Collections.Generic.KeyValuePair{`0,`1},System.Collections.Immutable.ImmutableList{System.Collections.Generic.KeyValuePair{`0,`1}}.Node)">
3704 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableDictionary`2.HashBucket"/> struct.
3706 <param name="firstElement">The first element.</param>
3707 <param name="additionalElements">The additional elements.</param>
3709 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.HashBucket.IsEmpty">
3711 Gets a value indicating whether this instance is empty.
3714 <c>true</c> if this instance is empty; otherwise, <c>false</c>.
3717 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.HashBucket.FirstValue">
3719 Gets the first value in this bucket.
3722 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.HashBucket.AdditionalElements">
3724 Gets the list of additional (hash collision) elements.
3727 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.HashBucket.GetEnumerator">
3729 Returns an enumerator that iterates through the collection.
3732 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.HashBucket.System#Collections#Generic#IEnumerable{System#Collections#Generic#KeyValuePair{TKey,TValue}}#GetEnumerator">
3734 Returns an enumerator that iterates through the collection.
3737 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
3740 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.HashBucket.System#Collections#IEnumerable#GetEnumerator">
3742 Returns an enumerator that iterates through a collection.
3745 An <see cref="T:System.Collections.IEnumerator"/> object that can be used to iterate through the collection.
3748 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.HashBucket.System#IEquatable{System#Collections#Immutable#ImmutableDictionary{TKey,TValue}#HashBucket}#Equals(System.Collections.Immutable.ImmutableDictionary{`0,`1}.HashBucket)">
3750 Throws an exception to catch any errors in comparing <see cref="T:System.Collections.Immutable.ImmutableDictionary`2.HashBucket"/> instances.
3753 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.HashBucket.Add(`0,`1,System.Collections.Generic.IEqualityComparer{System.Collections.Generic.KeyValuePair{`0,`1}},System.Collections.Generic.IEqualityComparer{`1},System.Collections.Immutable.ImmutableDictionary{`0,`1}.KeyCollisionBehavior,System.Collections.Immutable.ImmutableDictionary{`0,`1}.OperationResult@)">
3755 Adds the specified key.
3757 <param name="key">The key to add.</param>
3758 <param name="value">The value to add.</param>
3759 <param name="keyOnlyComparer">The key comparer.</param>
3760 <param name="valueComparer">The value comparer.</param>
3761 <param name="behavior">The intended behavior for certain cases that may come up during the operation.</param>
3762 <param name="result">A description of the effect was on adding an element to this <see cref="T:System.Collections.Immutable.ImmutableDictionary`2.HashBucket"/>.</param>
3763 <returns>A new <see cref="T:System.Collections.Immutable.ImmutableDictionary`2.HashBucket"/> that contains the added value and any values already held by this <see cref="T:System.Collections.Immutable.ImmutableDictionary`2.HashBucket"/>.</returns>
3765 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.HashBucket.Remove(`0,System.Collections.Generic.IEqualityComparer{System.Collections.Generic.KeyValuePair{`0,`1}},System.Collections.Immutable.ImmutableDictionary{`0,`1}.OperationResult@)">
3767 Removes the specified value if it exists in the collection.
3769 <param name="key">The key to remove.</param>
3770 <param name="keyOnlyComparer">The equality comparer.</param>
3771 <param name="result">A description of the effect was on adding an element to this <see cref="T:System.Collections.Immutable.ImmutableDictionary`2.HashBucket"/>.</param>
3772 <returns>A new <see cref="T:System.Collections.Immutable.ImmutableDictionary`2.HashBucket"/> that does not contain the removed value and any values already held by this <see cref="T:System.Collections.Immutable.ImmutableDictionary`2.HashBucket"/>.</returns>
3774 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.HashBucket.TryGetValue(`0,System.Collections.Generic.IEqualityComparer{System.Collections.Generic.KeyValuePair{`0,`1}},`1@)">
3776 Gets the value for the given key in the collection if one exists..
3778 <param name="key">The key to search for.</param>
3779 <param name="keyOnlyComparer">The key comparer.</param>
3780 <param name="value">The value for the given key.</param>
3781 <returns>A value indicating whether the key was found.</returns>
3783 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.HashBucket.TryGetKey(`0,System.Collections.Generic.IEqualityComparer{System.Collections.Generic.KeyValuePair{`0,`1}},`0@)">
3785 Searches the dictionary for a given key and returns the equal key it finds, if any.
3787 <param name="equalKey">The key to search for.</param>
3788 <param name="keyOnlyComparer">The key comparer.</param>
3789 <param name="actualKey">The key from the dictionary that the search found, or <paramref name="equalKey"/> if the search yielded no match.</param>
3790 <returns>A value indicating whether the search was successful.</returns>
3792 This can be useful when you want to reuse a previously stored reference instead of
3793 a newly constructed one (so that more sharing of references can occur) or to look up
3794 the canonical value, or a value that has more complete data than the value you currently have,
3795 although their comparer functions indicate they are equal.
3798 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.HashBucket.Freeze">
3800 Freezes this instance so that any further mutations require new memory allocations.
3803 <member name="T:System.Collections.Immutable.ImmutableDictionary`2.HashBucket.Enumerator">
3805 Enumerates all the elements in this instance.
3808 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.HashBucket.Enumerator._bucket">
3810 The bucket being enumerated.
3813 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.HashBucket.Enumerator._currentPosition">
3815 The current position of this enumerator.
3818 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.HashBucket.Enumerator._additionalEnumerator">
3820 The enumerator that represents the current position over the <see cref="F:System.Collections.Immutable.ImmutableDictionary`2.HashBucket._additionalElements"/> of the <see cref="T:System.Collections.Immutable.ImmutableDictionary`2.HashBucket"/>.
3823 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.HashBucket.Enumerator.#ctor(System.Collections.Immutable.ImmutableDictionary{`0,`1}.HashBucket)">
3825 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableDictionary`2.HashBucket.Enumerator"/> struct.
3827 <param name="bucket">The bucket.</param>
3829 <member name="T:System.Collections.Immutable.ImmutableDictionary`2.HashBucket.Enumerator.Position">
3831 Describes the positions the enumerator state machine may be in.
3834 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.HashBucket.Enumerator.Position.BeforeFirst">
3836 The first element has not yet been moved to.
3839 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.HashBucket.Enumerator.Position.First">
3841 We're at the <see cref="F:System.Collections.Immutable.ImmutableDictionary`2.HashBucket._firstValue"/> of the containing bucket.
3844 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.HashBucket.Enumerator.Position.Additional">
3846 We're enumerating the <see cref="F:System.Collections.Immutable.ImmutableDictionary`2.HashBucket._additionalElements"/> in the bucket.
3849 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.HashBucket.Enumerator.Position.End">
3851 The end of enumeration has been reached.
3854 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.HashBucket.Enumerator.System#Collections#IEnumerator#Current">
3856 Gets the current element.
3859 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.HashBucket.Enumerator.Current">
3861 Gets the current element.
3864 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.HashBucket.Enumerator.MoveNext">
3866 Advances the enumerator to the next element of the collection.
3869 true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection.
3871 <exception cref="T:System.InvalidOperationException">The collection was modified after the enumerator was created. </exception>
3873 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.HashBucket.Enumerator.Reset">
3875 Sets the enumerator to its initial position, which is before the first element in the collection.
3877 <exception cref="T:System.InvalidOperationException">The collection was modified after the enumerator was created. </exception>
3879 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.HashBucket.Enumerator.Dispose">
3881 Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
3884 <member name="T:System.Collections.Immutable.ImmutableDictionary`2.MutationInput">
3886 Description of the current data structure as input into a
3887 mutating or query method.
3890 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.MutationInput._root">
3892 The root of the data structure for the collection.
3895 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.MutationInput._comparers">
3897 The comparer used when comparing hash buckets.
3900 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.MutationInput._count">
3902 The current number of elements in the collection.
3905 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.MutationInput.#ctor(System.Collections.Immutable.SortedInt32KeyNode{System.Collections.Immutable.ImmutableDictionary{`0,`1}.HashBucket},System.Collections.Immutable.ImmutableDictionary{`0,`1}.Comparers,System.Int32)">
3907 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableDictionary`2.MutationInput"/> struct.
3909 <param name="root">The root.</param>
3910 <param name="comparers">The comparers.</param>
3911 <param name="count">The current number of elements in the collection.</param>
3913 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.MutationInput.#ctor(System.Collections.Immutable.ImmutableDictionary{`0,`1})">
3915 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableDictionary`2.MutationInput"/> struct.
3917 <param name="map">The map.</param>
3919 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.MutationInput.Root">
3921 Gets the root of the data structure for the collection.
3924 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.MutationInput.KeyComparer">
3926 Gets the key comparer.
3929 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.MutationInput.KeyOnlyComparer">
3931 Gets the key only comparer.
3934 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.MutationInput.ValueComparer">
3936 Gets the value comparer.
3939 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.MutationInput.HashBucketComparer">
3944 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.MutationInput.Count">
3946 Gets the current number of elements in the collection.
3949 <member name="T:System.Collections.Immutable.ImmutableDictionary`2.MutationResult">
3951 Describes the result of a mutation on the immutable data structure.
3954 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.MutationResult._root">
3956 The root node of the data structure after the mutation.
3959 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.MutationResult._countAdjustment">
3961 The number of elements added or removed from the collection as a result of the operation (a negative number represents removed elements).
3964 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.MutationResult.#ctor(System.Collections.Immutable.ImmutableDictionary{`0,`1}.MutationInput)">
3966 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableDictionary`2.MutationResult"/> struct.
3968 <param name="unchangedInput">The unchanged input.</param>
3970 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.MutationResult.#ctor(System.Collections.Immutable.SortedInt32KeyNode{System.Collections.Immutable.ImmutableDictionary{`0,`1}.HashBucket},System.Int32)">
3972 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableDictionary`2.MutationResult"/> struct.
3974 <param name="root">The root.</param>
3975 <param name="countAdjustment">The count adjustment.</param>
3977 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.MutationResult.Root">
3979 Gets the root node of the data structure after the mutation.
3982 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.MutationResult.CountAdjustment">
3984 Gets the number of elements added or removed from the collection as a result of the operation (a negative number represents removed elements).
3987 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.MutationResult.Finalize(System.Collections.Immutable.ImmutableDictionary{`0,`1})">
3989 Returns an immutable dictionary that captures the result of this mutation.
3991 <param name="priorMap">The prior version of the map. Used to capture the equality comparer and previous count, when applicable.</param>
3992 <returns>The new collection.</returns>
3994 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.Empty">
3996 An empty immutable dictionary with default equality comparers.
3999 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.s_FreezeBucketAction">
4001 The singleton delegate that freezes the contents of hash buckets when the root of the data structure is frozen.
4004 <member name="F:System.Collections.Immutable.ImmutableDictionary`2._count">
4006 The number of elements in the collection.
4009 <member name="F:System.Collections.Immutable.ImmutableDictionary`2._root">
4011 The root node of the tree that stores this map.
4014 <member name="F:System.Collections.Immutable.ImmutableDictionary`2._comparers">
4016 The comparer used when comparing hash buckets.
4019 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.#ctor(System.Collections.Immutable.SortedInt32KeyNode{System.Collections.Immutable.ImmutableDictionary{`0,`1}.HashBucket},System.Collections.Immutable.ImmutableDictionary{`0,`1}.Comparers,System.Int32)">
4021 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableDictionary`2"/> class.
4023 <param name="root">The root.</param>
4024 <param name="comparers">The comparers.</param>
4025 <param name="count">The number of elements in the map.</param>
4027 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.#ctor(System.Collections.Immutable.ImmutableDictionary{`0,`1}.Comparers)">
4029 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableDictionary`2"/> class.
4031 <param name="comparers">The comparers.</param>
4033 <member name="T:System.Collections.Immutable.ImmutableDictionary`2.KeyCollisionBehavior">
4035 How to respond when a key collision is discovered.
4038 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.KeyCollisionBehavior.SetValue">
4040 Sets the value for the given key, even if that overwrites an existing value.
4043 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.KeyCollisionBehavior.Skip">
4045 Skips the mutating operation if a key conflict is detected.
4048 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.KeyCollisionBehavior.ThrowIfValueDifferent">
4050 Throw an exception if the key already exists with a different key.
4053 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.KeyCollisionBehavior.ThrowAlways">
4055 Throw an exception if the key already exists regardless of its value.
4058 <member name="T:System.Collections.Immutable.ImmutableDictionary`2.OperationResult">
4060 The result of a mutation operation.
4063 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.OperationResult.AppliedWithoutSizeChange">
4065 The change was applied and did not require a change to the number of elements in the collection.
4068 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.OperationResult.SizeChanged">
4070 The change required element(s) to be added or removed from the collection.
4073 <member name="F:System.Collections.Immutable.ImmutableDictionary`2.OperationResult.NoChangeRequired">
4075 No change was required (the operation ended in a no-op).
4078 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Clear">
4080 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
4083 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.Count">
4085 Gets the number of elements in this collection.
4088 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.IsEmpty">
4090 Gets a value indicating whether this instance is empty.
4093 <c>true</c> if this instance is empty; otherwise, <c>false</c>.
4096 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.KeyComparer">
4098 Gets the key comparer.
4101 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.ValueComparer">
4103 Gets the value comparer used to determine whether values are equal.
4106 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.Keys">
4108 Gets the keys in the map.
4111 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.Values">
4113 Gets the values in the map.
4116 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.System#Collections#Immutable#IImmutableDictionary{TKey,TValue}#Clear">
4118 Gets the empty instance.
4121 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.System#Collections#Generic#IDictionary{TKey,TValue}#Keys">
4126 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.System#Collections#Generic#IDictionary{TKey,TValue}#Values">
4131 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.Origin">
4133 Gets a data structure that captures the current state of this map, as an input into a query or mutating function.
4136 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.Item(`0)">
4138 Gets the <typeparamref name="TValue"/> with the specified key.
4141 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.System#Collections#Generic#IDictionary{TKey,TValue}#Item(`0)">
4143 Gets or sets the <typeparamref name="TValue"/> with the specified key.
4146 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.ToBuilder">
4148 Creates a collection with the same contents as this collection that
4149 can be efficiently mutated across multiple operations using standard
4153 This is an O(1) operation and results in only a single (small) memory allocation.
4154 The mutable collection that is returned is *not* thread-safe.
4157 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Add(`0,`1)">
4159 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
4162 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.AddRange(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{`0,`1}})">
4164 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
4167 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.SetItem(`0,`1)">
4169 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
4172 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.SetItems(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{`0,`1}})">
4174 Applies a given set of key=value pairs to an immutable dictionary, replacing any conflicting keys in the resulting dictionary.
4176 <param name="items">The key=value pairs to set on the map. Any keys that conflict with existing keys will overwrite the previous values.</param>
4177 <returns>An immutable dictionary.</returns>
4179 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Remove(`0)">
4181 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
4184 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.RemoveRange(System.Collections.Generic.IEnumerable{`0})">
4186 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
4189 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.ContainsKey(`0)">
4191 Determines whether the specified key contains key.
4193 <param name="key">The key.</param>
4195 <c>true</c> if the specified key contains key; otherwise, <c>false</c>.
4198 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Contains(System.Collections.Generic.KeyValuePair{`0,`1})">
4200 Determines whether [contains] [the specified key value pair].
4202 <param name="pair">The key value pair.</param>
4204 <c>true</c> if [contains] [the specified key value pair]; otherwise, <c>false</c>.
4207 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.TryGetValue(`0,`1@)">
4209 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
4212 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.TryGetKey(`0,`0@)">
4214 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
4217 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.WithComparers(System.Collections.Generic.IEqualityComparer{`0},System.Collections.Generic.IEqualityComparer{`1})">
4219 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
4222 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.WithComparers(System.Collections.Generic.IEqualityComparer{`0})">
4224 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
4227 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.ContainsValue(`1)">
4229 Determines whether the <see cref="T:System.Collections.Immutable.ImmutableDictionary`2"/>
4230 contains an element with the specified value.
4232 <param name="value">
4233 The value to locate in the <see cref="T:System.Collections.Immutable.ImmutableDictionary`2"/>.
4234 The value can be null for reference types.
4237 true if the <see cref="T:System.Collections.Immutable.ImmutableDictionary`2"/> contains
4238 an element with the specified value; otherwise, false.
4241 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.GetEnumerator">
4243 Returns an enumerator that iterates through the collection.
4246 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
4249 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.System#Collections#Immutable#IImmutableDictionary{TKey,TValue}#Add(`0,`1)">
4251 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface
4254 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.System#Collections#Immutable#IImmutableDictionary{TKey,TValue}#SetItem(`0,`1)">
4256 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface
4259 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.System#Collections#Immutable#IImmutableDictionary{TKey,TValue}#SetItems(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{`0,`1}})">
4261 Applies a given set of key=value pairs to an immutable dictionary, replacing any conflicting keys in the resulting dictionary.
4263 <param name="items">The key=value pairs to set on the map. Any keys that conflict with existing keys will overwrite the previous values.</param>
4264 <returns>An immutable dictionary.</returns>
4266 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.System#Collections#Immutable#IImmutableDictionary{TKey,TValue}#AddRange(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{`0,`1}})">
4268 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface
4271 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.System#Collections#Immutable#IImmutableDictionary{TKey,TValue}#RemoveRange(System.Collections.Generic.IEnumerable{`0})">
4273 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface
4276 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.System#Collections#Immutable#IImmutableDictionary{TKey,TValue}#Remove(`0)">
4278 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface
4281 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.System#Collections#Generic#IDictionary{TKey,TValue}#Add(`0,`1)">
4283 Adds an element with the provided key and value to the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
4285 <param name="key">The object to use as the key of the element to add.</param>
4286 <param name="value">The object to use as the value of the element to add.</param>
4287 <exception cref="T:System.ArgumentNullException"><paramref name="key"/> is null.
4289 <exception cref="T:System.ArgumentException">
4290 An element with the same key already exists in the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
4292 <exception cref="T:System.NotSupportedException">
4293 The <see cref="T:System.Collections.Generic.IDictionary`2"/> is read-only.
4296 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.System#Collections#Generic#IDictionary{TKey,TValue}#Remove(`0)">
4298 Removes the element with the specified key from the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
4300 <param name="key">The key of the element to remove.</param>
4302 true if the element is successfully removed; otherwise, false. This method also returns false if <paramref name="key"/> was not found in the original <see cref="T:System.Collections.Generic.IDictionary`2"/>.
4304 <exception cref="T:System.ArgumentNullException"><paramref name="key"/> is null.
4306 <exception cref="T:System.NotSupportedException">
4307 The <see cref="T:System.Collections.Generic.IDictionary`2"/> is read-only.
4310 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.System#Collections#IDictionary#IsFixedSize">
4312 Gets a value indicating whether the <see cref="T:System.Collections.IDictionary"/> object has a fixed size.
4314 <returns>true if the <see cref="T:System.Collections.IDictionary"/> object has a fixed size; otherwise, false.</returns>
4316 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.System#Collections#IDictionary#IsReadOnly">
4318 Gets a value indicating whether the <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.
4320 <returns>true if the <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only; otherwise, false.
4323 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.System#Collections#IDictionary#Keys">
4325 Gets an <see cref="T:System.Collections.Generic.ICollection`1"/> containing the keys of the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
4328 An <see cref="T:System.Collections.Generic.ICollection`1"/> containing the keys of the object that implements <see cref="T:System.Collections.Generic.IDictionary`2"/>.
4331 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.System#Collections#IDictionary#Values">
4333 Gets an <see cref="T:System.Collections.Generic.ICollection`1"/> containing the values in the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
4336 An <see cref="T:System.Collections.Generic.ICollection`1"/> containing the values in the object that implements <see cref="T:System.Collections.Generic.IDictionary`2"/>.
4339 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.Root">
4341 Gets the root node (for testing purposes).
4344 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.System#Collections#IDictionary#Add(System.Object,System.Object)">
4346 Adds an element with the provided key and value to the <see cref="T:System.Collections.IDictionary"/> object.
4348 <param name="key">The <see cref="T:System.Object"/> to use as the key of the element to add.</param>
4349 <param name="value">The <see cref="T:System.Object"/> to use as the value of the element to add.</param>
4351 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.System#Collections#IDictionary#Contains(System.Object)">
4353 Determines whether the <see cref="T:System.Collections.IDictionary"/> object contains an element with the specified key.
4355 <param name="key">The key to locate in the <see cref="T:System.Collections.IDictionary"/> object.</param>
4357 true if the <see cref="T:System.Collections.IDictionary"/> contains an element with the key; otherwise, false.
4360 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.System#Collections#IDictionary#GetEnumerator">
4362 Returns an <see cref="T:System.Collections.IDictionaryEnumerator"/> object for the <see cref="T:System.Collections.IDictionary"/> object.
4365 An <see cref="T:System.Collections.IDictionaryEnumerator"/> object for the <see cref="T:System.Collections.IDictionary"/> object.
4368 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.System#Collections#IDictionary#Remove(System.Object)">
4370 Removes the element with the specified key from the <see cref="T:System.Collections.IDictionary"/> object.
4372 <param name="key">The key of the element to remove.</param>
4374 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.System#Collections#IDictionary#Item(System.Object)">
4376 Gets or sets the element with the specified key.
4378 <param name="key">The key.</param>
4381 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.System#Collections#IDictionary#Clear">
4383 Clears this instance.
4385 <exception cref="T:System.NotSupportedException"></exception>
4387 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.System#Collections#ICollection#CopyTo(System.Array,System.Int32)">
4389 Copies the elements of the <see cref="T:System.Collections.ICollection"/> to an <see cref="T:System.Array"/>, starting at a particular <see cref="T:System.Array"/> index.
4391 <param name="array">The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements copied from <see cref="T:System.Collections.ICollection"/>. The <see cref="T:System.Array"/> must have zero-based indexing.</param>
4392 <param name="arrayIndex">The zero-based index in <paramref name="array"/> at which copying begins.</param>
4394 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.System#Collections#ICollection#SyncRoot">
4396 Gets an object that can be used to synchronize access to the <see cref="T:System.Collections.ICollection"/>.
4398 <returns>An object that can be used to synchronize access to the <see cref="T:System.Collections.ICollection"/>.</returns>
4400 <member name="P:System.Collections.Immutable.ImmutableDictionary`2.System#Collections#ICollection#IsSynchronized">
4402 Gets a value indicating whether access to the <see cref="T:System.Collections.ICollection"/> is synchronized (thread safe).
4404 <returns>true if access to the <see cref="T:System.Collections.ICollection"/> is synchronized (thread safe); otherwise, false.</returns>
4406 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.System#Collections#Generic#IEnumerable{System#Collections#Generic#KeyValuePair{TKey,TValue}}#GetEnumerator">
4408 Returns an enumerator that iterates through the collection.
4411 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
4414 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.System#Collections#IEnumerable#GetEnumerator">
4416 Returns an enumerator that iterates through a collection.
4419 An <see cref="T:System.Collections.IEnumerator"/> object that can be used to iterate through the collection.
4422 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.EmptyWithComparers(System.Collections.Immutable.ImmutableDictionary{`0,`1}.Comparers)">
4424 Gets an empty collection with the specified comparers.
4426 <param name="comparers">The comparers.</param>
4427 <returns>The empty dictionary.</returns>
4429 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.TryCastToImmutableMap(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{`0,`1}},System.Collections.Immutable.ImmutableDictionary{`0,`1}@)">
4431 Attempts to discover an <see cref="T:System.Collections.Immutable.ImmutableDictionary`2"/> instance beneath some enumerable sequence
4434 <param name="sequence">The sequence that may have come from an immutable map.</param>
4435 <param name="other">Receives the concrete <see cref="T:System.Collections.Immutable.ImmutableDictionary`2"/> typed value if one can be found.</param>
4436 <returns><c>true</c> if the cast was successful; <c>false</c> otherwise.</returns>
4438 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.ContainsKey(`0,System.Collections.Immutable.ImmutableDictionary{`0,`1}.MutationInput)">
4440 Performs the operation on a given data structure.
4443 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Contains(System.Collections.Generic.KeyValuePair{`0,`1},System.Collections.Immutable.ImmutableDictionary{`0,`1}.MutationInput)">
4445 Performs the operation on a given data structure.
4448 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.TryGetValue(`0,System.Collections.Immutable.ImmutableDictionary{`0,`1}.MutationInput,`1@)">
4450 Performs the operation on a given data structure.
4453 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.TryGetKey(`0,System.Collections.Immutable.ImmutableDictionary{`0,`1}.MutationInput,`0@)">
4455 Performs the operation on a given data structure.
4458 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Add(`0,`1,System.Collections.Immutable.ImmutableDictionary{`0,`1}.KeyCollisionBehavior,System.Collections.Immutable.ImmutableDictionary{`0,`1}.MutationInput)">
4460 Performs the operation on a given data structure.
4463 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.AddRange(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{`0,`1}},System.Collections.Immutable.ImmutableDictionary{`0,`1}.MutationInput,System.Collections.Immutable.ImmutableDictionary{`0,`1}.KeyCollisionBehavior)">
4465 Performs the operation on a given data structure.
4468 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Remove(`0,System.Collections.Immutable.ImmutableDictionary{`0,`1}.MutationInput)">
4470 Performs the operation on a given data structure.
4473 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.UpdateRoot(System.Collections.Immutable.SortedInt32KeyNode{System.Collections.Immutable.ImmutableDictionary{`0,`1}.HashBucket},System.Int32,System.Collections.Immutable.ImmutableDictionary{`0,`1}.HashBucket,System.Collections.Generic.IEqualityComparer{System.Collections.Immutable.ImmutableDictionary{`0,`1}.HashBucket})">
4475 Performs the set operation on a given data structure.
4478 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Wrap(System.Collections.Immutable.SortedInt32KeyNode{System.Collections.Immutable.ImmutableDictionary{`0,`1}.HashBucket},System.Collections.Immutable.ImmutableDictionary{`0,`1}.Comparers,System.Int32)">
4480 Wraps the specified data structure with an immutable collection wrapper.
4482 <param name="root">The root of the data structure.</param>
4483 <param name="comparers">The comparers.</param>
4484 <param name="count">The number of elements in the data structure.</param>
4486 The immutable collection.
4489 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.Wrap(System.Collections.Immutable.SortedInt32KeyNode{System.Collections.Immutable.ImmutableDictionary{`0,`1}.HashBucket},System.Int32)">
4491 Wraps the specified data structure with an immutable collection wrapper.
4493 <param name="root">The root of the data structure.</param>
4494 <param name="adjustedCountIfDifferentRoot">The adjusted count if the root has changed.</param>
4495 <returns>The immutable collection.</returns>
4497 <member name="M:System.Collections.Immutable.ImmutableDictionary`2.AddRange(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{`0,`1}},System.Boolean)">
4499 Bulk adds entries to the map.
4501 <param name="pairs">The entries to add.</param>
4502 <param name="avoidToHashMap"><c>true</c> when being called from <see cref="M:System.Collections.Immutable.ImmutableDictionary`2.WithComparers(System.Collections.Generic.IEqualityComparer{`0},System.Collections.Generic.IEqualityComparer{`1})"/> to avoid <see cref="T:System.StackOverflowException"/>.</param>
4504 <member name="T:System.Collections.Immutable.ImmutableDictionaryBuilderDebuggerProxy`2">
4506 A simple view of the immutable collection that the debugger can show to the developer.
4509 <member name="F:System.Collections.Immutable.ImmutableDictionaryBuilderDebuggerProxy`2._map">
4511 The collection to be enumerated.
4514 <member name="F:System.Collections.Immutable.ImmutableDictionaryBuilderDebuggerProxy`2._contents">
4516 The simple view of the collection.
4519 <member name="M:System.Collections.Immutable.ImmutableDictionaryBuilderDebuggerProxy`2.#ctor(System.Collections.Immutable.ImmutableDictionary{`0,`1}.Builder)">
4521 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableDictionaryBuilderDebuggerProxy`2"/> class.
4523 <param name="map">The collection to display in the debugger</param>
4525 <member name="P:System.Collections.Immutable.ImmutableDictionaryBuilderDebuggerProxy`2.Contents">
4527 Gets a simple debugger-viewable collection.
4530 <member name="T:System.Collections.Immutable.ImmutableDictionaryDebuggerProxy`2">
4532 A simple view of the immutable collection that the debugger can show to the developer.
4535 <member name="F:System.Collections.Immutable.ImmutableDictionaryDebuggerProxy`2._map">
4537 The collection to be enumerated.
4540 <member name="F:System.Collections.Immutable.ImmutableDictionaryDebuggerProxy`2._contents">
4542 The simple view of the collection.
4545 <member name="M:System.Collections.Immutable.ImmutableDictionaryDebuggerProxy`2.#ctor(System.Collections.Immutable.ImmutableDictionary{`0,`1})">
4547 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableDictionaryDebuggerProxy`2"/> class.
4549 <param name="map">The collection to display in the debugger</param>
4551 <member name="P:System.Collections.Immutable.ImmutableDictionaryDebuggerProxy`2.Contents">
4553 Gets a simple debugger-viewable collection.
4556 <member name="T:System.Collections.Immutable.ImmutableExtensions">
4558 Extension methods for immutable types.
4561 <member name="M:System.Collections.Immutable.ImmutableExtensions.TryGetCount``1(System.Collections.Generic.IEnumerable{``0},System.Int32@)">
4563 Tries to divine the number of elements in a sequence without actually enumerating each element.
4565 <typeparam name="T">The type of elements in the sequence.</typeparam>
4566 <param name="sequence">The enumerable source.</param>
4567 <param name="count">Receives the number of elements in the enumeration, if it could be determined.</param>
4568 <returns><c>true</c> if the count could be determined; <c>false</c> otherwise.</returns>
4570 <member name="M:System.Collections.Immutable.ImmutableExtensions.TryGetCount``1(System.Collections.IEnumerable,System.Int32@)">
4572 Tries to divine the number of elements in a sequence without actually enumerating each element.
4574 <typeparam name="T">The type of elements in the sequence.</typeparam>
4575 <param name="sequence">The enumerable source.</param>
4576 <param name="count">Receives the number of elements in the enumeration, if it could be determined.</param>
4577 <returns><c>true</c> if the count could be determined; <c>false</c> otherwise.</returns>
4579 <member name="M:System.Collections.Immutable.ImmutableExtensions.GetCount``1(System.Collections.Generic.IEnumerable{``0}@)">
4581 Gets the number of elements in the specified sequence,
4582 while guaranteeing that the sequence is only enumerated once
4583 in total by this method and the caller.
4585 <typeparam name="T">The type of element in the collection.</typeparam>
4586 <param name="sequence">The sequence.</param>
4587 <returns>The number of elements in the sequence.</returns>
4589 <member name="M:System.Collections.Immutable.ImmutableExtensions.ToArray``1(System.Collections.Generic.IEnumerable{``0},System.Int32)">
4591 Gets a copy of a sequence as an array.
4593 <typeparam name="T">The type of element.</typeparam>
4594 <param name="sequence">The sequence to be copied.</param>
4595 <param name="count">The number of elements in the sequence.</param>
4596 <returns>The array.</returns>
4598 This is more efficient than the <see cref="M:System.Linq.Enumerable.ToArray``1(System.Collections.Generic.IEnumerable{``0})"/> extension method
4599 because that only tries to cast the sequence to <see cref="T:System.Collections.Generic.ICollection`1"/> to determine
4600 the count before it falls back to reallocating arrays as it enumerates.
4603 <member name="M:System.Collections.Immutable.ImmutableExtensions.AsOrderedCollection``1(System.Collections.Generic.IEnumerable{``0})">
4605 Provides a known wrapper around a sequence of elements that provides the number of elements
4606 and an indexer into its contents.
4608 <typeparam name="T">The type of elements in the collection.</typeparam>
4609 <param name="sequence">The collection.</param>
4610 <returns>An ordered collection. May not be thread-safe. Never null.</returns>
4612 <member name="M:System.Collections.Immutable.ImmutableExtensions.ClearFastWhenEmpty``1(System.Collections.Generic.Stack{``0})">
4614 Clears the specified stack. For empty stacks, it avoids the call to <see cref="M:System.Collections.Generic.Stack`1.Clear"/>, which
4615 avoids a call into the runtime's implementation of <see cref="M:System.Array.Clear(System.Array,System.Int32,System.Int32)"/>, helping performance,
4616 in particular around inlining. <see cref="P:System.Collections.Generic.Stack`1.Count"/> typically gets inlined by today's JIT, while
4617 <see cref="M:System.Collections.Generic.Stack`1.Clear"/> and <see cref="M:System.Array.Clear(System.Array,System.Int32,System.Int32)"/> typically don't.
4619 <typeparam name="T">Specifies the type of data in the stack to be cleared.</typeparam>
4620 <param name="stack">The stack to clear.</param>
4622 <member name="M:System.Collections.Immutable.ImmutableExtensions.GetEnumerableDisposable``2(System.Collections.Generic.IEnumerable{``0})">
4624 Gets a disposable enumerable that can be used as the source for a C# foreach loop
4625 that will not box the enumerator if it is of a particular type.
4627 <typeparam name="T">The type of value to be enumerated.</typeparam>
4628 <typeparam name="TEnumerator">The type of the Enumerator struct.</typeparam>
4629 <param name="enumerable">The collection to be enumerated.</param>
4630 <returns>A struct that enumerates the collection.</returns>
4632 <member name="T:System.Collections.Immutable.ImmutableExtensions.ListOfTWrapper`1">
4634 Wraps a <see cref="T:System.Collections.Generic.IList`1"/> as an ordered collection.
4636 <typeparam name="T">The type of element in the collection.</typeparam>
4638 <member name="F:System.Collections.Immutable.ImmutableExtensions.ListOfTWrapper`1._collection">
4640 The list being exposed.
4643 <member name="M:System.Collections.Immutable.ImmutableExtensions.ListOfTWrapper`1.#ctor(System.Collections.Generic.IList{`0})">
4645 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableExtensions.ListOfTWrapper`1"/> class.
4647 <param name="collection">The collection.</param>
4649 <member name="P:System.Collections.Immutable.ImmutableExtensions.ListOfTWrapper`1.Count">
4654 <member name="P:System.Collections.Immutable.ImmutableExtensions.ListOfTWrapper`1.Item(System.Int32)">
4656 Gets the <typeparamref name="T"/> at the specified index.
4659 <member name="M:System.Collections.Immutable.ImmutableExtensions.ListOfTWrapper`1.GetEnumerator">
4661 Returns an enumerator that iterates through the collection.
4664 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
4667 <member name="M:System.Collections.Immutable.ImmutableExtensions.ListOfTWrapper`1.System#Collections#IEnumerable#GetEnumerator">
4669 Returns an enumerator that iterates through a collection.
4672 An <see cref="T:System.Collections.IEnumerator"/> object that can be used to iterate through the collection.
4675 <member name="T:System.Collections.Immutable.ImmutableExtensions.FallbackWrapper`1">
4677 Wraps any <see cref="T:System.Collections.Generic.IEnumerable`1"/> as an ordered, indexable list.
4679 <typeparam name="T">The type of element in the collection.</typeparam>
4681 <member name="F:System.Collections.Immutable.ImmutableExtensions.FallbackWrapper`1._sequence">
4683 The original sequence.
4686 <member name="F:System.Collections.Immutable.ImmutableExtensions.FallbackWrapper`1._collection">
4688 The list-ified sequence.
4691 <member name="M:System.Collections.Immutable.ImmutableExtensions.FallbackWrapper`1.#ctor(System.Collections.Generic.IEnumerable{`0})">
4693 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableExtensions.FallbackWrapper`1"/> class.
4695 <param name="sequence">The sequence.</param>
4697 <member name="P:System.Collections.Immutable.ImmutableExtensions.FallbackWrapper`1.Count">
4702 <member name="P:System.Collections.Immutable.ImmutableExtensions.FallbackWrapper`1.Item(System.Int32)">
4704 Gets the <typeparamref name="T"/> at the specified index.
4707 <member name="M:System.Collections.Immutable.ImmutableExtensions.FallbackWrapper`1.GetEnumerator">
4709 Returns an enumerator that iterates through the collection.
4712 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
4715 <member name="M:System.Collections.Immutable.ImmutableExtensions.FallbackWrapper`1.System#Collections#IEnumerable#GetEnumerator">
4717 Returns an enumerator that iterates through a collection.
4720 An <see cref="T:System.Collections.IEnumerator"/> object that can be used to iterate through the collection.
4723 <member name="T:System.Collections.Immutable.ImmutableHashSet">
4725 A set of initialization methods for instances of <see cref="T:System.Collections.Immutable.ImmutableHashSet`1"/>.
4728 <member name="M:System.Collections.Immutable.ImmutableHashSet.Create``1">
4730 Returns an empty collection.
4732 <typeparam name="T">The type of items stored by the collection.</typeparam>
4733 <returns>The immutable collection.</returns>
4735 <member name="M:System.Collections.Immutable.ImmutableHashSet.Create``1(System.Collections.Generic.IEqualityComparer{``0})">
4737 Returns an empty collection.
4739 <typeparam name="T">The type of items stored by the collection.</typeparam>
4740 <param name="equalityComparer">The equality comparer.</param>
4742 The immutable collection.
4745 <member name="M:System.Collections.Immutable.ImmutableHashSet.Create``1(``0)">
4747 Creates a new immutable collection prefilled with the specified item.
4749 <typeparam name="T">The type of items stored by the collection.</typeparam>
4750 <param name="item">The item to prepopulate.</param>
4751 <returns>The new immutable collection.</returns>
4753 <member name="M:System.Collections.Immutable.ImmutableHashSet.Create``1(System.Collections.Generic.IEqualityComparer{``0},``0)">
4755 Creates a new immutable collection prefilled with the specified item.
4757 <typeparam name="T">The type of items stored by the collection.</typeparam>
4758 <param name="equalityComparer">The equality comparer.</param>
4759 <param name="item">The item to prepopulate.</param>
4760 <returns>The new immutable collection.</returns>
4762 <member name="M:System.Collections.Immutable.ImmutableHashSet.CreateRange``1(System.Collections.Generic.IEnumerable{``0})">
4764 Creates a new immutable collection prefilled with the specified items.
4766 <typeparam name="T">The type of items stored by the collection.</typeparam>
4767 <param name="items">The items to prepopulate.</param>
4768 <returns>The new immutable collection.</returns>
4770 <member name="M:System.Collections.Immutable.ImmutableHashSet.CreateRange``1(System.Collections.Generic.IEqualityComparer{``0},System.Collections.Generic.IEnumerable{``0})">
4772 Creates a new immutable collection prefilled with the specified items.
4774 <typeparam name="T">The type of items stored by the collection.</typeparam>
4775 <param name="equalityComparer">The equality comparer.</param>
4776 <param name="items">The items to prepopulate.</param>
4777 <returns>The new immutable collection.</returns>
4779 <member name="M:System.Collections.Immutable.ImmutableHashSet.Create``1(``0[])">
4781 Creates a new immutable collection prefilled with the specified items.
4783 <typeparam name="T">The type of items stored by the collection.</typeparam>
4784 <param name="items">The items to prepopulate.</param>
4785 <returns>The new immutable collection.</returns>
4787 <member name="M:System.Collections.Immutable.ImmutableHashSet.Create``1(System.Collections.Generic.IEqualityComparer{``0},``0[])">
4789 Creates a new immutable collection prefilled with the specified items.
4791 <typeparam name="T">The type of items stored by the collection.</typeparam>
4792 <param name="equalityComparer">The equality comparer.</param>
4793 <param name="items">The items to prepopulate.</param>
4794 <returns>The new immutable collection.</returns>
4796 <member name="M:System.Collections.Immutable.ImmutableHashSet.CreateBuilder``1">
4798 Creates a new immutable hash set builder.
4800 <typeparam name="T">The type of items stored by the collection.</typeparam>
4801 <returns>The immutable collection.</returns>
4803 <member name="M:System.Collections.Immutable.ImmutableHashSet.CreateBuilder``1(System.Collections.Generic.IEqualityComparer{``0})">
4805 Creates a new immutable hash set builder.
4807 <typeparam name="T">The type of items stored by the collection.</typeparam>
4808 <param name="equalityComparer">The equality comparer.</param>
4810 The immutable collection.
4813 <member name="M:System.Collections.Immutable.ImmutableHashSet.ToImmutableHashSet``1(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEqualityComparer{``0})">
4815 Enumerates a sequence exactly once and produces an immutable set of its contents.
4817 <typeparam name="TSource">The type of element in the sequence.</typeparam>
4818 <param name="source">The sequence to enumerate.</param>
4819 <param name="equalityComparer">The equality comparer to use for initializing and adding members to the hash set.</param>
4820 <returns>An immutable set.</returns>
4822 <member name="M:System.Collections.Immutable.ImmutableHashSet.ToImmutableHashSet``1(System.Collections.Generic.IEnumerable{``0})">
4824 Enumerates a sequence exactly once and produces an immutable set of its contents.
4826 <typeparam name="TSource">The type of element in the sequence.</typeparam>
4827 <param name="source">The sequence to enumerate.</param>
4828 <returns>An immutable set.</returns>
4830 <member name="T:System.Collections.Immutable.ImmutableHashSet`1">
4832 Contains the inner <see cref="T:System.Collections.Immutable.ImmutableHashSet`1.Builder"/> class.
4835 Contains the inner <see cref="T:System.Collections.Immutable.ImmutableHashSet`1.Enumerator"/> class.
4838 Contains the inner <see cref="T:System.Collections.Immutable.ImmutableHashSet`1.HashBucket"/> struct.
4841 Contains the inner <see cref="T:System.Collections.Immutable.ImmutableHashSet`1.MutationInput"/> class.
4844 Contains the inner <see cref="T:System.Collections.Immutable.ImmutableHashSet`1.MutationResult"/> class.
4847 Contains the inner <see cref="T:System.Collections.Immutable.ImmutableHashSet`1.NodeEnumerable"/> class.
4850 An immutable unordered hash set implementation.
4852 <typeparam name="T">The type of elements in the set.</typeparam>
4854 <member name="T:System.Collections.Immutable.ImmutableHashSet`1.Builder">
4856 A hash set that mutates with little or no memory allocations,
4857 can produce and/or build on immutable hash set instances very efficiently.
4861 While <see cref="M:System.Collections.Immutable.ImmutableHashSet`1.Union(System.Collections.Generic.IEnumerable{`0})"/> and other bulk change methods
4862 already provide fast bulk change operations on the collection, this class allows
4863 multiple combinations of changes to be made to a set with equal efficiency.
4866 Instance members of this class are <em>not</em> thread-safe.
4870 <member name="F:System.Collections.Immutable.ImmutableHashSet`1.Builder._root">
4872 The root of the binary tree that stores the collection. Contents are typically not entirely frozen.
4875 <member name="F:System.Collections.Immutable.ImmutableHashSet`1.Builder._equalityComparer">
4877 The equality comparer.
4880 <member name="F:System.Collections.Immutable.ImmutableHashSet`1.Builder._count">
4882 The number of elements in this collection.
4885 <member name="F:System.Collections.Immutable.ImmutableHashSet`1.Builder._immutable">
4887 Caches an immutable instance that represents the current state of the collection.
4889 <value>Null if no immutable view has been created for the current version.</value>
4891 <member name="F:System.Collections.Immutable.ImmutableHashSet`1.Builder._version">
4893 A number that increments every time the builder changes its contents.
4896 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Builder.#ctor(System.Collections.Immutable.ImmutableHashSet{`0})">
4898 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableHashSet`1.Builder"/> class.
4900 <param name="set">The set.</param>
4902 <member name="P:System.Collections.Immutable.ImmutableHashSet`1.Builder.Count">
4904 Gets the number of elements contained in the <see cref="T:System.Collections.Generic.ICollection`1"/>.
4906 <returns>The number of elements contained in the <see cref="T:System.Collections.Generic.ICollection`1"/>.</returns>
4908 <member name="P:System.Collections.Immutable.ImmutableHashSet`1.Builder.System#Collections#Generic#ICollection{T}#IsReadOnly">
4910 Gets a value indicating whether the <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.
4912 <returns>true if the <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only; otherwise, false.</returns>
4914 <member name="P:System.Collections.Immutable.ImmutableHashSet`1.Builder.KeyComparer">
4916 Gets or sets the key comparer.
4922 <member name="P:System.Collections.Immutable.ImmutableHashSet`1.Builder.Version">
4924 Gets the current version of the contents of this builder.
4927 <member name="P:System.Collections.Immutable.ImmutableHashSet`1.Builder.Origin">
4929 Gets the initial data to pass to a query or mutation method.
4932 <member name="P:System.Collections.Immutable.ImmutableHashSet`1.Builder.Root">
4934 Gets or sets the root of this data structure.
4937 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Builder.GetEnumerator">
4939 Returns an enumerator that iterates through the collection.
4942 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
4945 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Builder.ToImmutable">
4947 Creates an immutable hash set based on the contents of this instance.
4949 <returns>An immutable set.</returns>
4951 This method is an O(n) operation, and approaches O(1) time as the number of
4952 actual mutations to the set since the last call to this method approaches 0.
4955 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Builder.Add(`0)">
4957 Adds the specified item.
4959 <param name="item">The item.</param>
4960 <returns>True if the item did not already belong to the collection.</returns>
4962 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Builder.Remove(`0)">
4964 Removes the first occurrence of a specific object from the <see cref="T:System.Collections.Generic.ICollection`1"/>.
4966 <param name="item">The object to remove from the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
4968 true if <paramref name="item"/> was successfully removed from the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false. This method also returns false if <paramref name="item"/> is not found in the original <see cref="T:System.Collections.Generic.ICollection`1"/>.
4970 <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.</exception>
4972 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Builder.Contains(`0)">
4974 Determines whether the <see cref="T:System.Collections.Generic.ICollection`1"/> contains a specific value.
4976 <param name="item">The object to locate in the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
4978 true if <paramref name="item"/> is found in the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false.
4981 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Builder.Clear">
4983 Removes all items from the <see cref="T:System.Collections.Generic.ICollection`1"/>.
4985 <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only. </exception>
4987 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Builder.ExceptWith(System.Collections.Generic.IEnumerable{`0})">
4989 Removes all elements in the specified collection from the current set.
4991 <param name="other">The collection of items to remove from the set.</param>
4993 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Builder.IntersectWith(System.Collections.Generic.IEnumerable{`0})">
4995 Modifies the current set so that it contains only elements that are also in a specified collection.
4997 <param name="other">The collection to compare to the current set.</param>
4999 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Builder.IsProperSubsetOf(System.Collections.Generic.IEnumerable{`0})">
5001 Determines whether the current set is a proper (strict) subset of a specified collection.
5003 <param name="other">The collection to compare to the current set.</param>
5004 <returns>true if the current set is a correct subset of other; otherwise, false.</returns>
5006 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Builder.IsProperSupersetOf(System.Collections.Generic.IEnumerable{`0})">
5008 Determines whether the current set is a proper (strict) superset of a specified collection.
5010 <param name="other">The collection to compare to the current set.</param>
5011 <returns>true if the current set is a superset of other; otherwise, false.</returns>
5013 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Builder.IsSubsetOf(System.Collections.Generic.IEnumerable{`0})">
5015 Determines whether the current set is a subset of a specified collection.
5017 <param name="other">The collection to compare to the current set.</param>
5018 <returns>true if the current set is a subset of other; otherwise, false.</returns>
5020 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Builder.IsSupersetOf(System.Collections.Generic.IEnumerable{`0})">
5022 Determines whether the current set is a superset of a specified collection.
5024 <param name="other">The collection to compare to the current set.</param>
5025 <returns>true if the current set is a superset of other; otherwise, false.</returns>
5027 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Builder.Overlaps(System.Collections.Generic.IEnumerable{`0})">
5029 Determines whether the current set overlaps with the specified collection.
5031 <param name="other">The collection to compare to the current set.</param>
5032 <returns>true if the current set and other share at least one common element; otherwise, false.</returns>
5034 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Builder.SetEquals(System.Collections.Generic.IEnumerable{`0})">
5036 Determines whether the current set and the specified collection contain the same elements.
5038 <param name="other">The collection to compare to the current set.</param>
5039 <returns>true if the current set is equal to other; otherwise, false.</returns>
5041 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Builder.SymmetricExceptWith(System.Collections.Generic.IEnumerable{`0})">
5043 Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both.
5045 <param name="other">The collection to compare to the current set.</param>
5047 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Builder.UnionWith(System.Collections.Generic.IEnumerable{`0})">
5049 Modifies the current set so that it contains all elements that are present in both the current set and in the specified collection.
5051 <param name="other">The collection to compare to the current set.</param>
5053 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Builder.System#Collections#Generic#ICollection{T}#Add(`0)">
5055 Adds an item to the <see cref="T:System.Collections.Generic.ICollection`1"/>.
5057 <param name="item">The object to add to the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
5058 <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.</exception>
5060 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Builder.System#Collections#Generic#ICollection{T}#CopyTo(`0[],System.Int32)">
5062 See the <see cref="T:System.Collections.Generic.ICollection`1"/> interface.
5065 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Builder.System#Collections#Generic#IEnumerable{T}#GetEnumerator">
5067 Returns an enumerator that iterates through the collection.
5070 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
5073 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Builder.System#Collections#IEnumerable#GetEnumerator">
5075 Returns an enumerator that iterates through a collection.
5078 An <see cref="T:System.Collections.IEnumerator"/> object that can be used to iterate through the collection.
5081 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Builder.Apply(System.Collections.Immutable.ImmutableHashSet{`0}.MutationResult)">
5083 Applies the result of some mutation operation to this instance.
5085 <param name="result">The result.</param>
5087 <member name="T:System.Collections.Immutable.ImmutableHashSet`1.Enumerator">
5089 Enumerates the contents of the collection in an allocation-free manner.
5092 <member name="F:System.Collections.Immutable.ImmutableHashSet`1.Enumerator._builder">
5094 The builder being enumerated, if applicable.
5097 <member name="F:System.Collections.Immutable.ImmutableHashSet`1.Enumerator._mapEnumerator">
5099 The enumerator over the sorted dictionary whose keys are hash values.
5102 <member name="F:System.Collections.Immutable.ImmutableHashSet`1.Enumerator._bucketEnumerator">
5104 The enumerator in use within an individual HashBucket.
5107 <member name="F:System.Collections.Immutable.ImmutableHashSet`1.Enumerator._enumeratingBuilderVersion">
5109 The version of the builder (when applicable) that is being enumerated.
5112 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Enumerator.#ctor(System.Collections.Immutable.SortedInt32KeyNode{System.Collections.Immutable.ImmutableHashSet{`0}.HashBucket},System.Collections.Immutable.ImmutableHashSet{`0}.Builder)">
5114 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableHashSet`1.Enumerator"/> struct.
5116 <param name="root">The root.</param>
5117 <param name="builder">The builder, if applicable.</param>
5119 <member name="P:System.Collections.Immutable.ImmutableHashSet`1.Enumerator.Current">
5121 Gets the current element.
5124 <member name="P:System.Collections.Immutable.ImmutableHashSet`1.Enumerator.System#Collections#IEnumerator#Current">
5126 Gets the current element.
5129 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Enumerator.MoveNext">
5131 Advances the enumerator to the next element of the collection.
5134 true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection.
5136 <exception cref="T:System.InvalidOperationException">The collection was modified after the enumerator was created. </exception>
5138 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Enumerator.Reset">
5140 Sets the enumerator to its initial position, which is before the first element in the collection.
5142 <exception cref="T:System.InvalidOperationException">The collection was modified after the enumerator was created. </exception>
5144 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Enumerator.Dispose">
5146 Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
5149 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Enumerator.ThrowIfChanged">
5151 Throws an exception if the underlying builder's contents have been changed since enumeration started.
5153 <exception cref="T:System.InvalidOperationException">Thrown if the collection has changed.</exception>
5155 <member name="T:System.Collections.Immutable.ImmutableHashSet`1.OperationResult">
5157 The result of a mutation operation.
5160 <member name="F:System.Collections.Immutable.ImmutableHashSet`1.OperationResult.SizeChanged">
5162 The change required element(s) to be added or removed from the collection.
5165 <member name="F:System.Collections.Immutable.ImmutableHashSet`1.OperationResult.NoChangeRequired">
5167 No change was required (the operation ended in a no-op).
5170 <member name="T:System.Collections.Immutable.ImmutableHashSet`1.HashBucket">
5172 Contains all the keys in the collection that hash to the same value.
5175 <member name="F:System.Collections.Immutable.ImmutableHashSet`1.HashBucket._firstValue">
5177 One of the values in this bucket.
5180 <member name="F:System.Collections.Immutable.ImmutableHashSet`1.HashBucket._additionalElements">
5182 Any other elements that hash to the same value.
5185 This is null if and only if the entire bucket is empty (including <see cref="F:System.Collections.Immutable.ImmutableHashSet`1.HashBucket._firstValue"/>).
5186 It's empty if <see cref="F:System.Collections.Immutable.ImmutableHashSet`1.HashBucket._firstValue"/> has an element but no additional elements.
5189 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.HashBucket.#ctor(`0,System.Collections.Immutable.ImmutableList{`0}.Node)">
5191 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableHashSet`1.HashBucket"/> struct.
5193 <param name="firstElement">The first element.</param>
5194 <param name="additionalElements">The additional elements.</param>
5196 <member name="P:System.Collections.Immutable.ImmutableHashSet`1.HashBucket.IsEmpty">
5198 Gets a value indicating whether this instance is empty.
5201 <c>true</c> if this instance is empty; otherwise, <c>false</c>.
5204 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.HashBucket.GetEnumerator">
5206 Returns an enumerator that iterates through the collection.
5209 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.HashBucket.Add(`0,System.Collections.Generic.IEqualityComparer{`0},System.Collections.Immutable.ImmutableHashSet{`0}.OperationResult@)">
5211 Adds the specified value.
5213 <param name="value">The value.</param>
5214 <param name="valueComparer">The value comparer.</param>
5215 <param name="result">A description of the effect was on adding an element to this <see cref="T:System.Collections.Immutable.ImmutableHashSet`1.HashBucket"/>.</param>
5216 <returns>A new <see cref="T:System.Collections.Immutable.ImmutableHashSet`1.HashBucket"/> that contains the added value and any values already held by this <see cref="T:System.Collections.Immutable.ImmutableHashSet`1.HashBucket"/>.</returns>
5218 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.HashBucket.Contains(`0,System.Collections.Generic.IEqualityComparer{`0})">
5220 Determines whether the <see cref="T:System.Collections.Immutable.ImmutableHashSet`1.HashBucket"/> contains the specified value.
5222 <param name="value">The value.</param>
5223 <param name="valueComparer">The value comparer.</param>
5225 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.HashBucket.TryExchange(`0,System.Collections.Generic.IEqualityComparer{`0},`0@)">
5227 Searches the set for a given value and returns the equal value it finds, if any.
5229 <param name="value">The value to search for.</param>
5230 <param name="valueComparer">The value comparer.</param>
5231 <param name="existingValue">The value from the set that the search found, or the original value if the search yielded no match.</param>
5233 A value indicating whether the search was successful.
5236 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.HashBucket.Remove(`0,System.Collections.Generic.IEqualityComparer{`0},System.Collections.Immutable.ImmutableHashSet{`0}.OperationResult@)">
5238 Removes the specified value if it exists in the collection.
5240 <param name="value">The value.</param>
5241 <param name="equalityComparer">The equality comparer.</param>
5242 <param name="result">A description of the effect was on adding an element to this <see cref="T:System.Collections.Immutable.ImmutableHashSet`1.HashBucket"/>.</param>
5243 <returns>A new <see cref="T:System.Collections.Immutable.ImmutableHashSet`1.HashBucket"/> that does not contain the removed value and any values already held by this <see cref="T:System.Collections.Immutable.ImmutableHashSet`1.HashBucket"/>.</returns>
5245 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.HashBucket.Freeze">
5247 Freezes this instance so that any further mutations require new memory allocations.
5250 <member name="T:System.Collections.Immutable.ImmutableHashSet`1.HashBucket.Enumerator">
5252 Enumerates all the elements in this instance.
5255 <member name="F:System.Collections.Immutable.ImmutableHashSet`1.HashBucket.Enumerator._bucket">
5257 The bucket being enumerated.
5260 <member name="F:System.Collections.Immutable.ImmutableHashSet`1.HashBucket.Enumerator._disposed">
5262 A value indicating whether this enumerator has been disposed.
5265 <member name="F:System.Collections.Immutable.ImmutableHashSet`1.HashBucket.Enumerator._currentPosition">
5267 The current position of this enumerator.
5270 <member name="F:System.Collections.Immutable.ImmutableHashSet`1.HashBucket.Enumerator._additionalEnumerator">
5272 The enumerator that represents the current position over the <see cref="F:System.Collections.Immutable.ImmutableHashSet`1.HashBucket._additionalElements"/> of the <see cref="T:System.Collections.Immutable.ImmutableHashSet`1.HashBucket"/>.
5275 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.HashBucket.Enumerator.#ctor(System.Collections.Immutable.ImmutableHashSet{`0}.HashBucket)">
5277 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableHashSet`1.HashBucket.Enumerator"/> struct.
5279 <param name="bucket">The bucket.</param>
5281 <member name="T:System.Collections.Immutable.ImmutableHashSet`1.HashBucket.Enumerator.Position">
5283 Describes the positions the enumerator state machine may be in.
5286 <member name="F:System.Collections.Immutable.ImmutableHashSet`1.HashBucket.Enumerator.Position.BeforeFirst">
5288 The first element has not yet been moved to.
5291 <member name="F:System.Collections.Immutable.ImmutableHashSet`1.HashBucket.Enumerator.Position.First">
5293 We're at the <see cref="F:System.Collections.Immutable.ImmutableHashSet`1.HashBucket._firstValue"/> of the containing bucket.
5296 <member name="F:System.Collections.Immutable.ImmutableHashSet`1.HashBucket.Enumerator.Position.Additional">
5298 We're enumerating the <see cref="F:System.Collections.Immutable.ImmutableHashSet`1.HashBucket._additionalElements"/> in the bucket.
5301 <member name="F:System.Collections.Immutable.ImmutableHashSet`1.HashBucket.Enumerator.Position.End">
5303 The end of enumeration has been reached.
5306 <member name="P:System.Collections.Immutable.ImmutableHashSet`1.HashBucket.Enumerator.System#Collections#IEnumerator#Current">
5308 Gets the current element.
5311 <member name="P:System.Collections.Immutable.ImmutableHashSet`1.HashBucket.Enumerator.Current">
5313 Gets the current element.
5316 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.HashBucket.Enumerator.MoveNext">
5318 Advances the enumerator to the next element of the collection.
5321 true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection.
5323 <exception cref="T:System.InvalidOperationException">The collection was modified after the enumerator was created. </exception>
5325 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.HashBucket.Enumerator.Reset">
5327 Sets the enumerator to its initial position, which is before the first element in the collection.
5329 <exception cref="T:System.InvalidOperationException">The collection was modified after the enumerator was created. </exception>
5331 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.HashBucket.Enumerator.Dispose">
5333 Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
5336 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.HashBucket.Enumerator.ThrowIfDisposed">
5338 Throws an <see cref="T:System.ObjectDisposedException"/> if this enumerator has been disposed.
5341 <member name="T:System.Collections.Immutable.ImmutableHashSet`1.MutationInput">
5343 Description of the current data structure as input into a
5344 mutating or query method.
5347 <member name="F:System.Collections.Immutable.ImmutableHashSet`1.MutationInput._root">
5349 The root of the data structure for the collection.
5352 <member name="F:System.Collections.Immutable.ImmutableHashSet`1.MutationInput._equalityComparer">
5354 The equality comparer.
5357 <member name="F:System.Collections.Immutable.ImmutableHashSet`1.MutationInput._count">
5359 The current number of elements in the collection.
5362 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.MutationInput.#ctor(System.Collections.Immutable.ImmutableHashSet{`0})">
5364 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableHashSet`1.MutationInput"/> struct.
5366 <param name="set">The set.</param>
5368 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.MutationInput.#ctor(System.Collections.Immutable.SortedInt32KeyNode{System.Collections.Immutable.ImmutableHashSet{`0}.HashBucket},System.Collections.Generic.IEqualityComparer{`0},System.Int32)">
5370 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableHashSet`1.MutationInput"/> struct.
5372 <param name="root">The root.</param>
5373 <param name="equalityComparer">The equality comparer.</param>
5374 <param name="count">The count.</param>
5376 <member name="P:System.Collections.Immutable.ImmutableHashSet`1.MutationInput.Root">
5378 Gets the root of the data structure for the collection.
5381 <member name="P:System.Collections.Immutable.ImmutableHashSet`1.MutationInput.EqualityComparer">
5383 Gets the equality comparer.
5386 <member name="P:System.Collections.Immutable.ImmutableHashSet`1.MutationInput.Count">
5388 Gets the current number of elements in the collection.
5391 <member name="T:System.Collections.Immutable.ImmutableHashSet`1.CountType">
5393 Interpretations for a <see cref="P:System.Collections.Immutable.ImmutableHashSet`1.MutationResult.Count"/> member.
5396 <member name="F:System.Collections.Immutable.ImmutableHashSet`1.CountType.Adjustment">
5398 The <see cref="P:System.Collections.Immutable.ImmutableHashSet`1.MutationResult.Count"/> member describes an adjustment to the previous count of the collection.
5401 <member name="F:System.Collections.Immutable.ImmutableHashSet`1.CountType.FinalValue">
5403 The <see cref="P:System.Collections.Immutable.ImmutableHashSet`1.MutationResult.Count"/> member describes the actual count of the collection.
5406 <member name="T:System.Collections.Immutable.ImmutableHashSet`1.MutationResult">
5408 Describes the result of a mutation on the immutable data structure.
5411 <member name="F:System.Collections.Immutable.ImmutableHashSet`1.MutationResult._root">
5413 The root node of the data structure after the mutation.
5416 <member name="F:System.Collections.Immutable.ImmutableHashSet`1.MutationResult._count">
5418 Either the number of elements added or removed from the collection as a result of the operation (a negative number represents removed elements),
5419 or the total number of elements in the collection after the mutation. The appropriate interpretation of this value is indicated by the
5420 <see cref="F:System.Collections.Immutable.ImmutableHashSet`1.MutationResult._countType"/> field.
5423 <member name="F:System.Collections.Immutable.ImmutableHashSet`1.MutationResult._countType">
5425 Whether to consider the <see cref="F:System.Collections.Immutable.ImmutableHashSet`1.MutationResult._count"/> field to be a count adjustment or total count.
5428 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.MutationResult.#ctor(System.Collections.Immutable.SortedInt32KeyNode{System.Collections.Immutable.ImmutableHashSet{`0}.HashBucket},System.Int32,System.Collections.Immutable.ImmutableHashSet{`0}.CountType)">
5430 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableHashSet`1.MutationResult"/> struct.
5432 <param name="root">The root node of the result.</param>
5433 <param name="count">The total element count or a count adjustment.</param>
5434 <param name="countType">The appropriate interpretation for the <paramref name="count"/> parameter.</param>
5436 <member name="P:System.Collections.Immutable.ImmutableHashSet`1.MutationResult.Root">
5438 Gets the root node of the data structure after the mutation.
5441 <member name="P:System.Collections.Immutable.ImmutableHashSet`1.MutationResult.Count">
5443 Gets either the number of elements added or removed from the collection as a result of the operation (a negative number represents removed elements),
5444 or the total number of elements in the collection after the mutation. The appropriate interpretation of this value is indicated by the
5445 <see cref="P:System.Collections.Immutable.ImmutableHashSet`1.MutationResult.CountType"/> property.
5448 <member name="P:System.Collections.Immutable.ImmutableHashSet`1.MutationResult.CountType">
5450 Gets the appropriate interpretation for the <see cref="P:System.Collections.Immutable.ImmutableHashSet`1.MutationResult.Count"/> property; whether to be a count adjustment or total count.
5453 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.MutationResult.Finalize(System.Collections.Immutable.ImmutableHashSet{`0})">
5455 Returns an immutable hash set that captures the result of this mutation.
5457 <param name="priorSet">The prior version of the set. Used to capture the equality comparer and previous count, when applicable.</param>
5458 <returns>The new collection.</returns>
5460 <member name="T:System.Collections.Immutable.ImmutableHashSet`1.NodeEnumerable">
5462 Enumerates over a sorted dictionary used for hash buckets.
5465 <member name="F:System.Collections.Immutable.ImmutableHashSet`1.NodeEnumerable._root">
5467 The root of the sorted dictionary to enumerate.
5470 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.NodeEnumerable.#ctor(System.Collections.Immutable.SortedInt32KeyNode{System.Collections.Immutable.ImmutableHashSet{`0}.HashBucket})">
5472 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableHashSet`1.NodeEnumerable"/> struct.
5474 <param name="root">The root.</param>
5476 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.NodeEnumerable.GetEnumerator">
5478 Returns an enumerator that iterates through the collection.
5481 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
5484 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.NodeEnumerable.System#Collections#Generic#IEnumerable{T}#GetEnumerator">
5486 Returns an enumerator that iterates through the collection.
5489 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
5492 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.NodeEnumerable.System#Collections#IEnumerable#GetEnumerator">
5494 Returns an enumerator that iterates through a collection.
5497 An <see cref="T:System.Collections.IEnumerator"/> object that can be used to iterate through the collection.
5500 <member name="F:System.Collections.Immutable.ImmutableHashSet`1.Empty">
5502 An empty immutable hash set with the default comparer for <typeparamref name="T"/>.
5505 <member name="F:System.Collections.Immutable.ImmutableHashSet`1.s_FreezeBucketAction">
5507 The singleton delegate that freezes the contents of hash buckets when the root of the data structure is frozen.
5510 <member name="F:System.Collections.Immutable.ImmutableHashSet`1._equalityComparer">
5512 The equality comparer used to hash the elements in the collection.
5515 <member name="F:System.Collections.Immutable.ImmutableHashSet`1._count">
5517 The number of elements in this collection.
5520 <member name="F:System.Collections.Immutable.ImmutableHashSet`1._root">
5522 The sorted dictionary that this hash set wraps. The key is the hash code and the value is the bucket of all items that hashed to it.
5525 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.#ctor(System.Collections.Generic.IEqualityComparer{`0})">
5527 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableHashSet`1"/> class.
5529 <param name="equalityComparer">The equality comparer.</param>
5531 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.#ctor(System.Collections.Immutable.SortedInt32KeyNode{System.Collections.Immutable.ImmutableHashSet{`0}.HashBucket},System.Collections.Generic.IEqualityComparer{`0},System.Int32)">
5533 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableHashSet`1"/> class.
5535 <param name="root">The sorted set that this set wraps.</param>
5536 <param name="equalityComparer">The equality comparer used by this instance.</param>
5537 <param name="count">The number of elements in this collection.</param>
5539 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Clear">
5541 See the <see cref="T:System.Collections.Immutable.IImmutableSet`1"/> interface.
5544 <member name="P:System.Collections.Immutable.ImmutableHashSet`1.Count">
5546 See the <see cref="T:System.Collections.Immutable.IImmutableSet`1"/> interface.
5549 <member name="P:System.Collections.Immutable.ImmutableHashSet`1.IsEmpty">
5551 See the <see cref="T:System.Collections.Immutable.IImmutableSet`1"/> interface.
5554 <member name="P:System.Collections.Immutable.ImmutableHashSet`1.KeyComparer">
5556 See the <see cref="T:System.Collections.Immutable.IImmutableSet`1"/> interface.
5559 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.System#Collections#Immutable#IImmutableSet{T}#Clear">
5561 See the <see cref="T:System.Collections.Immutable.IImmutableSet`1"/> interface.
5564 <member name="P:System.Collections.Immutable.ImmutableHashSet`1.System#Collections#ICollection#SyncRoot">
5566 See <see cref="T:System.Collections.ICollection"/>.
5569 <member name="P:System.Collections.Immutable.ImmutableHashSet`1.System#Collections#ICollection#IsSynchronized">
5571 See the <see cref="T:System.Collections.ICollection"/> interface.
5574 <member name="P:System.Collections.Immutable.ImmutableHashSet`1.Root">
5576 Gets the root node (for testing purposes).
5579 <member name="P:System.Collections.Immutable.ImmutableHashSet`1.Origin">
5581 Gets a data structure that captures the current state of this map, as an input into a query or mutating function.
5584 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.ToBuilder">
5586 Creates a collection with the same contents as this collection that
5587 can be efficiently mutated across multiple operations using standard
5591 This is an O(1) operation and results in only a single (small) memory allocation.
5592 The mutable collection that is returned is *not* thread-safe.
5595 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Add(`0)">
5597 See the <see cref="T:System.Collections.Immutable.IImmutableSet`1"/> interface.
5600 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Remove(`0)">
5602 See the <see cref="T:System.Collections.Immutable.IImmutableSet`1"/> interface.
5605 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.TryGetValue(`0,`0@)">
5607 Searches the set for a given value and returns the equal value it finds, if any.
5609 <param name="equalValue">The value to search for.</param>
5610 <param name="actualValue">The value from the set that the search found, or the original value if the search yielded no match.</param>
5611 <returns>A value indicating whether the search was successful.</returns>
5613 This can be useful when you want to reuse a previously stored reference instead of
5614 a newly constructed one (so that more sharing of references can occur) or to look up
5615 a value that has more complete data than the value you currently have, although their
5616 comparer functions indicate they are equal.
5619 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Union(System.Collections.Generic.IEnumerable{`0})">
5621 See the <see cref="T:System.Collections.Immutable.IImmutableSet`1"/> interface.
5624 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Intersect(System.Collections.Generic.IEnumerable{`0})">
5626 See the <see cref="T:System.Collections.Immutable.IImmutableSet`1"/> interface.
5629 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Except(System.Collections.Generic.IEnumerable{`0})">
5631 See the <see cref="T:System.Collections.Immutable.IImmutableSet`1"/> interface.
5634 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.SymmetricExcept(System.Collections.Generic.IEnumerable{`0})">
5636 Produces a set that contains elements either in this set or a given sequence, but not both.
5638 <param name="other">The other sequence of items.</param>
5639 <returns>The new set.</returns>
5641 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.SetEquals(System.Collections.Generic.IEnumerable{`0})">
5643 Checks whether a given sequence of items entirely describe the contents of this set.
5645 <param name="other">The sequence of items to check against this set.</param>
5646 <returns>A value indicating whether the sets are equal.</returns>
5648 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.IsProperSubsetOf(System.Collections.Generic.IEnumerable{`0})">
5650 Determines whether the current set is a property (strict) subset of a specified collection.
5652 <param name="other">The collection to compare to the current set.</param>
5653 <returns>true if the current set is a correct subset of <paramref name="other"/>; otherwise, false.</returns>
5655 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.IsProperSupersetOf(System.Collections.Generic.IEnumerable{`0})">
5657 Determines whether the current set is a correct superset of a specified collection.
5659 <param name="other">The collection to compare to the current set.</param>
5660 <returns>true if the current set is a correct superset of <paramref name="other"/>; otherwise, false.</returns>
5662 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.IsSubsetOf(System.Collections.Generic.IEnumerable{`0})">
5664 Determines whether a set is a subset of a specified collection.
5666 <param name="other">The collection to compare to the current set.</param>
5667 <returns>true if the current set is a subset of <paramref name="other"/>; otherwise, false.</returns>
5669 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.IsSupersetOf(System.Collections.Generic.IEnumerable{`0})">
5671 Determines whether the current set is a superset of a specified collection.
5673 <param name="other">The collection to compare to the current set.</param>
5674 <returns>true if the current set is a superset of <paramref name="other"/>; otherwise, false.</returns>
5676 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Overlaps(System.Collections.Generic.IEnumerable{`0})">
5678 Determines whether the current set overlaps with the specified collection.
5680 <param name="other">The collection to compare to the current set.</param>
5681 <returns>true if the current set and <paramref name="other"/> share at least one common element; otherwise, false.</returns>
5683 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.System#Collections#Immutable#IImmutableSet{T}#Add(`0)">
5685 See the <see cref="T:System.Collections.Immutable.IImmutableSet`1"/> interface.
5688 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.System#Collections#Immutable#IImmutableSet{T}#Remove(`0)">
5690 See the <see cref="T:System.Collections.Immutable.IImmutableSet`1"/> interface.
5693 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.System#Collections#Immutable#IImmutableSet{T}#Union(System.Collections.Generic.IEnumerable{`0})">
5695 See the <see cref="T:System.Collections.Immutable.IImmutableSet`1"/> interface.
5698 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.System#Collections#Immutable#IImmutableSet{T}#Intersect(System.Collections.Generic.IEnumerable{`0})">
5700 See the <see cref="T:System.Collections.Immutable.IImmutableSet`1"/> interface.
5703 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.System#Collections#Immutable#IImmutableSet{T}#Except(System.Collections.Generic.IEnumerable{`0})">
5705 See the <see cref="T:System.Collections.Immutable.IImmutableSet`1"/> interface.
5708 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.System#Collections#Immutable#IImmutableSet{T}#SymmetricExcept(System.Collections.Generic.IEnumerable{`0})">
5710 Produces a set that contains elements either in this set or a given sequence, but not both.
5712 <param name="other">The other sequence of items.</param>
5713 <returns>The new set.</returns>
5715 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Contains(`0)">
5717 See the <see cref="T:System.Collections.Immutable.IImmutableSet`1"/> interface.
5720 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.WithComparer(System.Collections.Generic.IEqualityComparer{`0})">
5722 See the <see cref="T:System.Collections.Immutable.IImmutableSet`1"/> interface.
5725 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.System#Collections#Generic#ISet{T}#Add(`0)">
5727 See <see cref="T:System.Collections.Generic.ISet`1"/>
5730 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.System#Collections#Generic#ISet{T}#ExceptWith(System.Collections.Generic.IEnumerable{`0})">
5732 See <see cref="T:System.Collections.Generic.ISet`1"/>
5735 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.System#Collections#Generic#ISet{T}#IntersectWith(System.Collections.Generic.IEnumerable{`0})">
5737 See <see cref="T:System.Collections.Generic.ISet`1"/>
5740 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.System#Collections#Generic#ISet{T}#SymmetricExceptWith(System.Collections.Generic.IEnumerable{`0})">
5742 See <see cref="T:System.Collections.Generic.ISet`1"/>
5745 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.System#Collections#Generic#ISet{T}#UnionWith(System.Collections.Generic.IEnumerable{`0})">
5747 See <see cref="T:System.Collections.Generic.ISet`1"/>
5750 <member name="P:System.Collections.Immutable.ImmutableHashSet`1.System#Collections#Generic#ICollection{T}#IsReadOnly">
5752 See the <see cref="T:System.Collections.Generic.ICollection`1"/> interface.
5755 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.System#Collections#Generic#ICollection{T}#CopyTo(`0[],System.Int32)">
5757 See the <see cref="T:System.Collections.Generic.ICollection`1"/> interface.
5760 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.System#Collections#Generic#ICollection{T}#Add(`0)">
5762 See the <see cref="T:System.Collections.Generic.IList`1"/> interface.
5765 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.System#Collections#Generic#ICollection{T}#Clear">
5767 See the <see cref="T:System.Collections.Generic.ICollection`1"/> interface.
5770 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.System#Collections#Generic#ICollection{T}#Remove(`0)">
5772 See the <see cref="T:System.Collections.Generic.IList`1"/> interface.
5775 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.System#Collections#ICollection#CopyTo(System.Array,System.Int32)">
5777 Copies the elements of the <see cref="T:System.Collections.ICollection"/> to an <see cref="T:System.Array"/>, starting at a particular <see cref="T:System.Array"/> index.
5779 <param name="array">The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements copied from <see cref="T:System.Collections.ICollection"/>. The <see cref="T:System.Array"/> must have zero-based indexing.</param>
5780 <param name="arrayIndex">The zero-based index in <paramref name="array"/> at which copying begins.</param>
5782 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.GetEnumerator">
5784 Returns an enumerator that iterates through the collection.
5787 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
5790 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.System#Collections#Generic#IEnumerable{T}#GetEnumerator">
5792 Returns an enumerator that iterates through the collection.
5795 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.System#Collections#IEnumerable#GetEnumerator">
5797 Returns an enumerator that iterates through a collection.
5800 An <see cref="T:System.Collections.IEnumerator"/> object that can be used to iterate through the collection.
5803 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.IsSupersetOf(System.Collections.Generic.IEnumerable{`0},System.Collections.Immutable.ImmutableHashSet{`0}.MutationInput)">
5805 Performs the set operation on a given data structure.
5808 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Add(`0,System.Collections.Immutable.ImmutableHashSet{`0}.MutationInput)">
5810 Performs the set operation on a given data structure.
5813 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Remove(`0,System.Collections.Immutable.ImmutableHashSet{`0}.MutationInput)">
5815 Performs the set operation on a given data structure.
5818 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Contains(`0,System.Collections.Immutable.ImmutableHashSet{`0}.MutationInput)">
5820 Performs the set operation on a given data structure.
5823 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Union(System.Collections.Generic.IEnumerable{`0},System.Collections.Immutable.ImmutableHashSet{`0}.MutationInput)">
5825 Performs the set operation on a given data structure.
5828 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Overlaps(System.Collections.Generic.IEnumerable{`0},System.Collections.Immutable.ImmutableHashSet{`0}.MutationInput)">
5830 Performs the set operation on a given data structure.
5833 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.SetEquals(System.Collections.Generic.IEnumerable{`0},System.Collections.Immutable.ImmutableHashSet{`0}.MutationInput)">
5835 Performs the set operation on a given data structure.
5838 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.UpdateRoot(System.Collections.Immutable.SortedInt32KeyNode{System.Collections.Immutable.ImmutableHashSet{`0}.HashBucket},System.Int32,System.Collections.Immutable.ImmutableHashSet{`0}.HashBucket)">
5840 Performs the set operation on a given data structure.
5843 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Intersect(System.Collections.Generic.IEnumerable{`0},System.Collections.Immutable.ImmutableHashSet{`0}.MutationInput)">
5845 Performs the set operation on a given data structure.
5848 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Except(System.Collections.Generic.IEnumerable{`0},System.Collections.Generic.IEqualityComparer{`0},System.Collections.Immutable.SortedInt32KeyNode{System.Collections.Immutable.ImmutableHashSet{`0}.HashBucket})">
5850 Performs the set operation on a given data structure.
5853 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.SymmetricExcept(System.Collections.Generic.IEnumerable{`0},System.Collections.Immutable.ImmutableHashSet{`0}.MutationInput)">
5855 Performs the set operation on a given data structure.
5858 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.IsProperSubsetOf(System.Collections.Generic.IEnumerable{`0},System.Collections.Immutable.ImmutableHashSet{`0}.MutationInput)">
5860 Performs the set operation on a given data structure.
5863 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.IsProperSupersetOf(System.Collections.Generic.IEnumerable{`0},System.Collections.Immutable.ImmutableHashSet{`0}.MutationInput)">
5865 Performs the set operation on a given data structure.
5868 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.IsSubsetOf(System.Collections.Generic.IEnumerable{`0},System.Collections.Immutable.ImmutableHashSet{`0}.MutationInput)">
5870 Performs the set operation on a given data structure.
5873 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Wrap(System.Collections.Immutable.SortedInt32KeyNode{System.Collections.Immutable.ImmutableHashSet{`0}.HashBucket},System.Collections.Generic.IEqualityComparer{`0},System.Int32)">
5875 Wraps the specified data structure with an immutable collection wrapper.
5877 <param name="root">The root of the data structure.</param>
5878 <param name="equalityComparer">The equality comparer.</param>
5879 <param name="count">The number of elements in the data structure.</param>
5880 <returns>The immutable collection.</returns>
5882 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Wrap(System.Collections.Immutable.SortedInt32KeyNode{System.Collections.Immutable.ImmutableHashSet{`0}.HashBucket},System.Int32)">
5884 Wraps the specified data structure with an immutable collection wrapper.
5886 <param name="root">The root of the data structure.</param>
5887 <param name="adjustedCountIfDifferentRoot">The adjusted count if the root has changed.</param>
5888 <returns>The immutable collection.</returns>
5890 <member name="M:System.Collections.Immutable.ImmutableHashSet`1.Union(System.Collections.Generic.IEnumerable{`0},System.Boolean)">
5892 Bulk adds entries to the set.
5894 <param name="items">The entries to add.</param>
5895 <param name="avoidWithComparer"><c>true</c> when being called from <see cref="M:System.Collections.Immutable.ImmutableHashSet`1.WithComparer(System.Collections.Generic.IEqualityComparer{`0})"/> to avoid <see cref="T:System.StackOverflowException"/>.</param>
5897 <member name="T:System.Collections.Immutable.ImmutableHashSetDebuggerProxy`1">
5899 A simple view of the immutable collection that the debugger can show to the developer.
5902 <member name="F:System.Collections.Immutable.ImmutableHashSetDebuggerProxy`1._set">
5904 The collection to be enumerated.
5907 <member name="F:System.Collections.Immutable.ImmutableHashSetDebuggerProxy`1._contents">
5909 The simple view of the collection.
5912 <member name="M:System.Collections.Immutable.ImmutableHashSetDebuggerProxy`1.#ctor(System.Collections.Immutable.ImmutableHashSet{`0})">
5914 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableHashSetDebuggerProxy`1"/> class.
5916 <param name="set">The collection to display in the debugger</param>
5918 <member name="P:System.Collections.Immutable.ImmutableHashSetDebuggerProxy`1.Contents">
5920 Gets a simple debugger-viewable collection.
5923 <member name="T:System.Collections.Immutable.ImmutableInterlocked">
5925 Contains interlocked exchange mechanisms for immutable collections.
5928 <member name="M:System.Collections.Immutable.ImmutableInterlocked.Update``1(``0@,System.Func{``0,``0})">
5930 Mutates a value in-place with optimistic locking transaction semantics
5931 via a specified transformation function.
5932 The transformation is retried as many times as necessary to win the optimistic locking race.
5934 <typeparam name="T">The type of data.</typeparam>
5935 <param name="location">
5936 The variable or field to be changed, which may be accessed by multiple threads.
5938 <param name="transformer">
5939 A function that mutates the value. This function should be side-effect free,
5940 as it may run multiple times when races occur with other threads.</param>
5942 <c>true</c> if the location's value is changed by applying the result of the
5943 <paramref name="transformer"/> function;
5944 <c>false</c> if the location's value remained the same because the last
5945 invocation of <paramref name="transformer"/> returned the existing value.
5948 <member name="M:System.Collections.Immutable.ImmutableInterlocked.Update``2(``0@,System.Func{``0,``1,``0},``1)">
5950 Mutates a value in-place with optimistic locking transaction semantics
5951 via a specified transformation function.
5952 The transformation is retried as many times as necessary to win the optimistic locking race.
5954 <typeparam name="T">The type of data.</typeparam>
5955 <typeparam name="TArg">The type of argument passed to the <paramref name="transformer"/>.</typeparam>
5956 <param name="location">
5957 The variable or field to be changed, which may be accessed by multiple threads.
5959 <param name="transformer">
5960 A function that mutates the value. This function should be side-effect free,
5961 as it may run multiple times when races occur with other threads.</param>
5962 <param name="transformerArgument">The argument to pass to <paramref name="transformer"/>.</param>
5964 <c>true</c> if the location's value is changed by applying the result of the
5965 <paramref name="transformer"/> function;
5966 <c>false</c> if the location's value remained the same because the last
5967 invocation of <paramref name="transformer"/> returned the existing value.
5970 <member name="M:System.Collections.Immutable.ImmutableInterlocked.InterlockedExchange``1(System.Collections.Immutable.ImmutableArray{``0}@,System.Collections.Immutable.ImmutableArray{``0})">
5972 Assigns a field or variable containing an immutable array to the specified value and returns the previous value.
5974 <typeparam name="T">The type of element stored by the array.</typeparam>
5975 <param name="location">The field or local variable to change.</param>
5976 <param name="value">The new value to assign.</param>
5977 <returns>The prior value at the specified <paramref name="location"/>.</returns>
5979 <member name="M:System.Collections.Immutable.ImmutableInterlocked.InterlockedCompareExchange``1(System.Collections.Immutable.ImmutableArray{``0}@,System.Collections.Immutable.ImmutableArray{``0},System.Collections.Immutable.ImmutableArray{``0})">
5981 Assigns a field or variable containing an immutable array to the specified value
5982 if it is currently equal to another specified value. Returns the previous value.
5984 <typeparam name="T">The type of element stored by the array.</typeparam>
5985 <param name="location">The field or local variable to change.</param>
5986 <param name="value">The new value to assign.</param>
5987 <param name="comparand">The value to check equality for before assigning.</param>
5988 <returns>The prior value at the specified <paramref name="location"/>.</returns>
5990 <member name="M:System.Collections.Immutable.ImmutableInterlocked.InterlockedInitialize``1(System.Collections.Immutable.ImmutableArray{``0}@,System.Collections.Immutable.ImmutableArray{``0})">
5992 Assigns a field or variable containing an immutable array to the specified value
5993 if it is has not yet been initialized.
5995 <typeparam name="T">The type of element stored by the array.</typeparam>
5996 <param name="location">The field or local variable to change.</param>
5997 <param name="value">The new value to assign.</param>
5998 <returns>True if the field was assigned the specified value; <c>false</c> if it was previously initialized.</returns>
6000 <member name="M:System.Collections.Immutable.ImmutableInterlocked.GetOrAdd``3(System.Collections.Immutable.ImmutableDictionary{``0,``1}@,``0,System.Func{``0,``2,``1},``2)">
6002 Obtains the value for the specified key from a dictionary, or adds a new value to the dictionary where the key did not previously exist.
6004 <typeparam name="TKey">The type of key stored by the dictionary.</typeparam>
6005 <typeparam name="TValue">The type of value stored by the dictionary.</typeparam>
6006 <typeparam name="TArg">The type of argument supplied to the value factory.</typeparam>
6007 <param name="location">The variable or field to atomically update if the specified <paramref name="key"/> is not in the dictionary.</param>
6008 <param name="key">The key for the value to retrieve or add.</param>
6009 <param name="valueFactory">The function to execute to obtain the value to insert into the dictionary if the key is not found.</param>
6010 <param name="factoryArgument">The argument to pass to the value factory.</param>
6011 <returns>The value obtained from the dictionary or <paramref name="valueFactory"/> if it was not present.</returns>
6013 <member name="M:System.Collections.Immutable.ImmutableInterlocked.GetOrAdd``2(System.Collections.Immutable.ImmutableDictionary{``0,``1}@,``0,System.Func{``0,``1})">
6015 Obtains the value for the specified key from a dictionary, or adds a new value to the dictionary where the key did not previously exist.
6017 <typeparam name="TKey">The type of key stored by the dictionary.</typeparam>
6018 <typeparam name="TValue">The type of value stored by the dictionary.</typeparam>
6019 <param name="location">The variable or field to atomically update if the specified <paramref name="key"/> is not in the dictionary.</param>
6020 <param name="key">The key for the value to retrieve or add.</param>
6021 <param name="valueFactory">
6022 The function to execute to obtain the value to insert into the dictionary if the key is not found.
6023 This delegate will not be invoked more than once.
6025 <returns>The value obtained from the dictionary or <paramref name="valueFactory"/> if it was not present.</returns>
6027 <member name="M:System.Collections.Immutable.ImmutableInterlocked.GetOrAdd``2(System.Collections.Immutable.ImmutableDictionary{``0,``1}@,``0,``1)">
6029 Obtains the value for the specified key from a dictionary, or adds a new value to the dictionary where the key did not previously exist.
6031 <typeparam name="TKey">The type of key stored by the dictionary.</typeparam>
6032 <typeparam name="TValue">The type of value stored by the dictionary.</typeparam>
6033 <param name="location">The variable or field to atomically update if the specified <paramref name="key"/> is not in the dictionary.</param>
6034 <param name="key">The key for the value to retrieve or add.</param>
6035 <param name="value">The value to add to the dictionary if one is not already present.</param>
6036 <returns>The value obtained from the dictionary or <paramref name="value"/> if it was not present.</returns>
6038 <member name="M:System.Collections.Immutable.ImmutableInterlocked.AddOrUpdate``2(System.Collections.Immutable.ImmutableDictionary{``0,``1}@,``0,System.Func{``0,``1},System.Func{``0,``1,``1})">
6040 Obtains the value from a dictionary after having added it or updated an existing entry.
6042 <typeparam name="TKey">The type of key stored by the dictionary.</typeparam>
6043 <typeparam name="TValue">The type of value stored by the dictionary.</typeparam>
6044 <param name="location">The variable or field to atomically update if the specified <paramref name="key"/> is not in the dictionary.</param>
6045 <param name="key">The key for the value to add or update.</param>
6046 <param name="addValueFactory">The function that receives the key and returns a new value to add to the dictionary when no value previously exists.</param>
6047 <param name="updateValueFactory">The function that receives the key and prior value and returns the new value with which to update the dictionary.</param>
6048 <returns>The added or updated value.</returns>
6050 <member name="M:System.Collections.Immutable.ImmutableInterlocked.AddOrUpdate``2(System.Collections.Immutable.ImmutableDictionary{``0,``1}@,``0,``1,System.Func{``0,``1,``1})">
6052 Obtains the value from a dictionary after having added it or updated an existing entry.
6054 <typeparam name="TKey">The type of key stored by the dictionary.</typeparam>
6055 <typeparam name="TValue">The type of value stored by the dictionary.</typeparam>
6056 <param name="location">The variable or field to atomically update if the specified <paramref name="key"/> is not in the dictionary.</param>
6057 <param name="key">The key for the value to add or update.</param>
6058 <param name="addValue">The value to use if no previous value exists.</param>
6059 <param name="updateValueFactory">The function that receives the key and prior value and returns the new value with which to update the dictionary.</param>
6060 <returns>The added or updated value.</returns>
6062 <member name="M:System.Collections.Immutable.ImmutableInterlocked.TryAdd``2(System.Collections.Immutable.ImmutableDictionary{``0,``1}@,``0,``1)">
6064 Adds the specified key and value to the dictionary if no colliding key already exists in the dictionary.
6066 <typeparam name="TKey">The type of key stored by the dictionary.</typeparam>
6067 <typeparam name="TValue">The type of value stored by the dictionary.</typeparam>
6068 <param name="location">The variable or field to atomically update if the specified <paramref name="key"/> is not in the dictionary.</param>
6069 <param name="key">The key to add, if is not already defined in the dictionary.</param>
6070 <param name="value">The value to add.</param>
6071 <returns><c>true</c> if the key was not previously set in the dictionary and the value was set; <c>false</c> otherwise.</returns>
6073 <member name="M:System.Collections.Immutable.ImmutableInterlocked.TryUpdate``2(System.Collections.Immutable.ImmutableDictionary{``0,``1}@,``0,``1,``1)">
6075 Sets the specified key to the given value if the key already is set to a specific value.
6077 <typeparam name="TKey">The type of key stored by the dictionary.</typeparam>
6078 <typeparam name="TValue">The type of value stored by the dictionary.</typeparam>
6079 <param name="location">The variable or field to atomically update if the specified <paramref name="key"/> is not in the dictionary.</param>
6080 <param name="key">The key to update.</param>
6081 <param name="newValue">The new value to set.</param>
6082 <param name="comparisonValue">The value that must already be set in the dictionary in order for the update to succeed.</param>
6083 <returns><c>true</c> if the key and comparison value were present in the dictionary and the update was made; <c>false</c> otherwise.</returns>
6085 <member name="M:System.Collections.Immutable.ImmutableInterlocked.TryRemove``2(System.Collections.Immutable.ImmutableDictionary{``0,``1}@,``0,``1@)">
6087 Removes an entry from the dictionary with the specified key if it is defined and returns its value.
6089 <typeparam name="TKey">The type of key stored by the dictionary.</typeparam>
6090 <typeparam name="TValue">The type of value stored by the dictionary.</typeparam>
6091 <param name="location">The variable or field to atomically update if the specified <paramref name="key"/> is not in the dictionary.</param>
6092 <param name="key">The key to remove.</param>
6093 <param name="value">Receives the value from the pre-existing entry, if one exists.</param>
6094 <returns><c>true</c> if the key was found and removed; <c>false</c> otherwise.</returns>
6096 <member name="M:System.Collections.Immutable.ImmutableInterlocked.TryPop``1(System.Collections.Immutable.ImmutableStack{``0}@,``0@)">
6098 Pushes a new element onto a stack.
6100 <typeparam name="T">The type of elements stored in the stack.</typeparam>
6101 <param name="location">The variable or field to atomically update.</param>
6102 <param name="value">The value popped from the stack, if it was non-empty.</param>
6103 <returns><c>true</c> if an element was removed from the stack; <c>false</c> otherwise.</returns>
6105 <member name="M:System.Collections.Immutable.ImmutableInterlocked.Push``1(System.Collections.Immutable.ImmutableStack{``0}@,``0)">
6107 Pushes a new element onto a stack.
6109 <typeparam name="T">The type of elements stored in the stack.</typeparam>
6110 <param name="location">The variable or field to atomically update.</param>
6111 <param name="value">The value to push.</param>
6113 <member name="M:System.Collections.Immutable.ImmutableInterlocked.TryDequeue``1(System.Collections.Immutable.ImmutableQueue{``0}@,``0@)">
6115 Atomically removes the element at the head of a queue and returns it to the caller, if the queue is not empty.
6117 <typeparam name="T">The type of element stored in the queue.</typeparam>
6118 <param name="location">The variable or field to atomically update.</param>
6119 <param name="value">Receives the value from the head of the queue, if the queue is non-empty.</param>
6120 <returns><c>true</c> if the queue was not empty and the head element was removed; <c>false</c> otherwise.</returns>
6122 <member name="M:System.Collections.Immutable.ImmutableInterlocked.Enqueue``1(System.Collections.Immutable.ImmutableQueue{``0}@,``0)">
6124 Atomically enqueues an element to the tail of a queue.
6126 <typeparam name="T">The type of element stored in the queue.</typeparam>
6127 <param name="location">The variable or field to atomically update.</param>
6128 <param name="value">The value to enqueue.</param>
6130 <member name="T:System.Collections.Immutable.ImmutableList">
6132 A set of initialization methods for instances of <see cref="T:System.Collections.Immutable.ImmutableList`1"/>.
6135 <member name="M:System.Collections.Immutable.ImmutableList.Create``1">
6137 Returns an empty collection.
6139 <typeparam name="T">The type of items stored by the collection.</typeparam>
6140 <returns>The immutable collection.</returns>
6142 <member name="M:System.Collections.Immutable.ImmutableList.Create``1(``0)">
6144 Creates a new immutable collection prefilled with the specified item.
6146 <typeparam name="T">The type of items stored by the collection.</typeparam>
6147 <param name="item">The item to prepopulate.</param>
6148 <returns>The new immutable collection.</returns>
6150 <member name="M:System.Collections.Immutable.ImmutableList.CreateRange``1(System.Collections.Generic.IEnumerable{``0})">
6152 Creates a new immutable collection prefilled with the specified items.
6154 <typeparam name="T">The type of items stored by the collection.</typeparam>
6155 <param name="items">The items to prepopulate.</param>
6156 <returns>The new immutable collection.</returns>
6158 <member name="M:System.Collections.Immutable.ImmutableList.Create``1(``0[])">
6160 Creates a new immutable collection prefilled with the specified items.
6162 <typeparam name="T">The type of items stored by the collection.</typeparam>
6163 <param name="items">The items to prepopulate.</param>
6164 <returns>The new immutable collection.</returns>
6166 <member name="M:System.Collections.Immutable.ImmutableList.CreateBuilder``1">
6168 Creates a new immutable list builder.
6170 <typeparam name="T">The type of items stored by the collection.</typeparam>
6171 <returns>The immutable collection builder.</returns>
6173 <member name="M:System.Collections.Immutable.ImmutableList.ToImmutableList``1(System.Collections.Generic.IEnumerable{``0})">
6175 Enumerates a sequence exactly once and produces an immutable list of its contents.
6177 <typeparam name="TSource">The type of element in the sequence.</typeparam>
6178 <param name="source">The sequence to enumerate.</param>
6179 <returns>An immutable list.</returns>
6181 <member name="M:System.Collections.Immutable.ImmutableList.Replace``1(System.Collections.Immutable.IImmutableList{``0},``0,``0)">
6183 Replaces the first equal element in the list with the specified element.
6185 <param name="list">The list to search.</param>
6186 <param name="oldValue">The element to replace.</param>
6187 <param name="newValue">The element to replace the old element with.</param>
6188 <returns>The new list -- even if the value being replaced is equal to the new value for that position.</returns>
6189 <exception cref="T:System.ArgumentException">Thrown when the old value does not exist in the list.</exception>
6191 <member name="M:System.Collections.Immutable.ImmutableList.Remove``1(System.Collections.Immutable.IImmutableList{``0},``0)">
6193 Removes the specified value from this list.
6195 <param name="list">The list to search.</param>
6196 <param name="value">The value to remove.</param>
6197 <returns>A new list with the element removed, or this list if the element is not in this list.</returns>
6199 <member name="M:System.Collections.Immutable.ImmutableList.RemoveRange``1(System.Collections.Immutable.IImmutableList{``0},System.Collections.Generic.IEnumerable{``0})">
6201 Removes the specified values from this list.
6203 <param name="list">The list to search.</param>
6204 <param name="items">The items to remove if matches are found in this list.</param>
6206 A new list with the elements removed.
6209 <member name="M:System.Collections.Immutable.ImmutableList.IndexOf``1(System.Collections.Immutable.IImmutableList{``0},``0)">
6211 Searches for the specified object and returns the zero-based index of the
6212 first occurrence within the <see cref="T:System.Collections.Immutable.IImmutableList`1"/>.
6214 <param name="list">The list to search.</param>
6216 The object to locate in the <see cref="T:System.Collections.Immutable.IImmutableList`1"/>. The value
6217 can be null for reference types.
6220 The zero-based index of the first occurrence of item within the range of
6221 elements in the <see cref="T:System.Collections.Immutable.IImmutableList`1"/> that extends from index
6222 to the last element, if found; otherwise, -1.
6225 <member name="M:System.Collections.Immutable.ImmutableList.IndexOf``1(System.Collections.Immutable.IImmutableList{``0},``0,System.Collections.Generic.IEqualityComparer{``0})">
6227 Searches for the specified object and returns the zero-based index of the
6228 first occurrence within the <see cref="T:System.Collections.Immutable.IImmutableList`1"/>.
6230 <param name="list">The list to search.</param>
6232 The object to locate in the <see cref="T:System.Collections.Immutable.IImmutableList`1"/>. The value
6233 can be null for reference types.
6235 <param name="equalityComparer">The equality comparer to use in the search.</param>
6237 The zero-based index of the first occurrence of item within the range of
6238 elements in the <see cref="T:System.Collections.Immutable.IImmutableList`1"/> that extends from index
6239 to the last element, if found; otherwise, -1.
6242 <member name="M:System.Collections.Immutable.ImmutableList.IndexOf``1(System.Collections.Immutable.IImmutableList{``0},``0,System.Int32)">
6244 Searches for the specified object and returns the zero-based index of the
6245 first occurrence within the range of elements in the <see cref="T:System.Collections.Immutable.IImmutableList`1"/>
6246 that extends from the specified index to the last element.
6248 <param name="list">The list to search.</param>
6250 The object to locate in the <see cref="T:System.Collections.Immutable.IImmutableList`1"/>. The value
6251 can be null for reference types.
6253 <param name="startIndex">
6254 The zero-based starting index of the search. 0 (zero) is valid in an empty
6258 The zero-based index of the first occurrence of item within the range of
6259 elements in the <see cref="T:System.Collections.Immutable.IImmutableList`1"/> that extends from index
6260 to the last element, if found; otherwise, -1.
6263 <member name="M:System.Collections.Immutable.ImmutableList.IndexOf``1(System.Collections.Immutable.IImmutableList{``0},``0,System.Int32,System.Int32)">
6265 Searches for the specified object and returns the zero-based index of the
6266 first occurrence within the range of elements in the <see cref="T:System.Collections.Immutable.IImmutableList`1"/>
6267 that extends from the specified index to the last element.
6269 <param name="list">The list to search.</param>
6271 The object to locate in the <see cref="T:System.Collections.Immutable.IImmutableList`1"/>. The value
6272 can be null for reference types.
6274 <param name="startIndex">
6275 The zero-based starting index of the search. 0 (zero) is valid in an empty
6278 <param name="count">
6279 The number of elements in the section to search.
6282 The zero-based index of the first occurrence of item within the range of
6283 elements in the <see cref="T:System.Collections.Immutable.IImmutableList`1"/> that extends from index
6284 to the last element, if found; otherwise, -1.
6287 <member name="M:System.Collections.Immutable.ImmutableList.LastIndexOf``1(System.Collections.Immutable.IImmutableList{``0},``0)">
6289 Searches for the specified object and returns the zero-based index of the
6290 last occurrence within the entire <see cref="T:System.Collections.Immutable.IImmutableList`1"/>.
6292 <param name="list">The list to search.</param>
6294 The object to locate in the <see cref="T:System.Collections.Immutable.IImmutableList`1"/>. The value
6295 can be null for reference types.
6298 The zero-based index of the last occurrence of item within the entire the
6299 <see cref="T:System.Collections.Immutable.IImmutableList`1"/>, if found; otherwise, -1.
6302 <member name="M:System.Collections.Immutable.ImmutableList.LastIndexOf``1(System.Collections.Immutable.IImmutableList{``0},``0,System.Collections.Generic.IEqualityComparer{``0})">
6304 Searches for the specified object and returns the zero-based index of the
6305 last occurrence within the entire <see cref="T:System.Collections.Immutable.IImmutableList`1"/>.
6307 <param name="list">The list to search.</param>
6309 The object to locate in the <see cref="T:System.Collections.Immutable.IImmutableList`1"/>. The value
6310 can be null for reference types.
6312 <param name="equalityComparer">The equality comparer to use in the search.</param>
6314 The zero-based index of the last occurrence of item within the entire the
6315 <see cref="T:System.Collections.Immutable.IImmutableList`1"/>, if found; otherwise, -1.
6318 <member name="M:System.Collections.Immutable.ImmutableList.LastIndexOf``1(System.Collections.Immutable.IImmutableList{``0},``0,System.Int32)">
6320 Searches for the specified object and returns the zero-based index of the
6321 last occurrence within the range of elements in the <see cref="T:System.Collections.Immutable.IImmutableList`1"/>
6322 that extends from the first element to the specified index.
6324 <param name="list">The list to search.</param>
6326 The object to locate in the <see cref="T:System.Collections.Immutable.IImmutableList`1"/>. The value
6327 can be null for reference types.
6329 <param name="startIndex">
6330 The zero-based starting index of the backward search.
6333 The zero-based index of the last occurrence of item within the range of elements
6334 in the <see cref="T:System.Collections.Immutable.IImmutableList`1"/> that extends from the first element
6335 to index, if found; otherwise, -1.
6338 <member name="M:System.Collections.Immutable.ImmutableList.LastIndexOf``1(System.Collections.Immutable.IImmutableList{``0},``0,System.Int32,System.Int32)">
6340 Searches for the specified object and returns the zero-based index of the
6341 last occurrence within the range of elements in the <see cref="T:System.Collections.Immutable.IImmutableList`1"/>
6342 that extends from the first element to the specified index.
6344 <param name="list">The list to search.</param>
6346 The object to locate in the <see cref="T:System.Collections.Immutable.IImmutableList`1"/>. The value
6347 can be null for reference types.
6349 <param name="startIndex">
6350 The zero-based starting index of the backward search.
6352 <param name="count">
6353 The number of elements in the section to search.
6356 The zero-based index of the last occurrence of item within the range of elements
6357 in the <see cref="T:System.Collections.Immutable.IImmutableList`1"/> that extends from the first element
6358 to index, if found; otherwise, -1.
6361 <member name="T:System.Collections.Immutable.ImmutableList`1">
6363 Contains the inner Builder class.
6366 An immutable list implementation.
6368 <typeparam name="T">The type of elements in the set.</typeparam>
6370 <member name="T:System.Collections.Immutable.ImmutableList`1.Builder">
6372 A list that mutates with little or no memory allocations,
6373 can produce and/or build on immutable list instances very efficiently.
6377 While <see cref="M:System.Collections.Immutable.ImmutableList`1.AddRange(System.Collections.Generic.IEnumerable{`0})"/> and other bulk change methods
6378 already provide fast bulk change operations on the collection, this class allows
6379 multiple combinations of changes to be made to a set with equal efficiency.
6382 Instance members of this class are <em>not</em> thread-safe.
6386 <member name="F:System.Collections.Immutable.ImmutableList`1.Builder._root">
6388 The binary tree used to store the contents of the list. Contents are typically not entirely frozen.
6391 <member name="F:System.Collections.Immutable.ImmutableList`1.Builder._immutable">
6393 Caches an immutable instance that represents the current state of the collection.
6395 <value>Null if no immutable view has been created for the current version.</value>
6397 <member name="F:System.Collections.Immutable.ImmutableList`1.Builder._version">
6399 A number that increments every time the builder changes its contents.
6402 <member name="F:System.Collections.Immutable.ImmutableList`1.Builder._syncRoot">
6404 The object callers may use to synchronize access to this collection.
6407 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.#ctor(System.Collections.Immutable.ImmutableList{`0})">
6409 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableList`1.Builder"/> class.
6411 <param name="list">A list to act as the basis for a new list.</param>
6413 <member name="P:System.Collections.Immutable.ImmutableList`1.Builder.Count">
6415 Gets the number of elements in this list.
6418 <member name="P:System.Collections.Immutable.ImmutableList`1.Builder.System#Collections#Generic#ICollection{T}#IsReadOnly">
6420 Gets a value indicating whether this instance is read-only.
6422 <value>Always <c>false</c>.</value>
6424 <member name="P:System.Collections.Immutable.ImmutableList`1.Builder.Version">
6426 Gets the current version of the contents of this builder.
6429 <member name="P:System.Collections.Immutable.ImmutableList`1.Builder.Root">
6431 Gets or sets the root node that represents the data in this collection.
6434 <member name="P:System.Collections.Immutable.ImmutableList`1.Builder.Item(System.Int32)">
6436 Gets or sets the value for a given index into the list.
6438 <param name="index">The index of the desired element.</param>
6439 <returns>The value at the specified index.</returns>
6441 <member name="P:System.Collections.Immutable.ImmutableList`1.Builder.System#Collections#Immutable#IOrderedCollection{T}#Item(System.Int32)">
6443 Gets the element in the collection at a given index.
6446 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.IndexOf(`0)">
6448 See <see cref="T:System.Collections.Generic.IList`1"/>
6451 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.Insert(System.Int32,`0)">
6453 See <see cref="T:System.Collections.Generic.IList`1"/>
6456 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.RemoveAt(System.Int32)">
6458 See <see cref="T:System.Collections.Generic.IList`1"/>
6461 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.Add(`0)">
6463 See <see cref="T:System.Collections.Generic.IList`1"/>
6466 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.Clear">
6468 See <see cref="T:System.Collections.Generic.IList`1"/>
6471 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.Contains(`0)">
6473 See <see cref="T:System.Collections.Generic.IList`1"/>
6476 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.Remove(`0)">
6478 See <see cref="T:System.Collections.Generic.IList`1"/>
6481 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.GetEnumerator">
6483 Returns an enumerator that iterates through the collection.
6486 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
6489 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.System#Collections#Generic#IEnumerable{T}#GetEnumerator">
6491 Returns an enumerator that iterates through the collection.
6494 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
6497 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.System#Collections#IEnumerable#GetEnumerator">
6499 Returns an enumerator that iterates through the collection.
6502 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
6505 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.ForEach(System.Action{`0})">
6507 Performs the specified action on each element of the list.
6509 <param name="action">The System.Action<T> delegate to perform on each element of the list.</param>
6511 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.CopyTo(`0[])">
6513 Copies the entire ImmutableList<T> to a compatible one-dimensional
6514 array, starting at the beginning of the target array.
6516 <param name="array">
6517 The one-dimensional System.Array that is the destination of the elements
6518 copied from ImmutableList<T>. The System.Array must have
6519 zero-based indexing.
6522 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.CopyTo(`0[],System.Int32)">
6524 Copies the entire ImmutableList<T> to a compatible one-dimensional
6525 array, starting at the specified index of the target array.
6527 <param name="array">
6528 The one-dimensional System.Array that is the destination of the elements
6529 copied from ImmutableList<T>. The System.Array must have
6530 zero-based indexing.
6532 <param name="arrayIndex">
6533 The zero-based index in array at which copying begins.
6536 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.CopyTo(System.Int32,`0[],System.Int32,System.Int32)">
6538 Copies a range of elements from the ImmutableList<T> to
6539 a compatible one-dimensional array, starting at the specified index of the
6542 <param name="index">
6543 The zero-based index in the source ImmutableList<T> at
6544 which copying begins.
6546 <param name="array">
6547 The one-dimensional System.Array that is the destination of the elements
6548 copied from ImmutableList<T>. The System.Array must have
6549 zero-based indexing.
6551 <param name="arrayIndex">The zero-based index in array at which copying begins.</param>
6552 <param name="count">The number of elements to copy.</param>
6554 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.GetRange(System.Int32,System.Int32)">
6556 Creates a shallow copy of a range of elements in the source ImmutableList<T>.
6558 <param name="index">
6559 The zero-based ImmutableList<T> index at which the range
6562 <param name="count">
6563 The number of elements in the range.
6566 A shallow copy of a range of elements in the source ImmutableList<T>.
6569 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.ConvertAll``1(System.Func{`0,``0})">
6571 Converts the elements in the current ImmutableList<T> to
6572 another type, and returns a list containing the converted elements.
6574 <param name="converter">
6575 A System.Converter<TInput,TOutput> delegate that converts each element from
6576 one type to another type.
6578 <typeparam name="TOutput">
6579 The type of the elements of the target array.
6582 A ImmutableList<T> of the target type containing the converted
6583 elements from the current ImmutableList<T>.
6586 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.Exists(System.Predicate{`0})">
6588 Determines whether the ImmutableList<T> contains elements
6589 that match the conditions defined by the specified predicate.
6591 <param name="match">
6592 The System.Predicate<T> delegate that defines the conditions of the elements
6596 true if the ImmutableList<T> contains one or more elements
6597 that match the conditions defined by the specified predicate; otherwise,
6601 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.Find(System.Predicate{`0})">
6603 Searches for an element that matches the conditions defined by the specified
6604 predicate, and returns the first occurrence within the entire ImmutableList<T>.
6606 <param name="match">
6607 The System.Predicate<T> delegate that defines the conditions of the element
6611 The first element that matches the conditions defined by the specified predicate,
6612 if found; otherwise, the default value for type T.
6615 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.FindAll(System.Predicate{`0})">
6617 Retrieves all the elements that match the conditions defined by the specified
6620 <param name="match">
6621 The System.Predicate<T> delegate that defines the conditions of the elements
6625 A ImmutableList<T> containing all the elements that match
6626 the conditions defined by the specified predicate, if found; otherwise, an
6627 empty ImmutableList<T>.
6630 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.FindIndex(System.Predicate{`0})">
6632 Searches for an element that matches the conditions defined by the specified
6633 predicate, and returns the zero-based index of the first occurrence within
6634 the entire ImmutableList<T>.
6636 <param name="match">
6637 The System.Predicate<T> delegate that defines the conditions of the element
6641 The zero-based index of the first occurrence of an element that matches the
6642 conditions defined by match, if found; otherwise, -1.
6645 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.FindIndex(System.Int32,System.Predicate{`0})">
6647 Searches for an element that matches the conditions defined by the specified
6648 predicate, and returns the zero-based index of the first occurrence within
6649 the range of elements in the ImmutableList<T> that extends
6650 from the specified index to the last element.
6652 <param name="startIndex">The zero-based starting index of the search.</param>
6653 <param name="match">The System.Predicate<T> delegate that defines the conditions of the element to search for.</param>
6655 The zero-based index of the first occurrence of an element that matches the
6656 conditions defined by match, if found; otherwise, -1.
6659 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.FindIndex(System.Int32,System.Int32,System.Predicate{`0})">
6661 Searches for an element that matches the conditions defined by the specified
6662 predicate, and returns the zero-based index of the first occurrence within
6663 the range of elements in the ImmutableList<T> that starts
6664 at the specified index and contains the specified number of elements.
6666 <param name="startIndex">The zero-based starting index of the search.</param>
6667 <param name="count">The number of elements in the section to search.</param>
6668 <param name="match">The System.Predicate<T> delegate that defines the conditions of the element to search for.</param>
6670 The zero-based index of the first occurrence of an element that matches the
6671 conditions defined by match, if found; otherwise, -1.
6674 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.FindLast(System.Predicate{`0})">
6676 Searches for an element that matches the conditions defined by the specified
6677 predicate, and returns the last occurrence within the entire ImmutableList<T>.
6679 <param name="match">
6680 The System.Predicate<T> delegate that defines the conditions of the element
6684 The last element that matches the conditions defined by the specified predicate,
6685 if found; otherwise, the default value for type T.
6688 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.FindLastIndex(System.Predicate{`0})">
6690 Searches for an element that matches the conditions defined by the specified
6691 predicate, and returns the zero-based index of the last occurrence within
6692 the entire ImmutableList<T>.
6694 <param name="match">
6695 The System.Predicate<T> delegate that defines the conditions of the element
6699 The zero-based index of the last occurrence of an element that matches the
6700 conditions defined by match, if found; otherwise, -1.
6703 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.FindLastIndex(System.Int32,System.Predicate{`0})">
6705 Searches for an element that matches the conditions defined by the specified
6706 predicate, and returns the zero-based index of the last occurrence within
6707 the range of elements in the ImmutableList<T> that extends
6708 from the first element to the specified index.
6710 <param name="startIndex">The zero-based starting index of the backward search.</param>
6711 <param name="match">The System.Predicate<T> delegate that defines the conditions of the element
6712 to search for.</param>
6714 The zero-based index of the last occurrence of an element that matches the
6715 conditions defined by match, if found; otherwise, -1.
6718 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.FindLastIndex(System.Int32,System.Int32,System.Predicate{`0})">
6720 Searches for an element that matches the conditions defined by the specified
6721 predicate, and returns the zero-based index of the last occurrence within
6722 the range of elements in the ImmutableList<T> that contains
6723 the specified number of elements and ends at the specified index.
6725 <param name="startIndex">The zero-based starting index of the backward search.</param>
6726 <param name="count">The number of elements in the section to search.</param>
6727 <param name="match">
6728 The System.Predicate<T> delegate that defines the conditions of the element
6732 The zero-based index of the last occurrence of an element that matches the
6733 conditions defined by match, if found; otherwise, -1.
6736 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.IndexOf(`0,System.Int32)">
6738 Searches for the specified object and returns the zero-based index of the
6739 first occurrence within the range of elements in the ImmutableList<T>
6740 that extends from the specified index to the last element.
6743 The object to locate in the ImmutableList<T>. The value
6744 can be null for reference types.
6746 <param name="index">
6747 The zero-based starting index of the search. 0 (zero) is valid in an empty
6751 The zero-based index of the first occurrence of item within the range of
6752 elements in the ImmutableList<T> that extends from index
6753 to the last element, if found; otherwise, -1.
6756 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.IndexOf(`0,System.Int32,System.Int32)">
6758 Searches for the specified object and returns the zero-based index of the
6759 first occurrence within the range of elements in the ImmutableList<T>
6760 that starts at the specified index and contains the specified number of elements.
6763 The object to locate in the ImmutableList<T>. The value
6764 can be null for reference types.
6766 <param name="index">
6767 The zero-based starting index of the search. 0 (zero) is valid in an empty
6770 <param name="count">
6771 The number of elements in the section to search.
6774 The zero-based index of the first occurrence of item within the range of
6775 elements in the ImmutableList<T> that starts at index and
6776 contains count number of elements, if found; otherwise, -1.
6779 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.IndexOf(`0,System.Int32,System.Int32,System.Collections.Generic.IEqualityComparer{`0})">
6781 Searches for the specified object and returns the zero-based index of the
6782 first occurrence within the range of elements in the ImmutableList<T>
6783 that starts at the specified index and contains the specified number of elements.
6786 The object to locate in the ImmutableList<T>. The value
6787 can be null for reference types.
6789 <param name="index">
6790 The zero-based starting index of the search. 0 (zero) is valid in an empty
6793 <param name="count">
6794 The number of elements in the section to search.
6796 <param name="equalityComparer">
6797 The equality comparer to use in the search.
6798 If <c>null</c>, <see cref="P:System.Collections.Generic.EqualityComparer`1.Default"/> is used.
6801 The zero-based index of the first occurrence of item within the range of
6802 elements in the ImmutableList<T> that starts at index and
6803 contains count number of elements, if found; otherwise, -1.
6806 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.LastIndexOf(`0)">
6808 Searches for the specified object and returns the zero-based index of the
6809 last occurrence within the range of elements in the ImmutableList<T>
6810 that contains the specified number of elements and ends at the specified
6814 The object to locate in the ImmutableList<T>. The value
6815 can be null for reference types.
6818 The zero-based index of the last occurrence of item within the range of elements
6819 in the ImmutableList<T> that contains count number of elements
6820 and ends at index, if found; otherwise, -1.
6823 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.LastIndexOf(`0,System.Int32)">
6825 Searches for the specified object and returns the zero-based index of the
6826 last occurrence within the range of elements in the ImmutableList<T>
6827 that contains the specified number of elements and ends at the specified
6831 The object to locate in the ImmutableList<T>. The value
6832 can be null for reference types.
6834 <param name="startIndex">The zero-based starting index of the backward search.</param>
6836 The zero-based index of the last occurrence of item within the range of elements
6837 in the ImmutableList<T> that contains count number of elements
6838 and ends at index, if found; otherwise, -1.
6841 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.LastIndexOf(`0,System.Int32,System.Int32)">
6843 Searches for the specified object and returns the zero-based index of the
6844 last occurrence within the range of elements in the ImmutableList<T>
6845 that contains the specified number of elements and ends at the specified
6849 The object to locate in the ImmutableList<T>. The value
6850 can be null for reference types.
6852 <param name="startIndex">The zero-based starting index of the backward search.</param>
6853 <param name="count">The number of elements in the section to search.</param>
6855 The zero-based index of the last occurrence of item within the range of elements
6856 in the ImmutableList<T> that contains count number of elements
6857 and ends at index, if found; otherwise, -1.
6860 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.LastIndexOf(`0,System.Int32,System.Int32,System.Collections.Generic.IEqualityComparer{`0})">
6862 Searches for the specified object and returns the zero-based index of the
6863 last occurrence within the range of elements in the ImmutableList<T>
6864 that contains the specified number of elements and ends at the specified
6868 The object to locate in the ImmutableList<T>. The value
6869 can be null for reference types.
6871 <param name="startIndex">The zero-based starting index of the backward search.</param>
6872 <param name="count">The number of elements in the section to search.</param>
6873 <param name="equalityComparer">The equality comparer to use in the search.</param>
6875 The zero-based index of the last occurrence of item within the range of elements
6876 in the ImmutableList<T> that contains count number of elements
6877 and ends at index, if found; otherwise, -1.
6880 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.TrueForAll(System.Predicate{`0})">
6882 Determines whether every element in the ImmutableList<T>
6883 matches the conditions defined by the specified predicate.
6885 <param name="match">
6886 The System.Predicate<T> delegate that defines the conditions to check against
6890 true if every element in the ImmutableList<T> matches the
6891 conditions defined by the specified predicate; otherwise, false. If the list
6892 has no elements, the return value is true.
6895 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.AddRange(System.Collections.Generic.IEnumerable{`0})">
6897 Adds the elements of a sequence to the end of this collection.
6899 <param name="items">
6900 The sequence whose elements should be appended to this collection.
6901 The sequence itself cannot be null, but it can contain elements that are
6902 null, if type <typeparamref name="T"/> is a reference type.
6905 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.InsertRange(System.Int32,System.Collections.Generic.IEnumerable{`0})">
6907 Inserts the elements of a collection into the ImmutableList<T>
6908 at the specified index.
6910 <param name="index">
6911 The zero-based index at which the new elements should be inserted.
6913 <param name="items">
6914 The collection whose elements should be inserted into the ImmutableList<T>.
6915 The collection itself cannot be null, but it can contain elements that are
6916 null, if type T is a reference type.
6919 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.RemoveAll(System.Predicate{`0})">
6921 Removes all the elements that match the conditions defined by the specified
6924 <param name="match">
6925 The System.Predicate<T> delegate that defines the conditions of the elements
6929 The number of elements removed from the ImmutableList<T>
6932 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.Reverse">
6934 Reverses the order of the elements in the entire ImmutableList<T>.
6937 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.Reverse(System.Int32,System.Int32)">
6939 Reverses the order of the elements in the specified range.
6941 <param name="index">The zero-based starting index of the range to reverse.</param>
6942 <param name="count">The number of elements in the range to reverse.</param>
6944 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.Sort">
6946 Sorts the elements in the entire ImmutableList<T> using
6947 the default comparer.
6950 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.Sort(System.Comparison{`0})">
6952 Sorts the elements in the entire ImmutableList<T> using
6953 the specified System.Comparison<T>.
6955 <param name="comparison">
6956 The <see cref="T:System.Comparison`1"/> to use when comparing elements.
6958 <exception cref="T:System.ArgumentNullException"><paramref name="comparison"/> is null.</exception>
6960 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.Sort(System.Collections.Generic.IComparer{`0})">
6962 Sorts the elements in the entire ImmutableList<T> using
6963 the specified comparer.
6965 <param name="comparer">
6966 The <see cref="T:System.Collections.Generic.IComparer`1"/> implementation to use when comparing
6967 elements, or null to use <see cref="P:System.Collections.Generic.Comparer`1.Default"/>.
6970 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.Sort(System.Int32,System.Int32,System.Collections.Generic.IComparer{`0})">
6972 Sorts the elements in a range of elements in ImmutableList<T>
6973 using the specified comparer.
6975 <param name="index">
6976 The zero-based starting index of the range to sort.
6978 <param name="count">
6979 The length of the range to sort.
6981 <param name="comparer">
6982 The <see cref="T:System.Collections.Generic.IComparer`1"/> implementation to use when comparing
6983 elements, or null to use <see cref="P:System.Collections.Generic.Comparer`1.Default"/>.
6986 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.BinarySearch(`0)">
6988 Searches the entire sorted System.Collections.Generic.List<T> for an element
6989 using the default comparer and returns the zero-based index of the element.
6991 <param name="item">The object to locate. The value can be null for reference types.</param>
6993 The zero-based index of item in the sorted System.Collections.Generic.List<T>,
6994 if item is found; otherwise, a negative number that is the bitwise complement
6995 of the index of the next element that is larger than item or, if there is
6996 no larger element, the bitwise complement of System.Collections.Generic.List<T>.Count.
6998 <exception cref="T:System.InvalidOperationException">
6999 The default comparer System.Collections.Generic.Comparer<T>.Default cannot
7000 find an implementation of the System.IComparable<T> generic interface or
7001 the System.IComparable interface for type T.
7004 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.BinarySearch(`0,System.Collections.Generic.IComparer{`0})">
7006 Searches the entire sorted System.Collections.Generic.List<T> for an element
7007 using the specified comparer and returns the zero-based index of the element.
7009 <param name="item">The object to locate. The value can be null for reference types.</param>
7010 <param name="comparer">
7011 The System.Collections.Generic.IComparer<T> implementation to use when comparing
7012 elements.-or-null to use the default comparer System.Collections.Generic.Comparer<T>.Default.
7015 The zero-based index of item in the sorted System.Collections.Generic.List<T>,
7016 if item is found; otherwise, a negative number that is the bitwise complement
7017 of the index of the next element that is larger than item or, if there is
7018 no larger element, the bitwise complement of System.Collections.Generic.List<T>.Count.
7020 <exception cref="T:System.InvalidOperationException">
7021 comparer is null, and the default comparer System.Collections.Generic.Comparer<T>.Default
7022 cannot find an implementation of the System.IComparable<T> generic interface
7023 or the System.IComparable interface for type T.
7026 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.BinarySearch(System.Int32,System.Int32,`0,System.Collections.Generic.IComparer{`0})">
7028 Searches a range of elements in the sorted System.Collections.Generic.List<T>
7029 for an element using the specified comparer and returns the zero-based index
7032 <param name="index">The zero-based starting index of the range to search.</param>
7033 <param name="count"> The length of the range to search.</param>
7034 <param name="item">The object to locate. The value can be null for reference types.</param>
7035 <param name="comparer">
7036 The System.Collections.Generic.IComparer<T> implementation to use when comparing
7037 elements, or null to use the default comparer System.Collections.Generic.Comparer<T>.Default.
7040 The zero-based index of item in the sorted System.Collections.Generic.List<T>,
7041 if item is found; otherwise, a negative number that is the bitwise complement
7042 of the index of the next element that is larger than item or, if there is
7043 no larger element, the bitwise complement of System.Collections.Generic.List<T>.Count.
7045 <exception cref="T:System.ArgumentOutOfRangeException">
7046 index is less than 0.-or-count is less than 0.
7048 <exception cref="T:System.ArgumentException">
7049 index and count do not denote a valid range in the System.Collections.Generic.List<T>.
7051 <exception cref="T:System.InvalidOperationException">
7052 comparer is null, and the default comparer System.Collections.Generic.Comparer<T>.Default
7053 cannot find an implementation of the System.IComparable<T> generic interface
7054 or the System.IComparable interface for type T.
7057 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.ToImmutable">
7059 Creates an immutable list based on the contents of this instance.
7061 <returns>An immutable list.</returns>
7063 This method is an O(n) operation, and approaches O(1) time as the number of
7064 actual mutations to the set since the last call to this method approaches 0.
7067 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.System#Collections#IList#Add(System.Object)">
7069 Adds an item to the <see cref="T:System.Collections.IList"/>.
7071 <param name="value">The object to add to the <see cref="T:System.Collections.IList"/>.</param>
7073 The position into which the new element was inserted, or -1 to indicate that the item was not inserted into the collection,
7076 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.System#Collections#IList#Clear">
7078 Clears this instance.
7081 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.System#Collections#IList#Contains(System.Object)">
7083 Determines whether the <see cref="T:System.Collections.IList"/> contains a specific value.
7085 <param name="value">The object to locate in the <see cref="T:System.Collections.IList"/>.</param>
7087 true if the <see cref="T:System.Object"/> is found in the <see cref="T:System.Collections.IList"/>; otherwise, false.
7090 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.System#Collections#IList#IndexOf(System.Object)">
7092 Determines the index of a specific item in the <see cref="T:System.Collections.IList"/>.
7094 <param name="value">The object to locate in the <see cref="T:System.Collections.IList"/>.</param>
7096 The index of <paramref name="value"/> if found in the list; otherwise, -1.
7099 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.System#Collections#IList#Insert(System.Int32,System.Object)">
7101 Inserts an item to the <see cref="T:System.Collections.IList"/> at the specified index.
7103 <param name="index">The zero-based index at which <paramref name="value"/> should be inserted.</param>
7104 <param name="value">The object to insert into the <see cref="T:System.Collections.IList"/>.</param>
7106 <member name="P:System.Collections.Immutable.ImmutableList`1.Builder.System#Collections#IList#IsFixedSize">
7108 Gets a value indicating whether the <see cref="T:System.Collections.IList"/> has a fixed size.
7110 <returns>true if the <see cref="T:System.Collections.IList"/> has a fixed size; otherwise, false.</returns>
7112 <member name="P:System.Collections.Immutable.ImmutableList`1.Builder.System#Collections#IList#IsReadOnly">
7114 Gets a value indicating whether the <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.
7116 <returns>true if the <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only; otherwise, false.
7119 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.System#Collections#IList#Remove(System.Object)">
7121 Removes the first occurrence of a specific object from the <see cref="T:System.Collections.IList"/>.
7123 <param name="value">The object to remove from the <see cref="T:System.Collections.IList"/>.</param>
7125 <member name="P:System.Collections.Immutable.ImmutableList`1.Builder.System#Collections#IList#Item(System.Int32)">
7127 Gets or sets the <see cref="T:System.Object"/> at the specified index.
7130 The <see cref="T:System.Object"/>.
7132 <param name="index">The index.</param>
7135 <member name="M:System.Collections.Immutable.ImmutableList`1.Builder.System#Collections#ICollection#CopyTo(System.Array,System.Int32)">
7137 Copies the elements of the <see cref="T:System.Collections.ICollection"/> to an <see cref="T:System.Array"/>, starting at a particular <see cref="T:System.Array"/> index.
7139 <param name="array">The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements copied from <see cref="T:System.Collections.ICollection"/>. The <see cref="T:System.Array"/> must have zero-based indexing.</param>
7140 <param name="arrayIndex">The zero-based index in <paramref name="array"/> at which copying begins.</param>
7142 <member name="P:System.Collections.Immutable.ImmutableList`1.Builder.System#Collections#ICollection#IsSynchronized">
7144 Gets a value indicating whether access to the <see cref="T:System.Collections.ICollection"/> is synchronized (thread safe).
7146 <returns>true if access to the <see cref="T:System.Collections.ICollection"/> is synchronized (thread safe); otherwise, false.</returns>
7148 <member name="P:System.Collections.Immutable.ImmutableList`1.Builder.System#Collections#ICollection#SyncRoot">
7150 Gets an object that can be used to synchronize access to the <see cref="T:System.Collections.ICollection"/>.
7152 <returns>An object that can be used to synchronize access to the <see cref="T:System.Collections.ICollection"/>.</returns>
7154 <member name="F:System.Collections.Immutable.ImmutableList`1.Empty">
7156 An empty immutable list.
7159 <member name="F:System.Collections.Immutable.ImmutableList`1._root">
7161 The root node of the AVL tree that stores this set.
7164 <member name="M:System.Collections.Immutable.ImmutableList`1.#ctor">
7166 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableList`1"/> class.
7169 <member name="M:System.Collections.Immutable.ImmutableList`1.#ctor(System.Collections.Immutable.ImmutableList{`0}.Node)">
7171 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableList`1"/> class.
7173 <param name="root">The root of the AVL tree with the contents of this set.</param>
7175 <member name="M:System.Collections.Immutable.ImmutableList`1.Clear">
7177 See the <see cref="T:System.Collections.Immutable.IImmutableList`1"/> interface.
7180 <member name="M:System.Collections.Immutable.ImmutableList`1.BinarySearch(`0)">
7182 Searches the entire sorted <see cref="T:System.Collections.Immutable.ImmutableList`1"/> for an element
7183 using the default comparer and returns the zero-based index of the element.
7185 <param name="item">The object to locate. The value can be null for reference types.</param>
7187 The zero-based index of item in the sorted <see cref="T:System.Collections.Immutable.ImmutableList`1"/>,
7188 if item is found; otherwise, a negative number that is the bitwise complement
7189 of the index of the next element that is larger than item or, if there is
7190 no larger element, the bitwise complement of <see cref="P:System.Collections.Immutable.ImmutableList`1.Count"/>.
7192 <exception cref="T:System.InvalidOperationException">
7193 The default comparer <see cref="P:System.Collections.Generic.Comparer`1.Default"/> cannot
7194 find an implementation of the <see cref="T:System.IComparable`1"/> generic interface or
7195 the <see cref="T:System.IComparable"/> interface for type <typeparamref name="T"/>.
7198 <member name="M:System.Collections.Immutable.ImmutableList`1.BinarySearch(`0,System.Collections.Generic.IComparer{`0})">
7200 Searches the entire sorted <see cref="T:System.Collections.Immutable.ImmutableList`1"/> for an element
7201 using the specified comparer and returns the zero-based index of the element.
7203 <param name="item">The object to locate. The value can be null for reference types.</param>
7204 <param name="comparer">
7205 The <see cref="T:System.Collections.Generic.IComparer`1"/> implementation to use when comparing
7206 elements.-or-null to use the default comparer <see cref="P:System.Collections.Generic.Comparer`1.Default"/>.
7209 The zero-based index of item in the sorted <see cref="T:System.Collections.Immutable.ImmutableList`1"/>,
7210 if item is found; otherwise, a negative number that is the bitwise complement
7211 of the index of the next element that is larger than item or, if there is
7212 no larger element, the bitwise complement of <see cref="P:System.Collections.Immutable.ImmutableList`1.Count"/>.
7214 <exception cref="T:System.InvalidOperationException">
7215 <paramref name="comparer"/> is null, and the default comparer <see cref="P:System.Collections.Generic.Comparer`1.Default"/>
7216 cannot find an implementation of the <see cref="T:System.IComparable`1"/> generic interface
7217 or the <see cref="T:System.IComparable"/> interface for type <typeparamref name="T"/>.
7220 <member name="M:System.Collections.Immutable.ImmutableList`1.BinarySearch(System.Int32,System.Int32,`0,System.Collections.Generic.IComparer{`0})">
7222 Searches a range of elements in the sorted <see cref="T:System.Collections.Immutable.ImmutableList`1"/>
7223 for an element using the specified comparer and returns the zero-based index
7226 <param name="index">The zero-based starting index of the range to search.</param>
7227 <param name="count"> The length of the range to search.</param>
7228 <param name="item">The object to locate. The value can be null for reference types.</param>
7229 <param name="comparer">
7230 The <see cref="T:System.Collections.Generic.IComparer`1"/> implementation to use when comparing
7231 elements, or null to use the default comparer <see cref="P:System.Collections.Generic.Comparer`1.Default"/>.
7234 The zero-based index of item in the sorted <see cref="T:System.Collections.Immutable.ImmutableList`1"/>,
7235 if item is found; otherwise, a negative number that is the bitwise complement
7236 of the index of the next element that is larger than item or, if there is
7237 no larger element, the bitwise complement of <see cref="P:System.Collections.Immutable.ImmutableList`1.Count"/>.
7239 <exception cref="T:System.ArgumentOutOfRangeException">
7240 <paramref name="index"/> is less than 0.-or-<paramref name="count"/> is less than 0.
7242 <exception cref="T:System.ArgumentException">
7243 <paramref name="index"/> and <paramref name="count"/> do not denote a valid range in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/>.
7245 <exception cref="T:System.InvalidOperationException">
7246 <paramref name="comparer"/> is null, and the default comparer <see cref="P:System.Collections.Generic.Comparer`1.Default"/>
7247 cannot find an implementation of the <see cref="T:System.IComparable`1"/> generic interface
7248 or the <see cref="T:System.IComparable"/> interface for type <typeparamref name="T"/>.
7251 <member name="P:System.Collections.Immutable.ImmutableList`1.IsEmpty">
7253 See the <see cref="T:System.Collections.Immutable.IImmutableList`1"/> interface.
7256 <member name="M:System.Collections.Immutable.ImmutableList`1.System#Collections#Immutable#IImmutableList{T}#Clear">
7258 See the <see cref="T:System.Collections.Immutable.IImmutableList`1"/> interface.
7261 <member name="P:System.Collections.Immutable.ImmutableList`1.Count">
7263 See the <see cref="T:System.Collections.Immutable.IImmutableList`1"/> interface.
7266 <member name="P:System.Collections.Immutable.ImmutableList`1.System#Collections#ICollection#SyncRoot">
7268 See <see cref="T:System.Collections.ICollection"/>.
7271 <member name="P:System.Collections.Immutable.ImmutableList`1.System#Collections#ICollection#IsSynchronized">
7273 See the <see cref="T:System.Collections.ICollection"/> interface.
7276 <member name="P:System.Collections.Immutable.ImmutableList`1.Item(System.Int32)">
7278 Gets the element of the set at the given index.
7280 <param name="index">The 0-based index of the element in the set to return.</param>
7281 <returns>The element at the given position.</returns>
7282 <exception cref="T:System.IndexOutOfRangeException">Thrown from getter when <paramref name="index"/> is negative or not less than <see cref="P:System.Collections.Immutable.ImmutableList`1.Count"/>.</exception>
7284 <member name="P:System.Collections.Immutable.ImmutableList`1.System#Collections#Immutable#IOrderedCollection{T}#Item(System.Int32)">
7286 Gets the element in the collection at a given index.
7289 <member name="M:System.Collections.Immutable.ImmutableList`1.ToBuilder">
7291 Creates a collection with the same contents as this collection that
7292 can be efficiently mutated across multiple operations using standard
7296 This is an O(1) operation and results in only a single (small) memory allocation.
7297 The mutable collection that is returned is *not* thread-safe.
7300 <member name="M:System.Collections.Immutable.ImmutableList`1.Add(`0)">
7302 See the <see cref="T:System.Collections.Immutable.IImmutableList`1"/> interface.
7305 <member name="M:System.Collections.Immutable.ImmutableList`1.AddRange(System.Collections.Generic.IEnumerable{`0})">
7307 See the <see cref="T:System.Collections.Immutable.IImmutableList`1"/> interface.
7310 <member name="M:System.Collections.Immutable.ImmutableList`1.Insert(System.Int32,`0)">
7312 See the <see cref="T:System.Collections.Immutable.IImmutableList`1"/> interface.
7315 <member name="M:System.Collections.Immutable.ImmutableList`1.InsertRange(System.Int32,System.Collections.Generic.IEnumerable{`0})">
7317 See the <see cref="T:System.Collections.Immutable.IImmutableList`1"/> interface.
7320 <member name="M:System.Collections.Immutable.ImmutableList`1.Remove(`0)">
7322 See the <see cref="T:System.Collections.Immutable.IImmutableList`1"/> interface.
7325 <member name="M:System.Collections.Immutable.ImmutableList`1.Remove(`0,System.Collections.Generic.IEqualityComparer{`0})">
7327 See the <see cref="T:System.Collections.Immutable.IImmutableList`1"/> interface.
7330 <member name="M:System.Collections.Immutable.ImmutableList`1.RemoveRange(System.Int32,System.Int32)">
7332 Removes the specified values from this list.
7334 <param name="index">The starting index to begin removal.</param>
7335 <param name="count">The number of elements to remove.</param>
7336 <returns>A new list with the elements removed.</returns>
7338 <member name="M:System.Collections.Immutable.ImmutableList`1.RemoveRange(System.Collections.Generic.IEnumerable{`0})">
7340 Removes the specified values from this list.
7342 <param name="items">The items to remove if matches are found in this list.</param>
7344 A new list with the elements removed.
7347 <member name="M:System.Collections.Immutable.ImmutableList`1.RemoveRange(System.Collections.Generic.IEnumerable{`0},System.Collections.Generic.IEqualityComparer{`0})">
7349 Removes the specified values from this list.
7351 <param name="items">The items to remove if matches are found in this list.</param>
7352 <param name="equalityComparer">
7353 The equality comparer to use in the search.
7354 If <c>null</c>, <see cref="P:System.Collections.Generic.EqualityComparer`1.Default"/> is used.
7357 A new list with the elements removed.
7360 <member name="M:System.Collections.Immutable.ImmutableList`1.RemoveAt(System.Int32)">
7362 See the <see cref="T:System.Collections.Immutable.IImmutableList`1"/> interface.
7365 <member name="M:System.Collections.Immutable.ImmutableList`1.RemoveAll(System.Predicate{`0})">
7367 Removes all the elements that match the conditions defined by the specified
7370 <param name="match">
7371 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the elements
7378 <member name="M:System.Collections.Immutable.ImmutableList`1.SetItem(System.Int32,`0)">
7380 See the <see cref="T:System.Collections.Immutable.IImmutableList`1"/> interface.
7383 <member name="M:System.Collections.Immutable.ImmutableList`1.Replace(`0,`0)">
7385 See the <see cref="T:System.Collections.Immutable.IImmutableList`1"/> interface.
7388 <member name="M:System.Collections.Immutable.ImmutableList`1.Replace(`0,`0,System.Collections.Generic.IEqualityComparer{`0})">
7390 See the <see cref="T:System.Collections.Immutable.IImmutableList`1"/> interface.
7393 <member name="M:System.Collections.Immutable.ImmutableList`1.Reverse">
7395 Reverses the order of the elements in the entire <see cref="T:System.Collections.Immutable.ImmutableList`1"/>.
7397 <returns>The reversed list.</returns>
7399 <member name="M:System.Collections.Immutable.ImmutableList`1.Reverse(System.Int32,System.Int32)">
7401 Reverses the order of the elements in the specified range.
7403 <param name="index">The zero-based starting index of the range to reverse.</param>
7404 <param name="count">The number of elements in the range to reverse.</param>
7405 <returns>The reversed list.</returns>
7407 <member name="M:System.Collections.Immutable.ImmutableList`1.Sort">
7409 Sorts the elements in the entire <see cref="T:System.Collections.Immutable.ImmutableList`1"/> using
7410 the default comparer.
7413 <member name="M:System.Collections.Immutable.ImmutableList`1.Sort(System.Comparison{`0})">
7415 Sorts the elements in the entire <see cref="T:System.Collections.Immutable.ImmutableList`1"/> using
7416 the specified <see cref="T:System.Comparison`1"/>.
7418 <param name="comparison">
7419 The <see cref="T:System.Comparison`1"/> to use when comparing elements.
7421 <returns>The sorted list.</returns>
7422 <exception cref="T:System.ArgumentNullException"><paramref name="comparison"/> is null.</exception>
7424 <member name="M:System.Collections.Immutable.ImmutableList`1.Sort(System.Collections.Generic.IComparer{`0})">
7426 Sorts the elements in the entire <see cref="T:System.Collections.Immutable.ImmutableList`1"/> using
7427 the specified comparer.
7429 <param name="comparer">
7430 The <see cref="T:System.Collections.Generic.IComparer`1"/> implementation to use when comparing
7431 elements, or null to use the default comparer <see cref="P:System.Collections.Generic.Comparer`1.Default"/>.
7433 <returns>The sorted list.</returns>
7435 <member name="M:System.Collections.Immutable.ImmutableList`1.Sort(System.Int32,System.Int32,System.Collections.Generic.IComparer{`0})">
7437 Sorts the elements in a range of elements in <see cref="T:System.Collections.Immutable.ImmutableList`1"/>
7438 using the specified comparer.
7440 <param name="index">
7441 The zero-based starting index of the range to sort.
7443 <param name="count">
7444 The length of the range to sort.
7446 <param name="comparer">
7447 The <see cref="T:System.Collections.Generic.IComparer`1"/> implementation to use when comparing
7448 elements, or null to use the default comparer <see cref="P:System.Collections.Generic.Comparer`1.Default"/>.
7450 <returns>The sorted list.</returns>
7452 <member name="M:System.Collections.Immutable.ImmutableList`1.ForEach(System.Action{`0})">
7454 Performs the specified action on each element of the list.
7456 <param name="action">The System.Action<T> delegate to perform on each element of the list.</param>
7458 <member name="M:System.Collections.Immutable.ImmutableList`1.CopyTo(`0[])">
7460 Copies the entire <see cref="T:System.Collections.Immutable.ImmutableList`1"/> to a compatible one-dimensional
7461 array, starting at the beginning of the target array.
7463 <param name="array">
7464 The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements
7465 copied from <see cref="T:System.Collections.Immutable.ImmutableList`1"/>. The <see cref="T:System.Array"/> must have
7466 zero-based indexing.
7469 <member name="M:System.Collections.Immutable.ImmutableList`1.CopyTo(`0[],System.Int32)">
7471 Copies the entire <see cref="T:System.Collections.Immutable.ImmutableList`1"/> to a compatible one-dimensional
7472 array, starting at the specified index of the target array.
7474 <param name="array">
7475 The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements
7476 copied from <see cref="T:System.Collections.Immutable.ImmutableList`1"/>. The <see cref="T:System.Array"/> must have
7477 zero-based indexing.
7479 <param name="arrayIndex">
7480 The zero-based index in array at which copying begins.
7483 <member name="M:System.Collections.Immutable.ImmutableList`1.CopyTo(System.Int32,`0[],System.Int32,System.Int32)">
7485 Copies a range of elements from the <see cref="T:System.Collections.Immutable.ImmutableList`1"/> to
7486 a compatible one-dimensional array, starting at the specified index of the
7489 <param name="index">
7490 The zero-based index in the source <see cref="T:System.Collections.Immutable.ImmutableList`1"/> at
7491 which copying begins.
7493 <param name="array">
7494 The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements
7495 copied from <see cref="T:System.Collections.Immutable.ImmutableList`1"/>. The <see cref="T:System.Array"/> must have
7496 zero-based indexing.
7498 <param name="arrayIndex">The zero-based index in array at which copying begins.</param>
7499 <param name="count">The number of elements to copy.</param>
7501 <member name="M:System.Collections.Immutable.ImmutableList`1.GetRange(System.Int32,System.Int32)">
7503 Creates a shallow copy of a range of elements in the source <see cref="T:System.Collections.Immutable.ImmutableList`1"/>.
7505 <param name="index">
7506 The zero-based <see cref="T:System.Collections.Immutable.ImmutableList`1"/> index at which the range
7509 <param name="count">
7510 The number of elements in the range.
7513 A shallow copy of a range of elements in the source <see cref="T:System.Collections.Immutable.ImmutableList`1"/>.
7516 <member name="M:System.Collections.Immutable.ImmutableList`1.ConvertAll``1(System.Func{`0,``0})">
7518 Converts the elements in the current <see cref="T:System.Collections.Immutable.ImmutableList`1"/> to
7519 another type, and returns a list containing the converted elements.
7521 <param name="converter">
7522 A <see cref="T:System.Func`2"/> delegate that converts each element from
7523 one type to another type.
7525 <typeparam name="TOutput">
7526 The type of the elements of the target array.
7529 A <see cref="T:System.Collections.Immutable.ImmutableList`1"/> of the target type containing the converted
7530 elements from the current <see cref="T:System.Collections.Immutable.ImmutableList`1"/>.
7533 <member name="M:System.Collections.Immutable.ImmutableList`1.Exists(System.Predicate{`0})">
7535 Determines whether the <see cref="T:System.Collections.Immutable.ImmutableList`1"/> contains elements
7536 that match the conditions defined by the specified predicate.
7538 <param name="match">
7539 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the elements
7543 true if the <see cref="T:System.Collections.Immutable.ImmutableList`1"/> contains one or more elements
7544 that match the conditions defined by the specified predicate; otherwise,
7548 <member name="M:System.Collections.Immutable.ImmutableList`1.Find(System.Predicate{`0})">
7550 Searches for an element that matches the conditions defined by the specified
7551 predicate, and returns the first occurrence within the entire <see cref="T:System.Collections.Immutable.ImmutableList`1"/>.
7553 <param name="match">
7554 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element
7558 The first element that matches the conditions defined by the specified predicate,
7559 if found; otherwise, the default value for type <typeparamref name="T"/>.
7562 <member name="M:System.Collections.Immutable.ImmutableList`1.FindAll(System.Predicate{`0})">
7564 Retrieves all the elements that match the conditions defined by the specified
7567 <param name="match">
7568 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the elements
7572 A <see cref="T:System.Collections.Immutable.ImmutableList`1"/> containing all the elements that match
7573 the conditions defined by the specified predicate, if found; otherwise, an
7574 empty <see cref="T:System.Collections.Immutable.ImmutableList`1"/>.
7577 <member name="M:System.Collections.Immutable.ImmutableList`1.FindIndex(System.Predicate{`0})">
7579 Searches for an element that matches the conditions defined by the specified
7580 predicate, and returns the zero-based index of the first occurrence within
7581 the entire <see cref="T:System.Collections.Immutable.ImmutableList`1"/>.
7583 <param name="match">
7584 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element
7588 The zero-based index of the first occurrence of an element that matches the
7589 conditions defined by <paramref name="match"/>, if found; otherwise, -1.
7592 <member name="M:System.Collections.Immutable.ImmutableList`1.FindIndex(System.Int32,System.Predicate{`0})">
7594 Searches for an element that matches the conditions defined by the specified
7595 predicate, and returns the zero-based index of the first occurrence within
7596 the range of elements in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/> that extends
7597 from the specified index to the last element.
7599 <param name="startIndex">The zero-based starting index of the search.</param>
7600 <param name="match">The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element to search for.</param>
7602 The zero-based index of the first occurrence of an element that matches the
7603 conditions defined by <paramref name="match"/>, if found; otherwise, -1.
7606 <member name="M:System.Collections.Immutable.ImmutableList`1.FindIndex(System.Int32,System.Int32,System.Predicate{`0})">
7608 Searches for an element that matches the conditions defined by the specified
7609 predicate, and returns the zero-based index of the first occurrence within
7610 the range of elements in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/> that starts
7611 at the specified index and contains the specified number of elements.
7613 <param name="startIndex">The zero-based starting index of the search.</param>
7614 <param name="count">The number of elements in the section to search.</param>
7615 <param name="match">The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element to search for.</param>
7617 The zero-based index of the first occurrence of an element that matches the
7618 conditions defined by <paramref name="match"/>, if found; otherwise, -1.
7621 <member name="M:System.Collections.Immutable.ImmutableList`1.FindLast(System.Predicate{`0})">
7623 Searches for an element that matches the conditions defined by the specified
7624 predicate, and returns the last occurrence within the entire <see cref="T:System.Collections.Immutable.ImmutableList`1"/>.
7626 <param name="match">
7627 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element
7631 The last element that matches the conditions defined by the specified predicate,
7632 if found; otherwise, the default value for type <typeparamref name="T"/>.
7635 <member name="M:System.Collections.Immutable.ImmutableList`1.FindLastIndex(System.Predicate{`0})">
7637 Searches for an element that matches the conditions defined by the specified
7638 predicate, and returns the zero-based index of the last occurrence within
7639 the entire <see cref="T:System.Collections.Immutable.ImmutableList`1"/>.
7641 <param name="match">
7642 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element
7646 The zero-based index of the last occurrence of an element that matches the
7647 conditions defined by <paramref name="match"/>, if found; otherwise, -1.
7650 <member name="M:System.Collections.Immutable.ImmutableList`1.FindLastIndex(System.Int32,System.Predicate{`0})">
7652 Searches for an element that matches the conditions defined by the specified
7653 predicate, and returns the zero-based index of the last occurrence within
7654 the range of elements in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/> that extends
7655 from the first element to the specified index.
7657 <param name="startIndex">The zero-based starting index of the backward search.</param>
7658 <param name="match">The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element
7659 to search for.</param>
7661 The zero-based index of the last occurrence of an element that matches the
7662 conditions defined by <paramref name="match"/>, if found; otherwise, -1.
7665 <member name="M:System.Collections.Immutable.ImmutableList`1.FindLastIndex(System.Int32,System.Int32,System.Predicate{`0})">
7667 Searches for an element that matches the conditions defined by the specified
7668 predicate, and returns the zero-based index of the last occurrence within
7669 the range of elements in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/> that contains
7670 the specified number of elements and ends at the specified index.
7672 <param name="startIndex">The zero-based starting index of the backward search.</param>
7673 <param name="count">The number of elements in the section to search.</param>
7674 <param name="match">
7675 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element
7679 The zero-based index of the last occurrence of an element that matches the
7680 conditions defined by <paramref name="match"/>, if found; otherwise, -1.
7683 <member name="M:System.Collections.Immutable.ImmutableList`1.IndexOf(`0,System.Int32,System.Int32,System.Collections.Generic.IEqualityComparer{`0})">
7685 Searches for the specified object and returns the zero-based index of the
7686 first occurrence within the range of elements in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/>
7687 that starts at the specified index and contains the specified number of elements.
7690 The object to locate in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/>. The value
7691 can be null for reference types.
7693 <param name="index">
7694 The zero-based starting index of the search. 0 (zero) is valid in an empty
7697 <param name="count">
7698 The number of elements in the section to search.
7700 <param name="equalityComparer">
7701 The equality comparer to use in the search.
7704 The zero-based index of the first occurrence of <paramref name="item"/> within the range of
7705 elements in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/> that starts at <paramref name="index"/> and
7706 contains <paramref name="count"/> number of elements, if found; otherwise, -1.
7709 <member name="M:System.Collections.Immutable.ImmutableList`1.LastIndexOf(`0,System.Int32,System.Int32,System.Collections.Generic.IEqualityComparer{`0})">
7711 Searches for the specified object and returns the zero-based index of the
7712 last occurrence within the range of elements in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/>
7713 that contains the specified number of elements and ends at the specified
7717 The object to locate in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/>. The value
7718 can be null for reference types.
7720 <param name="index">The zero-based starting index of the backward search.</param>
7721 <param name="count">The number of elements in the section to search.</param>
7722 <param name="equalityComparer">
7723 The equality comparer to use in the search.
7726 The zero-based index of the last occurrence of <paramref name="item"/> within the range of elements
7727 in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/> that contains <paramref name="count"/> number of elements
7728 and ends at <paramref name="index"/>, if found; otherwise, -1.
7731 <member name="M:System.Collections.Immutable.ImmutableList`1.TrueForAll(System.Predicate{`0})">
7733 Determines whether every element in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/>
7734 matches the conditions defined by the specified predicate.
7736 <param name="match">
7737 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions to check against
7741 true if every element in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/> matches the
7742 conditions defined by the specified predicate; otherwise, false. If the list
7743 has no elements, the return value is true.
7746 <member name="M:System.Collections.Immutable.ImmutableList`1.Contains(`0)">
7748 See the <see cref="T:System.Collections.Immutable.IImmutableList`1"/> interface.
7751 <member name="M:System.Collections.Immutable.ImmutableList`1.IndexOf(`0)">
7753 See the <see cref="T:System.Collections.Immutable.IImmutableList`1"/> interface.
7756 <member name="M:System.Collections.Immutable.ImmutableList`1.System#Collections#Immutable#IImmutableList{T}#Add(`0)">
7758 See the <see cref="T:System.Collections.Immutable.IImmutableList`1"/> interface.
7761 <member name="M:System.Collections.Immutable.ImmutableList`1.System#Collections#Immutable#IImmutableList{T}#AddRange(System.Collections.Generic.IEnumerable{`0})">
7763 See the <see cref="T:System.Collections.Immutable.IImmutableList`1"/> interface.
7766 <member name="M:System.Collections.Immutable.ImmutableList`1.System#Collections#Immutable#IImmutableList{T}#Insert(System.Int32,`0)">
7768 Inserts the specified value at the specified index.
7770 <param name="index">The index at which to insert the value.</param>
7771 <param name="item">The element to add.</param>
7772 <returns>The new immutable list.</returns>
7774 <member name="M:System.Collections.Immutable.ImmutableList`1.System#Collections#Immutable#IImmutableList{T}#InsertRange(System.Int32,System.Collections.Generic.IEnumerable{`0})">
7776 Inserts the specified value at the specified index.
7778 <param name="index">The index at which to insert the value.</param>
7779 <param name="items">The elements to add.</param>
7780 <returns>The new immutable list.</returns>
7782 <member name="M:System.Collections.Immutable.ImmutableList`1.System#Collections#Immutable#IImmutableList{T}#Remove(`0,System.Collections.Generic.IEqualityComparer{`0})">
7784 See the <see cref="T:System.Collections.Immutable.IImmutableList`1"/> interface.
7787 <member name="M:System.Collections.Immutable.ImmutableList`1.System#Collections#Immutable#IImmutableList{T}#RemoveAll(System.Predicate{`0})">
7789 See the <see cref="T:System.Collections.Immutable.IImmutableList`1"/> interface.
7792 <member name="M:System.Collections.Immutable.ImmutableList`1.System#Collections#Immutable#IImmutableList{T}#RemoveRange(System.Collections.Generic.IEnumerable{`0},System.Collections.Generic.IEqualityComparer{`0})">
7794 See the <see cref="T:System.Collections.Immutable.IImmutableList`1"/> interface.
7797 <member name="M:System.Collections.Immutable.ImmutableList`1.System#Collections#Immutable#IImmutableList{T}#RemoveRange(System.Int32,System.Int32)">
7799 See the <see cref="T:System.Collections.Immutable.IImmutableList`1"/> interface.
7802 <member name="M:System.Collections.Immutable.ImmutableList`1.System#Collections#Immutable#IImmutableList{T}#RemoveAt(System.Int32)">
7804 Removes the element at the specified index.
7806 <param name="index">The index.</param>
7807 <returns>A new list with the elements removed.</returns>
7809 <member name="M:System.Collections.Immutable.ImmutableList`1.System#Collections#Immutable#IImmutableList{T}#SetItem(System.Int32,`0)">
7811 Replaces an element in the list at a given position with the specified element.
7813 <param name="index">The position in the list of the element to replace.</param>
7814 <param name="value">The element to replace the old element with.</param>
7815 <returns>The new list.</returns>
7817 <member name="M:System.Collections.Immutable.ImmutableList`1.System#Collections#Immutable#IImmutableList{T}#Replace(`0,`0,System.Collections.Generic.IEqualityComparer{`0})">
7819 Replaces an element in the list with the specified element.
7821 <param name="oldValue">The element to replace.</param>
7822 <param name="newValue">The element to replace the old element with.</param>
7823 <param name="equalityComparer">
7824 The equality comparer to use in the search.
7825 If <c>null</c>, <see cref="P:System.Collections.Generic.EqualityComparer`1.Default"/> is used.
7827 <returns>The new list.</returns>
7828 <exception cref="T:System.ArgumentException">Thrown when the old value does not exist in the list.</exception>
7830 <member name="M:System.Collections.Immutable.ImmutableList`1.System#Collections#Generic#IEnumerable{T}#GetEnumerator">
7832 Returns an enumerator that iterates through the collection.
7835 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
7838 <member name="M:System.Collections.Immutable.ImmutableList`1.System#Collections#IEnumerable#GetEnumerator">
7840 Returns an enumerator that iterates through a collection.
7843 An <see cref="T:System.Collections.IEnumerator"/> object that can be used to iterate through the collection.
7846 <member name="M:System.Collections.Immutable.ImmutableList`1.System#Collections#Generic#IList{T}#Insert(System.Int32,`0)">
7848 Inserts the specified index.
7850 <param name="index">The index.</param>
7851 <param name="item">The item.</param>
7852 <exception cref="T:System.NotSupportedException">Always thrown.</exception>
7854 <member name="M:System.Collections.Immutable.ImmutableList`1.System#Collections#Generic#IList{T}#RemoveAt(System.Int32)">
7856 Removes the value at the specified index.
7858 <param name="index">The index.</param>
7859 <exception cref="T:System.NotSupportedException">Always thrown.</exception>
7861 <member name="P:System.Collections.Immutable.ImmutableList`1.System#Collections#Generic#IList{T}#Item(System.Int32)">
7863 Gets or sets the value at the specified index.
7865 <exception cref="T:System.IndexOutOfRangeException">Thrown from getter when <paramref name="index"/> is negative or not less than <see cref="P:System.Collections.Immutable.ImmutableList`1.Count"/>.</exception>
7866 <exception cref="T:System.NotSupportedException">Always thrown from the setter.</exception>
7868 <member name="M:System.Collections.Immutable.ImmutableList`1.System#Collections#Generic#ICollection{T}#Add(`0)">
7870 Adds the specified item.
7872 <param name="item">The item.</param>
7873 <exception cref="T:System.NotSupportedException">Always thrown.</exception>
7875 <member name="M:System.Collections.Immutable.ImmutableList`1.System#Collections#Generic#ICollection{T}#Clear">
7877 Clears this instance.
7879 <exception cref="T:System.NotSupportedException">Always thrown.</exception>
7881 <member name="P:System.Collections.Immutable.ImmutableList`1.System#Collections#Generic#ICollection{T}#IsReadOnly">
7883 Gets a value indicating whether the <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.
7885 <returns>true if the <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only; otherwise, false.
7888 <member name="M:System.Collections.Immutable.ImmutableList`1.System#Collections#Generic#ICollection{T}#Remove(`0)">
7890 Removes the specified item.
7892 <param name="item">The item.</param>
7893 <returns>Nothing. An exception is always thrown.</returns>
7894 <exception cref="T:System.NotSupportedException">Always thrown.</exception>
7896 <member name="M:System.Collections.Immutable.ImmutableList`1.System#Collections#ICollection#CopyTo(System.Array,System.Int32)">
7898 See the <see cref="T:System.Collections.ICollection"/> interface.
7901 <member name="M:System.Collections.Immutable.ImmutableList`1.System#Collections#IList#Add(System.Object)">
7903 Adds an item to the <see cref="T:System.Collections.IList"/>.
7905 <param name="value">The object to add to the <see cref="T:System.Collections.IList"/>.</param>
7907 Nothing. An exception is always thrown.
7909 <exception cref="T:System.NotSupportedException">Always thrown.</exception>
7911 <member name="M:System.Collections.Immutable.ImmutableList`1.System#Collections#IList#RemoveAt(System.Int32)">
7913 Removes the <see cref="T:System.Collections.IList"/> item at the specified index.
7915 <param name="index">The zero-based index of the item to remove.</param>
7916 <exception cref="T:System.NotSupportedException">Always thrown.</exception>
7918 <member name="M:System.Collections.Immutable.ImmutableList`1.System#Collections#IList#Clear">
7920 Clears this instance.
7922 <exception cref="T:System.NotSupportedException">Always thrown.</exception>
7924 <member name="M:System.Collections.Immutable.ImmutableList`1.System#Collections#IList#Contains(System.Object)">
7926 Determines whether the <see cref="T:System.Collections.IList"/> contains a specific value.
7928 <param name="value">The object to locate in the <see cref="T:System.Collections.IList"/>.</param>
7930 true if the <see cref="T:System.Object"/> is found in the <see cref="T:System.Collections.IList"/>; otherwise, false.
7933 <member name="M:System.Collections.Immutable.ImmutableList`1.System#Collections#IList#IndexOf(System.Object)">
7935 Determines the index of a specific item in the <see cref="T:System.Collections.IList"/>.
7937 <param name="value">The object to locate in the <see cref="T:System.Collections.IList"/>.</param>
7939 The index of <paramref name="value"/> if found in the list; otherwise, -1.
7942 <member name="M:System.Collections.Immutable.ImmutableList`1.System#Collections#IList#Insert(System.Int32,System.Object)">
7944 Inserts an item to the <see cref="T:System.Collections.IList"/> at the specified index.
7946 <param name="index">The zero-based index at which <paramref name="value"/> should be inserted.</param>
7947 <param name="value">The object to insert into the <see cref="T:System.Collections.IList"/>.</param>
7948 <exception cref="T:System.NotSupportedException">Always thrown.</exception>
7950 <member name="P:System.Collections.Immutable.ImmutableList`1.System#Collections#IList#IsFixedSize">
7952 Gets a value indicating whether the <see cref="T:System.Collections.IList"/> has a fixed size.
7954 <returns>true if the <see cref="T:System.Collections.IList"/> has a fixed size; otherwise, false.</returns>
7956 <member name="P:System.Collections.Immutable.ImmutableList`1.System#Collections#IList#IsReadOnly">
7958 Gets a value indicating whether the <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.
7960 <returns>true if the <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only; otherwise, false.
7963 <member name="M:System.Collections.Immutable.ImmutableList`1.System#Collections#IList#Remove(System.Object)">
7965 Removes the first occurrence of a specific object from the <see cref="T:System.Collections.IList"/>.
7967 <param name="value">The object to remove from the <see cref="T:System.Collections.IList"/>.</param>
7968 <exception cref="T:System.NotSupportedException">Always thrown.</exception>
7970 <member name="P:System.Collections.Immutable.ImmutableList`1.System#Collections#IList#Item(System.Int32)">
7972 Gets or sets the <see cref="T:System.Object"/> at the specified index.
7975 The <see cref="T:System.Object"/>.
7977 <param name="index">The index.</param>
7978 <returns>The value at the specified index.</returns>
7979 <exception cref="T:System.IndexOutOfRangeException">Thrown from getter when <paramref name="index"/> is negative or not less than <see cref="P:System.Collections.Immutable.ImmutableList`1.Count"/>.</exception>
7980 <exception cref="T:System.NotSupportedException">Always thrown from the setter.</exception>
7982 <member name="M:System.Collections.Immutable.ImmutableList`1.GetEnumerator">
7984 Returns an enumerator that iterates through the collection.
7987 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
7990 CAUTION: when this enumerator is actually used as a valuetype (not boxed) do NOT copy it by assigning to a second variable
7991 or by passing it to another method. When this enumerator is disposed of it returns a mutable reference type stack to a resource pool,
7992 and if the value type enumerator is copied (which can easily happen unintentionally if you pass the value around) there is a risk
7993 that a stack that has already been returned to the resource pool may still be in use by one of the enumerator copies, leading to data
7994 corruption and/or exceptions.
7997 <member name="P:System.Collections.Immutable.ImmutableList`1.Root">
7999 Returns the root <see cref="T:System.Collections.Immutable.ImmutableList`1.Node"/> of the list
8002 <member name="M:System.Collections.Immutable.ImmutableList`1.WrapNode(System.Collections.Immutable.ImmutableList{`0}.Node)">
8004 Creates a new sorted set wrapper for a node tree.
8006 <param name="root">The root of the collection.</param>
8007 <returns>The immutable sorted set instance.</returns>
8009 <member name="M:System.Collections.Immutable.ImmutableList`1.TryCastToImmutableList(System.Collections.Generic.IEnumerable{`0},System.Collections.Immutable.ImmutableList{`0}@)">
8011 Attempts to discover an <see cref="T:System.Collections.Immutable.ImmutableList`1"/> instance beneath some enumerable sequence
8014 <param name="sequence">The sequence that may have come from an immutable list.</param>
8015 <param name="other">Receives the concrete <see cref="T:System.Collections.Immutable.ImmutableList`1"/> typed value if one can be found.</param>
8016 <returns><c>true</c> if the cast was successful; <c>false</c> otherwise.</returns>
8018 <member name="M:System.Collections.Immutable.ImmutableList`1.IsCompatibleObject(System.Object)">
8020 Tests whether a value is one that might be found in this collection.
8022 <param name="value">The value to test.</param>
8023 <returns><c>true</c> if this value might appear in the collection.</returns>
8025 This implementation comes from <see cref="T:System.Collections.Generic.List`1"/>.
8028 <member name="M:System.Collections.Immutable.ImmutableList`1.Wrap(System.Collections.Immutable.ImmutableList{`0}.Node)">
8030 Creates a wrapping collection type around a root node.
8032 <param name="root">The root node to wrap.</param>
8033 <returns>A wrapping collection type for the new tree.</returns>
8035 <member name="M:System.Collections.Immutable.ImmutableList`1.FillFromEmpty(System.Collections.Generic.IEnumerable{`0})">
8037 Creates an immutable list with the contents from a sequence of elements.
8039 <param name="items">The sequence of elements from which to create the list.</param>
8040 <returns>The immutable list.</returns>
8042 <member name="T:System.Collections.Immutable.ImmutableList`1.Enumerator">
8044 Enumerates the contents of a binary tree.
8047 This struct can and should be kept in exact sync with the other binary tree enumerators:
8048 <see cref="T:System.Collections.Immutable.ImmutableList`1.Enumerator"/>, <see cref="T:System.Collections.Immutable.ImmutableSortedDictionary`2.Enumerator"/>, and <see cref="T:System.Collections.Immutable.ImmutableSortedSet`1.Enumerator"/>.
8050 CAUTION: when this enumerator is actually used as a valuetype (not boxed) do NOT copy it by assigning to a second variable
8051 or by passing it to another method. When this enumerator is disposed of it returns a mutable reference type stack to a resource pool,
8052 and if the value type enumerator is copied (which can easily happen unintentionally if you pass the value around) there is a risk
8053 that a stack that has already been returned to the resource pool may still be in use by one of the enumerator copies, leading to data
8054 corruption and/or exceptions.
8057 <member name="F:System.Collections.Immutable.ImmutableList`1.Enumerator.s_EnumeratingStacks">
8059 The resource pool of reusable mutable stacks for purposes of enumeration.
8062 We utilize this resource pool to make "allocation free" enumeration achievable.
8065 <member name="F:System.Collections.Immutable.ImmutableList`1.Enumerator._builder">
8067 The builder being enumerated, if applicable.
8070 <member name="F:System.Collections.Immutable.ImmutableList`1.Enumerator._poolUserId">
8072 A unique ID for this instance of this enumerator.
8073 Used to protect pooled objects from use after they are recycled.
8076 <member name="F:System.Collections.Immutable.ImmutableList`1.Enumerator._startIndex">
8078 The starting index of the collection at which to begin enumeration.
8081 <member name="F:System.Collections.Immutable.ImmutableList`1.Enumerator._count">
8083 The number of elements to include in the enumeration.
8086 <member name="F:System.Collections.Immutable.ImmutableList`1.Enumerator._remainingCount">
8088 The number of elements left in the enumeration.
8091 <member name="F:System.Collections.Immutable.ImmutableList`1.Enumerator._reversed">
8093 A value indicating whether this enumerator walks in reverse order.
8096 <member name="F:System.Collections.Immutable.ImmutableList`1.Enumerator._root">
8098 The set being enumerated.
8101 <member name="F:System.Collections.Immutable.ImmutableList`1.Enumerator._stack">
8103 The stack to use for enumerating the binary tree.
8106 <member name="F:System.Collections.Immutable.ImmutableList`1.Enumerator._current">
8108 The node currently selected.
8111 <member name="F:System.Collections.Immutable.ImmutableList`1.Enumerator._enumeratingBuilderVersion">
8113 The version of the builder (when applicable) that is being enumerated.
8116 <member name="M:System.Collections.Immutable.ImmutableList`1.Enumerator.#ctor(System.Collections.Immutable.ImmutableList{`0}.Node,System.Collections.Immutable.ImmutableList{`0}.Builder,System.Int32,System.Int32,System.Boolean)">
8118 Initializes an <see cref="T:System.Collections.Immutable.ImmutableList`1.Enumerator"/> structure.
8120 <param name="root">The root of the set to be enumerated.</param>
8121 <param name="builder">The builder, if applicable.</param>
8122 <param name="startIndex">The index of the first element to enumerate.</param>
8123 <param name="count">The number of elements in this collection.</param>
8124 <param name="reversed"><c>true</c> if the list should be enumerated in reverse order.</param>
8126 <member name="P:System.Collections.Immutable.ImmutableList`1.Enumerator.System#Collections#Immutable#ISecurePooledObjectUser#PoolUserId">
8129 <member name="P:System.Collections.Immutable.ImmutableList`1.Enumerator.Current">
8131 The current element.
8134 <member name="P:System.Collections.Immutable.ImmutableList`1.Enumerator.System#Collections#IEnumerator#Current">
8136 The current element.
8139 <member name="M:System.Collections.Immutable.ImmutableList`1.Enumerator.Dispose">
8141 Disposes of this enumerator and returns the stack reference to the resource pool.
8144 <member name="M:System.Collections.Immutable.ImmutableList`1.Enumerator.MoveNext">
8146 Advances enumeration to the next element.
8148 <returns>A value indicating whether there is another element in the enumeration.</returns>
8150 <member name="M:System.Collections.Immutable.ImmutableList`1.Enumerator.Reset">
8152 Restarts enumeration.
8155 <member name="M:System.Collections.Immutable.ImmutableList`1.Enumerator.ResetStack">
8156 <summary>Resets the stack used for enumeration.</summary>
8158 <member name="M:System.Collections.Immutable.ImmutableList`1.Enumerator.NextBranch(System.Collections.Immutable.ImmutableList{`0}.Node)">
8160 Obtains the right branch of the given node (or the left, if walking in reverse).
8163 <member name="M:System.Collections.Immutable.ImmutableList`1.Enumerator.PreviousBranch(System.Collections.Immutable.ImmutableList{`0}.Node)">
8165 Obtains the left branch of the given node (or the right, if walking in reverse).
8168 <member name="M:System.Collections.Immutable.ImmutableList`1.Enumerator.ThrowIfDisposed">
8170 Throws an <see cref="T:System.ObjectDisposedException"/> if this enumerator has been disposed.
8173 <member name="M:System.Collections.Immutable.ImmutableList`1.Enumerator.ThrowIfChanged">
8175 Throws an exception if the underlying builder's contents have been changed since enumeration started.
8177 <exception cref="T:System.InvalidOperationException">Thrown if the collection has changed.</exception>
8179 <member name="M:System.Collections.Immutable.ImmutableList`1.Enumerator.PushNext(System.Collections.Immutable.ImmutableList{`0}.Node)">
8181 Pushes this node and all its Left descendants onto the stack.
8183 <param name="node">The starting node to push onto the stack.</param>
8185 <member name="T:System.Collections.Immutable.ImmutableList`1.Node">
8187 A node in the AVL tree storing this set.
8190 <member name="F:System.Collections.Immutable.ImmutableList`1.Node.EmptyNode">
8192 The default empty node.
8195 <member name="F:System.Collections.Immutable.ImmutableList`1.Node._key">
8197 The key associated with this node.
8200 <member name="F:System.Collections.Immutable.ImmutableList`1.Node._frozen">
8202 A value indicating whether this node has been frozen (made immutable).
8205 Nodes must be frozen before ever being observed by a wrapping collection type
8206 to protect collections from further mutations.
8209 <member name="F:System.Collections.Immutable.ImmutableList`1.Node._height">
8211 The depth of the tree beneath this node.
8214 <member name="F:System.Collections.Immutable.ImmutableList`1.Node._count">
8216 The number of elements contained by this subtree starting at this node.
8219 If this node would benefit from saving 4 bytes, we could have only a few nodes
8220 scattered throughout the graph actually record the count of nodes beneath them.
8221 Those without the count could query their descendants, which would often short-circuit
8222 when they hit a node that *does* include a count field.
8225 <member name="F:System.Collections.Immutable.ImmutableList`1.Node._left">
8230 <member name="F:System.Collections.Immutable.ImmutableList`1.Node._right">
8235 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.#ctor">
8237 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableList`1.Node"/> class
8241 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.#ctor(`0,System.Collections.Immutable.ImmutableList{`0}.Node,System.Collections.Immutable.ImmutableList{`0}.Node,System.Boolean)">
8243 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableList`1.Node"/> class
8244 that is not yet frozen.
8246 <param name="key">The value stored by this node.</param>
8247 <param name="left">The left branch.</param>
8248 <param name="right">The right branch.</param>
8249 <param name="frozen">Whether this node is prefrozen.</param>
8251 <member name="P:System.Collections.Immutable.ImmutableList`1.Node.IsEmpty">
8253 Gets a value indicating whether this instance is empty.
8256 <c>true</c> if this instance is empty; otherwise, <c>false</c>.
8259 <member name="P:System.Collections.Immutable.ImmutableList`1.Node.Height">
8261 Gets the height of the tree beneath this node.
8264 <member name="P:System.Collections.Immutable.ImmutableList`1.Node.Left">
8266 Gets the left branch of this node.
8269 <member name="P:System.Collections.Immutable.ImmutableList`1.Node.System#Collections#Immutable#IBinaryTree#Left">
8271 Gets the left branch of this node.
8274 <member name="P:System.Collections.Immutable.ImmutableList`1.Node.Right">
8276 Gets the right branch of this node.
8279 <member name="P:System.Collections.Immutable.ImmutableList`1.Node.System#Collections#Immutable#IBinaryTree#Right">
8281 Gets the right branch of this node.
8284 <member name="P:System.Collections.Immutable.ImmutableList`1.Node.System#Collections#Immutable#IBinaryTree{T}#Left">
8286 Gets the left branch of this node.
8289 <member name="P:System.Collections.Immutable.ImmutableList`1.Node.System#Collections#Immutable#IBinaryTree{T}#Right">
8291 Gets the right branch of this node.
8294 <member name="P:System.Collections.Immutable.ImmutableList`1.Node.Value">
8296 Gets the value represented by the current node.
8299 <member name="P:System.Collections.Immutable.ImmutableList`1.Node.Count">
8301 Gets the number of elements contained by this subtree starting at this node.
8304 <member name="P:System.Collections.Immutable.ImmutableList`1.Node.Key">
8309 <member name="P:System.Collections.Immutable.ImmutableList`1.Node.Item(System.Int32)">
8311 Gets the element of the set at the given index.
8313 <param name="index">The 0-based index of the element in the set to return.</param>
8314 <returns>The element at the given position.</returns>
8316 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.GetEnumerator">
8318 Returns an enumerator that iterates through the collection.
8321 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
8324 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.System#Collections#Generic#IEnumerable{T}#GetEnumerator">
8326 Returns an enumerator that iterates through the collection.
8329 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
8332 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.System#Collections#IEnumerable#GetEnumerator">
8334 Returns an enumerator that iterates through the collection.
8337 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
8340 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.GetEnumerator(System.Collections.Immutable.ImmutableList{`0}.Builder)">
8342 Returns an enumerator that iterates through the collection.
8344 <param name="builder">The builder, if applicable.</param>
8346 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
8349 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.NodeTreeFromList(System.Collections.Immutable.IOrderedCollection{`0},System.Int32,System.Int32)">
8351 Creates a node tree that contains the contents of a list.
8353 <param name="items">An indexable list with the contents that the new node tree should contain.</param>
8354 <param name="start">The starting index within <paramref name="items"/> that should be captured by the node tree.</param>
8355 <param name="length">The number of elements from <paramref name="items"/> that should be captured by the node tree.</param>
8356 <returns>The root of the created node tree.</returns>
8358 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.Add(`0)">
8360 Adds the specified key to the tree.
8362 <param name="key">The key.</param>
8363 <returns>The new tree.</returns>
8365 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.Insert(System.Int32,`0)">
8367 Adds a value at a given index to this node.
8369 <param name="index">The location for the new value.</param>
8370 <param name="key">The value to add.</param>
8371 <returns>The new tree.</returns>
8373 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.AddRange(System.Collections.Generic.IEnumerable{`0})">
8375 Adds the specified keys to the tree.
8377 <param name="keys">The keys.</param>
8378 <returns>The new tree.</returns>
8380 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.InsertRange(System.Int32,System.Collections.Generic.IEnumerable{`0})">
8382 Adds a collection of values at a given index to this node.
8384 <param name="index">The location for the new values.</param>
8385 <param name="keys">The values to add.</param>
8386 <returns>The new tree.</returns>
8388 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.RemoveAt(System.Int32)">
8390 Removes a value at a given index to this node.
8392 <param name="index">The location for the new value.</param>
8393 <returns>The new tree.</returns>
8395 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.RemoveAll(System.Predicate{`0})">
8397 Removes all the elements that match the conditions defined by the specified
8400 <param name="match">
8401 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the elements
8408 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.ReplaceAt(System.Int32,`0)">
8410 Replaces a value at a given index.
8412 <param name="index">The location for the new value.</param>
8413 <param name="value">The new value for the node.</param>
8414 <returns>The new tree.</returns>
8416 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.Reverse">
8418 Reverses the order of the elements in the entire <see cref="T:System.Collections.Immutable.ImmutableList`1"/>.
8420 <returns>The reversed list.</returns>
8422 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.Reverse(System.Int32,System.Int32)">
8424 Reverses the order of the elements in the specified range.
8426 <param name="index">The zero-based starting index of the range to reverse.</param>
8427 <param name="count">The number of elements in the range to reverse.</param>
8428 <returns>The reversed list.</returns>
8430 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.Sort">
8432 Sorts the elements in the entire <see cref="T:System.Collections.Immutable.ImmutableList`1"/> using
8433 the default comparer.
8436 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.Sort(System.Comparison{`0})">
8438 Sorts the elements in the entire <see cref="T:System.Collections.Immutable.ImmutableList`1"/> using
8439 the specified <see cref="T:System.Comparison`1"/>.
8441 <param name="comparison">
8442 The <see cref="T:System.Comparison`1"/> to use when comparing elements.
8444 <returns>The sorted list.</returns>
8446 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.Sort(System.Collections.Generic.IComparer{`0})">
8448 Sorts the elements in the entire <see cref="T:System.Collections.Immutable.ImmutableList`1"/> using
8449 the specified comparer.
8451 <param name="comparer">
8452 The <see cref="T:System.Collections.Generic.IComparer`1"/> implementation to use when comparing
8453 elements, or null to use the default comparer <see cref="P:System.Collections.Generic.Comparer`1.Default"/>.
8455 <returns>The sorted list.</returns>
8457 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.Sort(System.Int32,System.Int32,System.Collections.Generic.IComparer{`0})">
8459 Sorts the elements in a range of elements in <see cref="T:System.Collections.Immutable.ImmutableList`1"/>
8460 using the specified comparer.
8462 <param name="index">
8463 The zero-based starting index of the range to sort.
8465 <param name="count">
8466 The length of the range to sort.
8468 <param name="comparer">
8469 The <see cref="T:System.Collections.Generic.IComparer`1"/> implementation to use when comparing
8470 elements, or null to use the default comparer <see cref="P:System.Collections.Generic.Comparer`1.Default"/>.
8472 <returns>The sorted list.</returns>
8474 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.BinarySearch(System.Int32,System.Int32,`0,System.Collections.Generic.IComparer{`0})">
8476 Searches a range of elements in the sorted <see cref="T:System.Collections.Immutable.ImmutableList`1"/>
8477 for an element using the specified comparer and returns the zero-based index
8480 <param name="index">The zero-based starting index of the range to search.</param>
8481 <param name="count"> The length of the range to search.</param>
8482 <param name="item">The object to locate. The value can be null for reference types.</param>
8483 <param name="comparer">
8484 The <see cref="T:System.Collections.Generic.IComparer`1"/> implementation to use when comparing
8485 elements, or null to use the default comparer <see cref="P:System.Collections.Generic.Comparer`1.Default"/>.
8488 The zero-based index of item in the sorted <see cref="T:System.Collections.Immutable.ImmutableList`1"/>,
8489 if item is found; otherwise, a negative number that is the bitwise complement
8490 of the index of the next element that is larger than item or, if there is
8491 no larger element, the bitwise complement of <see cref="P:System.Collections.Immutable.ImmutableList`1.Count"/>.
8493 <exception cref="T:System.ArgumentOutOfRangeException">
8494 <paramref name="index"/> is less than 0.-or-<paramref name="count"/> is less than 0.
8496 <exception cref="T:System.ArgumentException">
8497 <paramref name="index"/> and <paramref name="count"/> do not denote a valid range in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/>.
8499 <exception cref="T:System.InvalidOperationException">
8500 <paramref name="comparer"/> is null, and the default comparer <see cref="P:System.Collections.Generic.Comparer`1.Default"/>
8501 cannot find an implementation of the <see cref="T:System.IComparable`1"/> generic interface
8502 or the <see cref="T:System.IComparable"/> interface for type <typeparamref name="T"/>.
8505 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.IndexOf(`0,System.Collections.Generic.IEqualityComparer{`0})">
8507 Searches for the specified object and returns the zero-based index of the
8508 first occurrence within the range of elements in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/>
8509 that starts at the specified index and contains the specified number of elements.
8512 The object to locate in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/>. The value
8513 can be null for reference types.
8515 <param name="equalityComparer">The equality comparer to use for testing the match of two elements.</param>
8517 The zero-based index of the first occurrence of <paramref name="item"/> within the entire
8518 <see cref="T:System.Collections.Immutable.ImmutableList`1"/>, if found; otherwise, -1.
8521 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.IndexOf(`0,System.Int32,System.Int32,System.Collections.Generic.IEqualityComparer{`0})">
8523 Searches for the specified object and returns the zero-based index of the
8524 first occurrence within the range of elements in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/>
8525 that starts at the specified index and contains the specified number of elements.
8528 The object to locate in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/>. The value
8529 can be null for reference types.
8531 <param name="index">
8532 The zero-based starting index of the search. 0 (zero) is valid in an empty
8535 <param name="count">
8536 The number of elements in the section to search.
8538 <param name="equalityComparer">
8539 The equality comparer to use in the search.
8540 If <c>null</c>, <see cref="P:System.Collections.Generic.EqualityComparer`1.Default"/> is used.
8543 The zero-based index of the first occurrence of <paramref name="item"/> within the range of
8544 elements in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/> that starts at <paramref name="index"/> and
8545 contains <paramref name="count"/> number of elements, if found; otherwise, -1.
8548 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.LastIndexOf(`0,System.Int32,System.Int32,System.Collections.Generic.IEqualityComparer{`0})">
8550 Searches for the specified object and returns the zero-based index of the
8551 last occurrence within the range of elements in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/>
8552 that contains the specified number of elements and ends at the specified
8556 The object to locate in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/>. The value
8557 can be null for reference types.
8559 <param name="index">The zero-based starting index of the backward search.</param>
8560 <param name="count">The number of elements in the section to search.</param>
8561 <param name="equalityComparer">The equality comparer to use for testing the match of two elements.</param>
8563 The zero-based index of the last occurrence of <paramref name="item"/> within the range of elements
8564 in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/> that contains <paramref name="count"/> number of elements
8565 and ends at <paramref name="index"/>, if found; otherwise, -1.
8568 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.CopyTo(`0[])">
8570 Copies the entire <see cref="T:System.Collections.Immutable.ImmutableList`1"/> to a compatible one-dimensional
8571 array, starting at the beginning of the target array.
8573 <param name="array">
8574 The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements
8575 copied from <see cref="T:System.Collections.Immutable.ImmutableList`1"/>. The <see cref="T:System.Array"/> must have
8576 zero-based indexing.
8579 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.CopyTo(`0[],System.Int32)">
8581 Copies the entire <see cref="T:System.Collections.Immutable.ImmutableList`1"/> to a compatible one-dimensional
8582 array, starting at the specified index of the target array.
8584 <param name="array">
8585 The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements
8586 copied from <see cref="T:System.Collections.Immutable.ImmutableList`1"/>. The <see cref="T:System.Array"/> must have
8587 zero-based indexing.
8589 <param name="arrayIndex">
8590 The zero-based index in <paramref name="array"/> at which copying begins.
8593 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.CopyTo(System.Int32,`0[],System.Int32,System.Int32)">
8595 Copies a range of elements from the <see cref="T:System.Collections.Immutable.ImmutableList`1"/> to
8596 a compatible one-dimensional array, starting at the specified index of the
8599 <param name="index">
8600 The zero-based index in the source <see cref="T:System.Collections.Immutable.ImmutableList`1"/> at
8601 which copying begins.
8603 <param name="array">
8604 The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements
8605 copied from <see cref="T:System.Collections.Immutable.ImmutableList`1"/>. The <see cref="T:System.Array"/> must have
8606 zero-based indexing.
8608 <param name="arrayIndex">The zero-based index in <paramref name="array"/> at which copying begins.</param>
8609 <param name="count">The number of elements to copy.</param>
8611 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.CopyTo(System.Array,System.Int32)">
8613 Copies the elements of the <see cref="T:System.Collections.ICollection"/> to an <see cref="T:System.Array"/>, starting at a particular <see cref="T:System.Array"/> index.
8615 <param name="array">The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements copied from <see cref="T:System.Collections.ICollection"/>. The <see cref="T:System.Array"/> must have zero-based indexing.</param>
8616 <param name="arrayIndex">The zero-based index in <paramref name="array"/> at which copying begins.</param>
8618 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.ConvertAll``1(System.Func{`0,``0})">
8620 Converts the elements in the current <see cref="T:System.Collections.Immutable.ImmutableList`1"/> to
8621 another type, and returns a list containing the converted elements.
8623 <param name="converter">
8624 A <see cref="T:System.Func`2"/> delegate that converts each element from
8625 one type to another type.
8627 <typeparam name="TOutput">
8628 The type of the elements of the target array.
8631 A node tree with the transformed list.
8634 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.TrueForAll(System.Predicate{`0})">
8636 Determines whether every element in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/>
8637 matches the conditions defined by the specified predicate.
8639 <param name="match">
8640 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions to check against
8644 true if every element in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/> matches the
8645 conditions defined by the specified predicate; otherwise, false. If the list
8646 has no elements, the return value is true.
8649 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.Exists(System.Predicate{`0})">
8651 Determines whether the <see cref="T:System.Collections.Immutable.ImmutableList`1"/> contains elements
8652 that match the conditions defined by the specified predicate.
8654 <param name="match">
8655 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the elements
8659 true if the <see cref="T:System.Collections.Immutable.ImmutableList`1"/> contains one or more elements
8660 that match the conditions defined by the specified predicate; otherwise,
8664 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.Find(System.Predicate{`0})">
8666 Searches for an element that matches the conditions defined by the specified
8667 predicate, and returns the first occurrence within the entire <see cref="T:System.Collections.Immutable.ImmutableList`1"/>.
8669 <param name="match">
8670 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element
8674 The first element that matches the conditions defined by the specified predicate,
8675 if found; otherwise, the default value for type <typeparamref name="T"/>.
8678 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.FindAll(System.Predicate{`0})">
8680 Retrieves all the elements that match the conditions defined by the specified
8683 <param name="match">
8684 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the elements
8688 A <see cref="T:System.Collections.Immutable.ImmutableList`1"/> containing all the elements that match
8689 the conditions defined by the specified predicate, if found; otherwise, an
8690 empty <see cref="T:System.Collections.Immutable.ImmutableList`1"/>.
8693 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.FindIndex(System.Predicate{`0})">
8695 Searches for an element that matches the conditions defined by the specified
8696 predicate, and returns the zero-based index of the first occurrence within
8697 the entire <see cref="T:System.Collections.Immutable.ImmutableList`1"/>.
8699 <param name="match">
8700 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element
8704 The zero-based index of the first occurrence of an element that matches the
8705 conditions defined by <paramref name="match"/>, if found; otherwise, -1.
8708 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.FindIndex(System.Int32,System.Predicate{`0})">
8710 Searches for an element that matches the conditions defined by the specified
8711 predicate, and returns the zero-based index of the first occurrence within
8712 the range of elements in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/> that extends
8713 from the specified index to the last element.
8715 <param name="startIndex">The zero-based starting index of the search.</param>
8716 <param name="match">The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element to search for.</param>
8718 The zero-based index of the first occurrence of an element that matches the
8719 conditions defined by <paramref name="match"/>, if found; otherwise, -1.
8722 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.FindIndex(System.Int32,System.Int32,System.Predicate{`0})">
8724 Searches for an element that matches the conditions defined by the specified
8725 predicate, and returns the zero-based index of the first occurrence within
8726 the range of elements in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/> that starts
8727 at the specified index and contains the specified number of elements.
8729 <param name="startIndex">The zero-based starting index of the search.</param>
8730 <param name="count">The number of elements in the section to search.</param>
8731 <param name="match">The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element to search for.</param>
8733 The zero-based index of the first occurrence of an element that matches the
8734 conditions defined by <paramref name="match"/>, if found; otherwise, -1.
8737 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.FindLast(System.Predicate{`0})">
8739 Searches for an element that matches the conditions defined by the specified
8740 predicate, and returns the last occurrence within the entire <see cref="T:System.Collections.Immutable.ImmutableList`1"/>.
8742 <param name="match">
8743 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element
8747 The last element that matches the conditions defined by the specified predicate,
8748 if found; otherwise, the default value for type <typeparamref name="T"/>.
8751 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.FindLastIndex(System.Predicate{`0})">
8753 Searches for an element that matches the conditions defined by the specified
8754 predicate, and returns the zero-based index of the last occurrence within
8755 the entire <see cref="T:System.Collections.Immutable.ImmutableList`1"/>.
8757 <param name="match">
8758 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element
8762 The zero-based index of the last occurrence of an element that matches the
8763 conditions defined by <paramref name="match"/>, if found; otherwise, -1.
8766 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.FindLastIndex(System.Int32,System.Predicate{`0})">
8768 Searches for an element that matches the conditions defined by the specified
8769 predicate, and returns the zero-based index of the last occurrence within
8770 the range of elements in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/> that extends
8771 from the first element to the specified index.
8773 <param name="startIndex">The zero-based starting index of the backward search.</param>
8774 <param name="match">The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element
8775 to search for.</param>
8777 The zero-based index of the last occurrence of an element that matches the
8778 conditions defined by <paramref name="match"/>, if found; otherwise, -1.
8781 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.FindLastIndex(System.Int32,System.Int32,System.Predicate{`0})">
8783 Searches for an element that matches the conditions defined by the specified
8784 predicate, and returns the zero-based index of the last occurrence within
8785 the range of elements in the <see cref="T:System.Collections.Immutable.ImmutableList`1"/> that contains
8786 the specified number of elements and ends at the specified index.
8788 <param name="startIndex">The zero-based starting index of the backward search.</param>
8789 <param name="count">The number of elements in the section to search.</param>
8790 <param name="match">
8791 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element
8795 The zero-based index of the last occurrence of an element that matches the
8796 conditions defined by <paramref name="match"/>, if found; otherwise, -1.
8799 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.Freeze">
8801 Freezes this node and all descendant nodes so that any mutations require a new instance of the nodes.
8804 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.RotateLeft(System.Collections.Immutable.ImmutableList{`0}.Node)">
8806 AVL rotate left operation.
8808 <param name="tree">The tree.</param>
8809 <returns>The rotated tree.</returns>
8811 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.RotateRight(System.Collections.Immutable.ImmutableList{`0}.Node)">
8813 AVL rotate right operation.
8815 <param name="tree">The tree.</param>
8816 <returns>The rotated tree.</returns>
8818 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.DoubleLeft(System.Collections.Immutable.ImmutableList{`0}.Node)">
8820 AVL rotate double-left operation.
8822 <param name="tree">The tree.</param>
8823 <returns>The rotated tree.</returns>
8825 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.DoubleRight(System.Collections.Immutable.ImmutableList{`0}.Node)">
8827 AVL rotate double-right operation.
8829 <param name="tree">The tree.</param>
8830 <returns>The rotated tree.</returns>
8832 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.Balance(System.Collections.Immutable.ImmutableList{`0}.Node)">
8834 Returns a value indicating whether the tree is in balance.
8836 <param name="tree">The tree.</param>
8837 <returns>0 if the tree is in balance, a positive integer if the right side is heavy, or a negative integer if the left side is heavy.</returns>
8839 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.IsRightHeavy(System.Collections.Immutable.ImmutableList{`0}.Node)">
8841 Determines whether the specified tree is right heavy.
8843 <param name="tree">The tree.</param>
8845 <c>true</c> if [is right heavy] [the specified tree]; otherwise, <c>false</c>.
8848 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.IsLeftHeavy(System.Collections.Immutable.ImmutableList{`0}.Node)">
8850 Determines whether the specified tree is left heavy.
8853 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.MakeBalanced(System.Collections.Immutable.ImmutableList{`0}.Node)">
8855 Balances the specified tree.
8857 <param name="tree">The tree.</param>
8858 <returns>A balanced tree.</returns>
8860 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.BalanceNode(System.Collections.Immutable.ImmutableList{`0}.Node)">
8862 Balance the specified node. Allows for a large imbalance between left and
8863 right nodes, but assumes left and right nodes are individually balanced.
8865 <param name="node">The node.</param>
8866 <returns>A balanced node</returns>
8868 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.Mutate(System.Collections.Immutable.ImmutableList{`0}.Node,System.Collections.Immutable.ImmutableList{`0}.Node)">
8870 Creates a node mutation, either by mutating this node (if not yet frozen) or by creating a clone of this node
8871 with the described changes.
8873 <param name="left">The left branch of the mutated node.</param>
8874 <param name="right">The right branch of the mutated node.</param>
8875 <returns>The mutated (or created) node.</returns>
8877 <member name="M:System.Collections.Immutable.ImmutableList`1.Node.Mutate(`0)">
8879 Creates a node mutation, either by mutating this node (if not yet frozen) or by creating a clone of this node
8880 with the described changes.
8882 <param name="value">The new value for this node.</param>
8883 <returns>The mutated (or created) node.</returns>
8885 <member name="T:System.Collections.Immutable.ImmutableListBuilderDebuggerProxy`1">
8887 A simple view of the immutable list that the debugger can show to the developer.
8890 <member name="F:System.Collections.Immutable.ImmutableListBuilderDebuggerProxy`1._list">
8892 The collection to be enumerated.
8895 <member name="F:System.Collections.Immutable.ImmutableListBuilderDebuggerProxy`1._cachedContents">
8897 The simple view of the collection.
8900 <member name="M:System.Collections.Immutable.ImmutableListBuilderDebuggerProxy`1.#ctor(System.Collections.Immutable.ImmutableList{`0}.Builder)">
8902 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableListBuilderDebuggerProxy`1"/> class.
8904 <param name="builder">The list to display in the debugger</param>
8906 <member name="P:System.Collections.Immutable.ImmutableListBuilderDebuggerProxy`1.Contents">
8908 Gets a simple debugger-viewable list.
8911 <member name="T:System.Collections.Immutable.ImmutableListDebuggerProxy`1">
8913 A simple view of the immutable list that the debugger can show to the developer.
8916 <member name="F:System.Collections.Immutable.ImmutableListDebuggerProxy`1._list">
8918 The collection to be enumerated.
8921 <member name="F:System.Collections.Immutable.ImmutableListDebuggerProxy`1._cachedContents">
8923 The simple view of the collection.
8926 <member name="M:System.Collections.Immutable.ImmutableListDebuggerProxy`1.#ctor(System.Collections.Immutable.ImmutableList{`0})">
8928 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableListDebuggerProxy`1"/> class.
8930 <param name="list">The list to display in the debugger</param>
8932 <member name="P:System.Collections.Immutable.ImmutableListDebuggerProxy`1.Contents">
8934 Gets a simple debugger-viewable list.
8937 <member name="T:System.Collections.Immutable.ImmutableQueue">
8939 A set of initialization methods for instances of <see cref="T:System.Collections.Immutable.ImmutableQueue`1"/>.
8942 <member name="M:System.Collections.Immutable.ImmutableQueue.Create``1">
8944 Returns an empty collection.
8946 <typeparam name="T">The type of items stored by the collection.</typeparam>
8947 <returns>The immutable collection.</returns>
8949 <member name="M:System.Collections.Immutable.ImmutableQueue.Create``1(``0)">
8951 Creates a new immutable collection prefilled with the specified item.
8953 <typeparam name="T">The type of items stored by the collection.</typeparam>
8954 <param name="item">The item to prepopulate.</param>
8955 <returns>The new immutable collection.</returns>
8957 <member name="M:System.Collections.Immutable.ImmutableQueue.CreateRange``1(System.Collections.Generic.IEnumerable{``0})">
8959 Creates a new immutable collection prefilled with the specified items.
8961 <typeparam name="T">The type of items stored by the collection.</typeparam>
8962 <param name="items">The items to prepopulate.</param>
8963 <returns>The new immutable collection.</returns>
8965 <member name="M:System.Collections.Immutable.ImmutableQueue.Create``1(``0[])">
8967 Creates a new immutable collection prefilled with the specified items.
8969 <typeparam name="T">The type of items stored by the collection.</typeparam>
8970 <param name="items">The items to prepopulate.</param>
8971 <returns>The new immutable collection.</returns>
8973 <member name="M:System.Collections.Immutable.ImmutableQueue.Dequeue``1(System.Collections.Immutable.IImmutableQueue{``0},``0@)">
8975 Retrieves the item at the head of the queue, and returns a queue with the head element removed.
8977 <typeparam name="T">The type of elements stored in the queue.</typeparam>
8978 <param name="queue">The queue to dequeue from.</param>
8979 <param name="value">Receives the value from the head of the queue.</param>
8980 <returns>The new queue with the head element removed.</returns>
8981 <exception cref="T:System.InvalidOperationException">Thrown when the stack is empty.</exception>
8983 <member name="T:System.Collections.Immutable.ImmutableQueue`1">
8987 <typeparam name="T">The type of elements stored in the queue.</typeparam>
8989 <member name="F:System.Collections.Immutable.ImmutableQueue`1.s_EmptyField">
8991 The singleton empty queue.
8994 Additional instances representing the empty queue may exist on deserialized instances.
8995 Actually since this queue is a struct, instances don't even apply and there are no singletons.
8998 <member name="F:System.Collections.Immutable.ImmutableQueue`1._backwards">
9000 The end of the queue that enqueued elements are pushed onto.
9003 <member name="F:System.Collections.Immutable.ImmutableQueue`1._forwards">
9005 The end of the queue from which elements are dequeued.
9008 <member name="F:System.Collections.Immutable.ImmutableQueue`1._backwardsReversed">
9010 Backing field for the <see cref="P:System.Collections.Immutable.ImmutableQueue`1.BackwardsReversed"/> property.
9013 <member name="M:System.Collections.Immutable.ImmutableQueue`1.#ctor(System.Collections.Immutable.ImmutableStack{`0},System.Collections.Immutable.ImmutableStack{`0})">
9015 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableQueue`1"/> class.
9017 <param name="forward">The forward stack.</param>
9018 <param name="backward">The backward stack.</param>
9020 <member name="M:System.Collections.Immutable.ImmutableQueue`1.Clear">
9022 Gets the empty queue.
9025 <member name="P:System.Collections.Immutable.ImmutableQueue`1.IsEmpty">
9027 Gets a value indicating whether this instance is empty.
9030 <c>true</c> if this instance is empty; otherwise, <c>false</c>.
9033 <member name="P:System.Collections.Immutable.ImmutableQueue`1.Empty">
9035 Gets the empty queue.
9038 <member name="M:System.Collections.Immutable.ImmutableQueue`1.System#Collections#Immutable#IImmutableQueue{T}#Clear">
9040 Gets an empty queue.
9043 <member name="P:System.Collections.Immutable.ImmutableQueue`1.BackwardsReversed">
9045 Gets the reversed <see cref="F:System.Collections.Immutable.ImmutableQueue`1._backwards"/> stack.
9048 <member name="M:System.Collections.Immutable.ImmutableQueue`1.Peek">
9050 Gets the element at the front of the queue.
9052 <exception cref="T:System.InvalidOperationException">Thrown when the queue is empty.</exception>
9054 <member name="M:System.Collections.Immutable.ImmutableQueue`1.Enqueue(`0)">
9056 Adds an element to the back of the queue.
9058 <param name="value">The value.</param>
9063 <member name="M:System.Collections.Immutable.ImmutableQueue`1.System#Collections#Immutable#IImmutableQueue{T}#Enqueue(`0)">
9065 Adds an element to the back of the queue.
9067 <param name="value">The value.</param>
9072 <member name="M:System.Collections.Immutable.ImmutableQueue`1.Dequeue">
9074 Returns a queue that is missing the front element.
9076 <returns>A queue; never <c>null</c>.</returns>
9077 <exception cref="T:System.InvalidOperationException">Thrown when the queue is empty.</exception>
9079 <member name="M:System.Collections.Immutable.ImmutableQueue`1.Dequeue(`0@)">
9081 Retrieves the item at the head of the queue, and returns a queue with the head element removed.
9083 <param name="value">Receives the value from the head of the queue.</param>
9084 <returns>The new queue with the head element removed.</returns>
9085 <exception cref="T:System.InvalidOperationException">Thrown when the queue is empty.</exception>
9087 <member name="M:System.Collections.Immutable.ImmutableQueue`1.System#Collections#Immutable#IImmutableQueue{T}#Dequeue">
9089 Returns a queue that is missing the front element.
9091 <returns>A queue; never <c>null</c>.</returns>
9092 <exception cref="T:System.InvalidOperationException">Thrown when the queue is empty.</exception>
9094 <member name="M:System.Collections.Immutable.ImmutableQueue`1.GetEnumerator">
9096 Returns an enumerator that iterates through the collection.
9099 An <see cref="T:System.Collections.Immutable.ImmutableQueue`1.Enumerator"/> that can be used to iterate through the collection.
9102 <member name="M:System.Collections.Immutable.ImmutableQueue`1.System#Collections#Generic#IEnumerable{T}#GetEnumerator">
9104 Returns an enumerator that iterates through the collection.
9107 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
9110 <member name="M:System.Collections.Immutable.ImmutableQueue`1.System#Collections#IEnumerable#GetEnumerator">
9112 Returns an enumerator that iterates through a collection.
9115 An <see cref="T:System.Collections.IEnumerator"/> object that can be used to iterate through the collection.
9118 <member name="T:System.Collections.Immutable.ImmutableQueue`1.Enumerator">
9120 A memory allocation-free enumerator of <see cref="T:System.Collections.Immutable.ImmutableQueue`1"/>.
9123 <member name="F:System.Collections.Immutable.ImmutableQueue`1.Enumerator._originalQueue">
9125 The original queue being enumerated.
9128 <member name="F:System.Collections.Immutable.ImmutableQueue`1.Enumerator._remainingForwardsStack">
9130 The remaining forwards stack of the queue being enumerated.
9133 <member name="F:System.Collections.Immutable.ImmutableQueue`1.Enumerator._remainingBackwardsStack">
9135 The remaining backwards stack of the queue being enumerated.
9136 Its order is reversed when the field is first initialized.
9139 <member name="M:System.Collections.Immutable.ImmutableQueue`1.Enumerator.#ctor(System.Collections.Immutable.ImmutableQueue{`0})">
9141 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableQueue`1.Enumerator"/> struct.
9143 <param name="queue">The queue to enumerate.</param>
9145 <member name="P:System.Collections.Immutable.ImmutableQueue`1.Enumerator.Current">
9147 The current element.
9150 <member name="M:System.Collections.Immutable.ImmutableQueue`1.Enumerator.MoveNext">
9152 Advances enumeration to the next element.
9154 <returns>A value indicating whether there is another element in the enumeration.</returns>
9156 <member name="T:System.Collections.Immutable.ImmutableQueue`1.EnumeratorObject">
9158 A memory allocation-free enumerator of <see cref="T:System.Collections.Immutable.ImmutableQueue`1"/>.
9161 <member name="F:System.Collections.Immutable.ImmutableQueue`1.EnumeratorObject._originalQueue">
9163 The original queue being enumerated.
9166 <member name="F:System.Collections.Immutable.ImmutableQueue`1.EnumeratorObject._remainingForwardsStack">
9168 The remaining forwards stack of the queue being enumerated.
9171 <member name="F:System.Collections.Immutable.ImmutableQueue`1.EnumeratorObject._remainingBackwardsStack">
9173 The remaining backwards stack of the queue being enumerated.
9174 Its order is reversed when the field is first initialized.
9177 <member name="F:System.Collections.Immutable.ImmutableQueue`1.EnumeratorObject._disposed">
9179 A value indicating whether this enumerator has been disposed.
9182 <member name="M:System.Collections.Immutable.ImmutableQueue`1.EnumeratorObject.#ctor(System.Collections.Immutable.ImmutableQueue{`0})">
9184 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableQueue`1.Enumerator"/> struct.
9186 <param name="queue">The queue to enumerate.</param>
9188 <member name="P:System.Collections.Immutable.ImmutableQueue`1.EnumeratorObject.Current">
9190 The current element.
9193 <member name="P:System.Collections.Immutable.ImmutableQueue`1.EnumeratorObject.System#Collections#IEnumerator#Current">
9195 The current element.
9198 <member name="M:System.Collections.Immutable.ImmutableQueue`1.EnumeratorObject.MoveNext">
9200 Advances enumeration to the next element.
9202 <returns>A value indicating whether there is another element in the enumeration.</returns>
9204 <member name="M:System.Collections.Immutable.ImmutableQueue`1.EnumeratorObject.Reset">
9206 Restarts enumeration.
9209 <member name="M:System.Collections.Immutable.ImmutableQueue`1.EnumeratorObject.Dispose">
9211 Disposes this instance.
9214 <member name="M:System.Collections.Immutable.ImmutableQueue`1.EnumeratorObject.ThrowIfDisposed">
9216 Throws an <see cref="T:System.ObjectDisposedException"/> if this
9217 enumerator has already been disposed.
9220 <member name="T:System.Collections.Immutable.ImmutableQueueDebuggerProxy`1">
9222 A simple view of the immutable collection that the debugger can show to the developer.
9225 <member name="F:System.Collections.Immutable.ImmutableQueueDebuggerProxy`1._queue">
9227 The collection to be enumerated.
9230 <member name="F:System.Collections.Immutable.ImmutableQueueDebuggerProxy`1._contents">
9232 The simple view of the collection.
9235 <member name="M:System.Collections.Immutable.ImmutableQueueDebuggerProxy`1.#ctor(System.Collections.Immutable.ImmutableQueue{`0})">
9237 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableQueueDebuggerProxy`1"/> class.
9239 <param name="queue">The collection to display in the debugger</param>
9241 <member name="P:System.Collections.Immutable.ImmutableQueueDebuggerProxy`1.Contents">
9243 Gets a simple debugger-viewable collection.
9246 <member name="T:System.Collections.Immutable.ImmutableSortedDictionary">
9248 A set of initialization methods for instances of <see cref="T:System.Collections.Immutable.ImmutableSortedDictionary`2"/>.
9251 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary.Create``2">
9253 Returns an empty collection.
9255 <typeparam name="TKey">The type of keys stored by the dictionary.</typeparam>
9256 <typeparam name="TValue">The type of values stored by the dictionary.</typeparam>
9257 <returns>The immutable collection.</returns>
9259 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary.Create``2(System.Collections.Generic.IComparer{``0})">
9261 Returns an empty collection.
9263 <typeparam name="TKey">The type of keys stored by the dictionary.</typeparam>
9264 <typeparam name="TValue">The type of values stored by the dictionary.</typeparam>
9265 <param name="keyComparer">The key comparer.</param>
9266 <returns>The immutable collection.</returns>
9268 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary.Create``2(System.Collections.Generic.IComparer{``0},System.Collections.Generic.IEqualityComparer{``1})">
9270 Returns an empty collection.
9272 <typeparam name="TKey">The type of keys stored by the dictionary.</typeparam>
9273 <typeparam name="TValue">The type of values stored by the dictionary.</typeparam>
9274 <param name="keyComparer">The key comparer.</param>
9275 <param name="valueComparer">The value comparer.</param>
9276 <returns>The immutable collection.</returns>
9278 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary.CreateRange``2(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{``0,``1}})">
9280 Creates a new immutable collection prefilled with the specified items.
9282 <typeparam name="TKey">The type of keys stored by the dictionary.</typeparam>
9283 <typeparam name="TValue">The type of values stored by the dictionary.</typeparam>
9284 <param name="items">The items to prepopulate.</param>
9285 <returns>The new immutable collection.</returns>
9287 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary.CreateRange``2(System.Collections.Generic.IComparer{``0},System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{``0,``1}})">
9289 Creates a new immutable collection prefilled with the specified items.
9291 <typeparam name="TKey">The type of keys stored by the dictionary.</typeparam>
9292 <typeparam name="TValue">The type of values stored by the dictionary.</typeparam>
9293 <param name="keyComparer">The key comparer.</param>
9294 <param name="items">The items to prepopulate.</param>
9295 <returns>The new immutable collection.</returns>
9297 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary.CreateRange``2(System.Collections.Generic.IComparer{``0},System.Collections.Generic.IEqualityComparer{``1},System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{``0,``1}})">
9299 Creates a new immutable collection prefilled with the specified items.
9301 <typeparam name="TKey">The type of keys stored by the dictionary.</typeparam>
9302 <typeparam name="TValue">The type of values stored by the dictionary.</typeparam>
9303 <param name="keyComparer">The key comparer.</param>
9304 <param name="valueComparer">The value comparer.</param>
9305 <param name="items">The items to prepopulate.</param>
9306 <returns>The new immutable collection.</returns>
9308 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary.CreateBuilder``2">
9310 Creates a new immutable sorted dictionary builder.
9312 <typeparam name="TKey">The type of keys stored by the dictionary.</typeparam>
9313 <typeparam name="TValue">The type of values stored by the dictionary.</typeparam>
9314 <returns>The immutable collection builder.</returns>
9316 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary.CreateBuilder``2(System.Collections.Generic.IComparer{``0})">
9318 Creates a new immutable sorted dictionary builder.
9320 <typeparam name="TKey">The type of keys stored by the dictionary.</typeparam>
9321 <typeparam name="TValue">The type of values stored by the dictionary.</typeparam>
9322 <param name="keyComparer">The key comparer.</param>
9323 <returns>The immutable collection builder.</returns>
9325 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary.CreateBuilder``2(System.Collections.Generic.IComparer{``0},System.Collections.Generic.IEqualityComparer{``1})">
9327 Creates a new immutable sorted dictionary builder.
9329 <typeparam name="TKey">The type of keys stored by the dictionary.</typeparam>
9330 <typeparam name="TValue">The type of values stored by the dictionary.</typeparam>
9331 <param name="keyComparer">The key comparer.</param>
9332 <param name="valueComparer">The value comparer.</param>
9333 <returns>The immutable collection builder.</returns>
9335 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary.ToImmutableSortedDictionary``3(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Func{``0,``2},System.Collections.Generic.IComparer{``1},System.Collections.Generic.IEqualityComparer{``2})">
9337 Constructs an immutable sorted dictionary based on some transformation of a sequence.
9339 <typeparam name="TSource">The type of element in the sequence.</typeparam>
9340 <typeparam name="TKey">The type of key in the resulting map.</typeparam>
9341 <typeparam name="TValue">The type of value in the resulting map.</typeparam>
9342 <param name="source">The sequence to enumerate to generate the map.</param>
9343 <param name="keySelector">The function that will produce the key for the map from each sequence element.</param>
9344 <param name="elementSelector">The function that will produce the value for the map from each sequence element.</param>
9345 <param name="keyComparer">The key comparer to use for the map.</param>
9346 <param name="valueComparer">The value comparer to use for the map.</param>
9347 <returns>The immutable map.</returns>
9349 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary.ToImmutableSortedDictionary``3(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Func{``0,``2},System.Collections.Generic.IComparer{``1})">
9351 Constructs an immutable sorted dictionary based on some transformation of a sequence.
9353 <typeparam name="TSource">The type of element in the sequence.</typeparam>
9354 <typeparam name="TKey">The type of key in the resulting map.</typeparam>
9355 <typeparam name="TValue">The type of value in the resulting map.</typeparam>
9356 <param name="source">The sequence to enumerate to generate the map.</param>
9357 <param name="keySelector">The function that will produce the key for the map from each sequence element.</param>
9358 <param name="elementSelector">The function that will produce the value for the map from each sequence element.</param>
9359 <param name="keyComparer">The key comparer to use for the map.</param>
9360 <returns>The immutable map.</returns>
9362 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary.ToImmutableSortedDictionary``3(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Func{``0,``2})">
9364 Constructs an immutable sorted dictionary based on some transformation of a sequence.
9366 <typeparam name="TSource">The type of element in the sequence.</typeparam>
9367 <typeparam name="TKey">The type of key in the resulting map.</typeparam>
9368 <typeparam name="TValue">The type of value in the resulting map.</typeparam>
9369 <param name="source">The sequence to enumerate to generate the map.</param>
9370 <param name="keySelector">The function that will produce the key for the map from each sequence element.</param>
9371 <param name="elementSelector">The function that will produce the value for the map from each sequence element.</param>
9372 <returns>The immutable map.</returns>
9374 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary.ToImmutableSortedDictionary``2(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{``0,``1}},System.Collections.Generic.IComparer{``0},System.Collections.Generic.IEqualityComparer{``1})">
9376 Creates an immutable sorted dictionary given a sequence of key=value pairs.
9378 <typeparam name="TKey">The type of key in the map.</typeparam>
9379 <typeparam name="TValue">The type of value in the map.</typeparam>
9380 <param name="source">The sequence of key=value pairs.</param>
9381 <param name="keyComparer">The key comparer to use when building the immutable map.</param>
9382 <param name="valueComparer">The value comparer to use for the immutable map.</param>
9383 <returns>An immutable map.</returns>
9385 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary.ToImmutableSortedDictionary``2(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{``0,``1}},System.Collections.Generic.IComparer{``0})">
9387 Creates an immutable sorted dictionary given a sequence of key=value pairs.
9389 <typeparam name="TKey">The type of key in the map.</typeparam>
9390 <typeparam name="TValue">The type of value in the map.</typeparam>
9391 <param name="source">The sequence of key=value pairs.</param>
9392 <param name="keyComparer">The key comparer to use when building the immutable map.</param>
9393 <returns>An immutable map.</returns>
9395 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary.ToImmutableSortedDictionary``2(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{``0,``1}})">
9397 Creates an immutable sorted dictionary given a sequence of key=value pairs.
9399 <typeparam name="TKey">The type of key in the map.</typeparam>
9400 <typeparam name="TValue">The type of value in the map.</typeparam>
9401 <param name="source">The sequence of key=value pairs.</param>
9402 <returns>An immutable map.</returns>
9404 <member name="T:System.Collections.Immutable.ImmutableSortedDictionary`2">
9406 Contains the inner <see cref="T:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder"/> class.
9409 An immutable sorted dictionary implementation.
9411 <typeparam name="TKey">The type of the key.</typeparam>
9412 <typeparam name="TValue">The type of the value.</typeparam>
9414 <member name="T:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder">
9416 A sorted dictionary that mutates with little or no memory allocations,
9417 can produce and/or build on immutable sorted dictionary instances very efficiently.
9421 This class allows multiple combinations of changes to be made to a set with equal efficiency.
9424 Instance members of this class are <em>not</em> thread-safe.
9428 <member name="F:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder._root">
9430 The binary tree used to store the contents of the map. Contents are typically not entirely frozen.
9433 <member name="F:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder._keyComparer">
9438 <member name="F:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder._valueComparer">
9443 <member name="F:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder._count">
9445 The number of entries in the map.
9448 <member name="F:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder._immutable">
9450 Caches an immutable instance that represents the current state of the collection.
9452 <value>Null if no immutable view has been created for the current version.</value>
9454 <member name="F:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder._version">
9456 A number that increments every time the builder changes its contents.
9459 <member name="F:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder._syncRoot">
9461 The object callers may use to synchronize access to this collection.
9464 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.#ctor(System.Collections.Immutable.ImmutableSortedDictionary{`0,`1})">
9466 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder"/> class.
9468 <param name="map">A map to act as the basis for a new map.</param>
9470 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.System#Collections#Generic#IDictionary{TKey,TValue}#Keys">
9472 See <see cref="T:System.Collections.Generic.IDictionary`2"/>
9475 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.Keys">
9477 See <see cref="T:System.Collections.Generic.IReadOnlyDictionary`2"/>
9480 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.System#Collections#Generic#IDictionary{TKey,TValue}#Values">
9482 See <see cref="T:System.Collections.Generic.IDictionary`2"/>
9485 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.Values">
9487 See <see cref="T:System.Collections.Generic.IReadOnlyDictionary`2"/>
9490 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.Count">
9492 Gets the number of elements in this map.
9495 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{TKey,TValue}}#IsReadOnly">
9497 Gets a value indicating whether this instance is read-only.
9499 <value>Always <c>false</c>.</value>
9501 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.Version">
9503 Gets the current version of the contents of this builder.
9506 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.Root">
9508 Gets or sets the root node that represents the data in this collection.
9511 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.Item(`0)">
9513 Gets or sets the value for a given key.
9515 <param name="key">The key.</param>
9516 <returns>The value associated with the given key.</returns>
9518 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.System#Collections#IDictionary#IsFixedSize">
9520 Gets a value indicating whether the <see cref="T:System.Collections.IDictionary"/> object has a fixed size.
9522 <returns>true if the <see cref="T:System.Collections.IDictionary"/> object has a fixed size; otherwise, false.</returns>
9524 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.System#Collections#IDictionary#IsReadOnly">
9526 Gets a value indicating whether the <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.
9528 <returns>true if the <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only; otherwise, false.
9531 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.System#Collections#IDictionary#Keys">
9533 Gets an <see cref="T:System.Collections.Generic.ICollection`1"/> containing the keys of the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
9536 An <see cref="T:System.Collections.Generic.ICollection`1"/> containing the keys of the object that implements <see cref="T:System.Collections.Generic.IDictionary`2"/>.
9539 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.System#Collections#IDictionary#Values">
9541 Gets an <see cref="T:System.Collections.Generic.ICollection`1"/> containing the values in the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
9544 An <see cref="T:System.Collections.Generic.ICollection`1"/> containing the values in the object that implements <see cref="T:System.Collections.Generic.IDictionary`2"/>.
9547 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.System#Collections#ICollection#SyncRoot">
9549 Gets an object that can be used to synchronize access to the <see cref="T:System.Collections.ICollection"/>.
9551 <returns>An object that can be used to synchronize access to the <see cref="T:System.Collections.ICollection"/>.</returns>
9553 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.System#Collections#ICollection#IsSynchronized">
9555 Gets a value indicating whether access to the <see cref="T:System.Collections.ICollection"/> is synchronized (thread safe).
9557 <returns>true if access to the <see cref="T:System.Collections.ICollection"/> is synchronized (thread safe); otherwise, false.</returns>
9559 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.KeyComparer">
9561 Gets or sets the key comparer.
9567 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.ValueComparer">
9569 Gets or sets the value comparer.
9575 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.System#Collections#IDictionary#Add(System.Object,System.Object)">
9577 Adds an element with the provided key and value to the <see cref="T:System.Collections.IDictionary"/> object.
9579 <param name="key">The <see cref="T:System.Object"/> to use as the key of the element to add.</param>
9580 <param name="value">The <see cref="T:System.Object"/> to use as the value of the element to add.</param>
9582 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.System#Collections#IDictionary#Contains(System.Object)">
9584 Determines whether the <see cref="T:System.Collections.IDictionary"/> object contains an element with the specified key.
9586 <param name="key">The key to locate in the <see cref="T:System.Collections.IDictionary"/> object.</param>
9588 true if the <see cref="T:System.Collections.IDictionary"/> contains an element with the key; otherwise, false.
9591 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.System#Collections#IDictionary#GetEnumerator">
9593 Returns an <see cref="T:System.Collections.IDictionaryEnumerator"/> object for the <see cref="T:System.Collections.IDictionary"/> object.
9596 An <see cref="T:System.Collections.IDictionaryEnumerator"/> object for the <see cref="T:System.Collections.IDictionary"/> object.
9599 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.System#Collections#IDictionary#Remove(System.Object)">
9601 Removes the element with the specified key from the <see cref="T:System.Collections.IDictionary"/> object.
9603 <param name="key">The key of the element to remove.</param>
9605 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.System#Collections#IDictionary#Item(System.Object)">
9607 Gets or sets the element with the specified key.
9609 <param name="key">The key.</param>
9612 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.System#Collections#ICollection#CopyTo(System.Array,System.Int32)">
9614 Copies the elements of the <see cref="T:System.Collections.ICollection"/> to an <see cref="T:System.Array"/>, starting at a particular <see cref="T:System.Array"/> index.
9616 <param name="array">The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements copied from <see cref="T:System.Collections.ICollection"/>. The <see cref="T:System.Array"/> must have zero-based indexing.</param>
9617 <param name="index">The zero-based index in <paramref name="array"/> at which copying begins.</param>
9619 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.Add(`0,`1)">
9621 See <see cref="T:System.Collections.Generic.IDictionary`2"/>
9624 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.ContainsKey(`0)">
9626 See <see cref="T:System.Collections.Generic.IDictionary`2"/>
9629 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.Remove(`0)">
9631 See <see cref="T:System.Collections.Generic.IDictionary`2"/>
9634 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.TryGetValue(`0,`1@)">
9636 See <see cref="T:System.Collections.Generic.IDictionary`2"/>
9639 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.TryGetKey(`0,`0@)">
9641 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
9644 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.Add(System.Collections.Generic.KeyValuePair{`0,`1})">
9646 See <see cref="T:System.Collections.Generic.IDictionary`2"/>
9649 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.Clear">
9651 See <see cref="T:System.Collections.Generic.IDictionary`2"/>
9654 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.Contains(System.Collections.Generic.KeyValuePair{`0,`1})">
9656 See <see cref="T:System.Collections.Generic.IDictionary`2"/>
9659 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{TKey,TValue}}#CopyTo(System.Collections.Generic.KeyValuePair{`0,`1}[],System.Int32)">
9661 See <see cref="T:System.Collections.Generic.IDictionary`2"/>
9664 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.Remove(System.Collections.Generic.KeyValuePair{`0,`1})">
9666 See <see cref="T:System.Collections.Generic.IDictionary`2"/>
9669 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.GetEnumerator">
9671 See <see cref="T:System.Collections.Generic.IDictionary`2"/>
9674 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.System#Collections#Generic#IEnumerable{System#Collections#Generic#KeyValuePair{TKey,TValue}}#GetEnumerator">
9676 See <see cref="T:System.Collections.Generic.IDictionary`2"/>
9679 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.System#Collections#IEnumerable#GetEnumerator">
9681 See <see cref="T:System.Collections.Generic.IDictionary`2"/>
9684 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.ContainsValue(`1)">
9686 Determines whether the <see cref="T:System.Collections.Immutable.ImmutableSortedDictionary`2"/>
9687 contains an element with the specified value.
9689 <param name="value">
9690 The value to locate in the <see cref="T:System.Collections.Immutable.ImmutableSortedDictionary`2"/>.
9691 The value can be null for reference types.
9694 true if the <see cref="T:System.Collections.Immutable.ImmutableSortedDictionary`2"/> contains
9695 an element with the specified value; otherwise, false.
9698 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.AddRange(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{`0,`1}})">
9700 Removes any entries from the dictionaries with keys that match those found in the specified sequence.
9702 <param name="items">The keys for entries to remove from the dictionary.</param>
9704 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.RemoveRange(System.Collections.Generic.IEnumerable{`0})">
9706 Removes any entries from the dictionaries with keys that match those found in the specified sequence.
9708 <param name="keys">The keys for entries to remove from the dictionary.</param>
9710 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.GetValueOrDefault(`0)">
9712 Gets the value for a given key if a matching key exists in the dictionary.
9714 <param name="key">The key to search for.</param>
9715 <returns>The value for the key, or the default value for type <typeparamref name="TValue"/> if no matching key was found.</returns>
9717 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.GetValueOrDefault(`0,`1)">
9719 Gets the value for a given key if a matching key exists in the dictionary.
9721 <param name="key">The key to search for.</param>
9722 <param name="defaultValue">The default value to return if no matching key is found in the dictionary.</param>
9724 The value for the key, or <paramref name="defaultValue"/> if no matching key was found.
9727 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Builder.ToImmutable">
9729 Creates an immutable sorted dictionary based on the contents of this instance.
9731 <returns>An immutable map.</returns>
9733 This method is an O(n) operation, and approaches O(1) time as the number of
9734 actual mutations to the set since the last call to this method approaches 0.
9737 <member name="F:System.Collections.Immutable.ImmutableSortedDictionary`2.Empty">
9739 An empty sorted dictionary with default sort and equality comparers.
9742 <member name="F:System.Collections.Immutable.ImmutableSortedDictionary`2._root">
9744 The root node of the AVL tree that stores this map.
9747 <member name="F:System.Collections.Immutable.ImmutableSortedDictionary`2._count">
9749 The number of elements in the set.
9752 <member name="F:System.Collections.Immutable.ImmutableSortedDictionary`2._keyComparer">
9754 The comparer used to sort keys in this map.
9757 <member name="F:System.Collections.Immutable.ImmutableSortedDictionary`2._valueComparer">
9759 The comparer used to detect equivalent values in this map.
9762 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.#ctor(System.Collections.Generic.IComparer{`0},System.Collections.Generic.IEqualityComparer{`1})">
9764 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableSortedDictionary`2"/> class.
9766 <param name="keyComparer">The key comparer.</param>
9767 <param name="valueComparer">The value comparer.</param>
9769 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.#ctor(System.Collections.Immutable.ImmutableSortedDictionary{`0,`1}.Node,System.Int32,System.Collections.Generic.IComparer{`0},System.Collections.Generic.IEqualityComparer{`1})">
9771 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableSortedDictionary`2"/> class.
9773 <param name="root">The root of the tree containing the contents of the map.</param>
9774 <param name="count">The number of elements in this map.</param>
9775 <param name="keyComparer">The key comparer.</param>
9776 <param name="valueComparer">The value comparer.</param>
9778 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Clear">
9780 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
9783 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.ValueComparer">
9785 Gets the value comparer used to determine whether values are equal.
9788 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.IsEmpty">
9790 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
9793 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Count">
9795 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
9798 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Keys">
9800 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
9803 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Values">
9805 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
9808 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.System#Collections#Immutable#IImmutableDictionary{TKey,TValue}#Clear">
9810 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
9813 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.System#Collections#Generic#IDictionary{TKey,TValue}#Keys">
9818 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.System#Collections#Generic#IDictionary{TKey,TValue}#Values">
9823 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.KeyComparer">
9825 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
9828 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Root">
9830 Gets the root node (for testing purposes).
9833 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Item(`0)">
9835 Gets the <typeparamref name="TValue"/> with the specified key.
9838 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.System#Collections#Generic#IDictionary{TKey,TValue}#Item(`0)">
9840 Gets or sets the <typeparamref name="TValue"/> with the specified key.
9843 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.ToBuilder">
9845 Creates a collection with the same contents as this collection that
9846 can be efficiently mutated across multiple operations using standard
9850 This is an O(1) operation and results in only a single (small) memory allocation.
9851 The mutable collection that is returned is *not* thread-safe.
9854 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Add(`0,`1)">
9856 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
9859 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.SetItem(`0,`1)">
9861 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
9864 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.SetItems(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{`0,`1}})">
9866 Applies a given set of key=value pairs to an immutable dictionary, replacing any conflicting keys in the resulting dictionary.
9868 <param name="items">The key=value pairs to set on the map. Any keys that conflict with existing keys will overwrite the previous values.</param>
9869 <returns>An immutable dictionary.</returns>
9871 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.AddRange(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{`0,`1}})">
9873 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
9876 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Remove(`0)">
9878 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
9881 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.RemoveRange(System.Collections.Generic.IEnumerable{`0})">
9883 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
9886 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.WithComparers(System.Collections.Generic.IComparer{`0},System.Collections.Generic.IEqualityComparer{`1})">
9888 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
9891 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.WithComparers(System.Collections.Generic.IComparer{`0})">
9893 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
9896 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.ContainsValue(`1)">
9898 Determines whether the <see cref="T:System.Collections.Immutable.ImmutableSortedDictionary`2"/>
9899 contains an element with the specified value.
9901 <param name="value">
9902 The value to locate in the <see cref="T:System.Collections.Immutable.ImmutableSortedDictionary`2"/>.
9903 The value can be null for reference types.
9906 true if the <see cref="T:System.Collections.Immutable.ImmutableSortedDictionary`2"/> contains
9907 an element with the specified value; otherwise, false.
9910 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.System#Collections#Immutable#IImmutableDictionary{TKey,TValue}#Add(`0,`1)">
9912 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
9915 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.System#Collections#Immutable#IImmutableDictionary{TKey,TValue}#SetItem(`0,`1)">
9917 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
9920 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.System#Collections#Immutable#IImmutableDictionary{TKey,TValue}#SetItems(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{`0,`1}})">
9922 Applies a given set of key=value pairs to an immutable dictionary, replacing any conflicting keys in the resulting dictionary.
9924 <param name="items">The key=value pairs to set on the map. Any keys that conflict with existing keys will overwrite the previous values.</param>
9925 <returns>An immutable dictionary.</returns>
9927 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.System#Collections#Immutable#IImmutableDictionary{TKey,TValue}#AddRange(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{`0,`1}})">
9929 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
9932 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.System#Collections#Immutable#IImmutableDictionary{TKey,TValue}#RemoveRange(System.Collections.Generic.IEnumerable{`0})">
9934 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
9937 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.System#Collections#Immutable#IImmutableDictionary{TKey,TValue}#Remove(`0)">
9939 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
9942 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.ContainsKey(`0)">
9944 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
9947 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Contains(System.Collections.Generic.KeyValuePair{`0,`1})">
9949 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
9952 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.TryGetValue(`0,`1@)">
9954 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
9957 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.TryGetKey(`0,`0@)">
9959 See the <see cref="T:System.Collections.Immutable.IImmutableDictionary`2"/> interface.
9962 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.System#Collections#Generic#IDictionary{TKey,TValue}#Add(`0,`1)">
9964 Adds an element with the provided key and value to the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
9966 <param name="key">The object to use as the key of the element to add.</param>
9967 <param name="value">The object to use as the value of the element to add.</param>
9968 <exception cref="T:System.ArgumentNullException"><paramref name="key"/> is null.
9970 <exception cref="T:System.ArgumentException">
9971 An element with the same key already exists in the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
9973 <exception cref="T:System.NotSupportedException">
9974 The <see cref="T:System.Collections.Generic.IDictionary`2"/> is read-only.
9977 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.System#Collections#Generic#IDictionary{TKey,TValue}#Remove(`0)">
9979 Removes the element with the specified key from the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
9981 <param name="key">The key of the element to remove.</param>
9983 true if the element is successfully removed; otherwise, false. This method also returns false if <paramref name="key"/> was not found in the original <see cref="T:System.Collections.Generic.IDictionary`2"/>.
9985 <exception cref="T:System.ArgumentNullException"><paramref name="key"/> is null.
9987 <exception cref="T:System.NotSupportedException">
9988 The <see cref="T:System.Collections.Generic.IDictionary`2"/> is read-only.
9991 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.System#Collections#IDictionary#IsFixedSize">
9993 Gets a value indicating whether the <see cref="T:System.Collections.IDictionary"/> object has a fixed size.
9995 <returns>true if the <see cref="T:System.Collections.IDictionary"/> object has a fixed size; otherwise, false.</returns>
9997 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.System#Collections#IDictionary#IsReadOnly">
9999 Gets a value indicating whether the <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.
10001 <returns>true if the <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only; otherwise, false.
10004 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.System#Collections#IDictionary#Keys">
10006 Gets an <see cref="T:System.Collections.Generic.ICollection`1"/> containing the keys of the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
10009 An <see cref="T:System.Collections.Generic.ICollection`1"/> containing the keys of the object that implements <see cref="T:System.Collections.Generic.IDictionary`2"/>.
10012 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.System#Collections#IDictionary#Values">
10014 Gets an <see cref="T:System.Collections.Generic.ICollection`1"/> containing the values in the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
10017 An <see cref="T:System.Collections.Generic.ICollection`1"/> containing the values in the object that implements <see cref="T:System.Collections.Generic.IDictionary`2"/>.
10020 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.System#Collections#IDictionary#Add(System.Object,System.Object)">
10022 Adds an element with the provided key and value to the <see cref="T:System.Collections.IDictionary"/> object.
10024 <param name="key">The <see cref="T:System.Object"/> to use as the key of the element to add.</param>
10025 <param name="value">The <see cref="T:System.Object"/> to use as the value of the element to add.</param>
10027 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.System#Collections#IDictionary#Contains(System.Object)">
10029 Determines whether the <see cref="T:System.Collections.IDictionary"/> object contains an element with the specified key.
10031 <param name="key">The key to locate in the <see cref="T:System.Collections.IDictionary"/> object.</param>
10033 true if the <see cref="T:System.Collections.IDictionary"/> contains an element with the key; otherwise, false.
10036 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.System#Collections#IDictionary#GetEnumerator">
10038 Returns an <see cref="T:System.Collections.IDictionaryEnumerator"/> object for the <see cref="T:System.Collections.IDictionary"/> object.
10041 An <see cref="T:System.Collections.IDictionaryEnumerator"/> object for the <see cref="T:System.Collections.IDictionary"/> object.
10044 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.System#Collections#IDictionary#Remove(System.Object)">
10046 Removes the element with the specified key from the <see cref="T:System.Collections.IDictionary"/> object.
10048 <param name="key">The key of the element to remove.</param>
10050 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.System#Collections#IDictionary#Item(System.Object)">
10052 Gets or sets the element with the specified key.
10054 <param name="key">The key.</param>
10055 <returns></returns>
10057 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.System#Collections#IDictionary#Clear">
10059 Clears this instance.
10061 <exception cref="T:System.NotSupportedException"></exception>
10063 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.System#Collections#ICollection#CopyTo(System.Array,System.Int32)">
10065 Copies the elements of the <see cref="T:System.Collections.ICollection"/> to an <see cref="T:System.Array"/>, starting at a particular <see cref="T:System.Array"/> index.
10067 <param name="array">The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements copied from <see cref="T:System.Collections.ICollection"/>. The <see cref="T:System.Array"/> must have zero-based indexing.</param>
10068 <param name="index">The zero-based index in <paramref name="array"/> at which copying begins.</param>
10070 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.System#Collections#ICollection#SyncRoot">
10072 Gets an object that can be used to synchronize access to the <see cref="T:System.Collections.ICollection"/>.
10074 <returns>An object that can be used to synchronize access to the <see cref="T:System.Collections.ICollection"/>.</returns>
10076 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.System#Collections#ICollection#IsSynchronized">
10078 Gets a value indicating whether access to the <see cref="T:System.Collections.ICollection"/> is synchronized (thread safe).
10080 <returns>true if access to the <see cref="T:System.Collections.ICollection"/> is synchronized (thread safe); otherwise, false.</returns>
10082 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.System#Collections#Generic#IEnumerable{System#Collections#Generic#KeyValuePair{TKey,TValue}}#GetEnumerator">
10084 Returns an enumerator that iterates through the collection.
10087 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
10090 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.System#Collections#IEnumerable#GetEnumerator">
10092 Returns an enumerator that iterates through a collection.
10095 An <see cref="T:System.Collections.IEnumerator"/> object that can be used to iterate through the collection.
10098 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.GetEnumerator">
10100 Returns an enumerator that iterates through the collection.
10103 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
10106 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Wrap(System.Collections.Immutable.ImmutableSortedDictionary{`0,`1}.Node,System.Int32,System.Collections.Generic.IComparer{`0},System.Collections.Generic.IEqualityComparer{`1})">
10108 Creates a new sorted set wrapper for a node tree.
10110 <param name="root">The root of the collection.</param>
10111 <param name="count">The number of elements in the map.</param>
10112 <param name="keyComparer">The key comparer to use for the map.</param>
10113 <param name="valueComparer">The value comparer to use for the map.</param>
10114 <returns>The immutable sorted set instance.</returns>
10116 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.TryCastToImmutableMap(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{`0,`1}},System.Collections.Immutable.ImmutableSortedDictionary{`0,`1}@)">
10118 Attempts to discover an <see cref="T:System.Collections.Immutable.ImmutableSortedDictionary`2"/> instance beneath some enumerable sequence
10121 <param name="sequence">The sequence that may have come from an immutable map.</param>
10122 <param name="other">Receives the concrete <see cref="T:System.Collections.Immutable.ImmutableSortedDictionary`2"/> typed value if one can be found.</param>
10123 <returns><c>true</c> if the cast was successful; <c>false</c> otherwise.</returns>
10125 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.AddRange(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{`0,`1}},System.Boolean,System.Boolean)">
10127 Bulk adds entries to the map.
10129 <param name="items">The entries to add.</param>
10130 <param name="overwriteOnCollision"><c>true</c> to allow the <paramref name="items"/> sequence to include duplicate keys and let the last one win; <c>false</c> to throw on collisions.</param>
10131 <param name="avoidToSortedMap"><c>true</c> when being called from <see cref="M:System.Collections.Immutable.ImmutableSortedDictionary`2.WithComparers(System.Collections.Generic.IComparer{`0},System.Collections.Generic.IEqualityComparer{`1})"/> to avoid <see cref="T:System.StackOverflowException"/>.</param>
10133 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Wrap(System.Collections.Immutable.ImmutableSortedDictionary{`0,`1}.Node,System.Int32)">
10135 Creates a wrapping collection type around a root node.
10137 <param name="root">The root node to wrap.</param>
10138 <param name="adjustedCountIfDifferentRoot">The number of elements in the new tree, assuming it's different from the current tree.</param>
10139 <returns>A wrapping collection type for the new tree.</returns>
10141 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.FillFromEmpty(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{`0,`1}},System.Boolean)">
10143 Efficiently creates a new collection based on the contents of some sequence.
10146 <member name="T:System.Collections.Immutable.ImmutableSortedDictionary`2.Enumerator">
10148 Enumerates the contents of a binary tree.
10151 This struct can and should be kept in exact sync with the other binary tree enumerators:
10152 <see cref="T:System.Collections.Immutable.ImmutableList`1.Enumerator"/>, <see cref="T:System.Collections.Immutable.ImmutableSortedDictionary`2.Enumerator"/>, and <see cref="T:System.Collections.Immutable.ImmutableSortedSet`1.Enumerator"/>.
10154 CAUTION: when this enumerator is actually used as a valuetype (not boxed) do NOT copy it by assigning to a second variable
10155 or by passing it to another method. When this enumerator is disposed of it returns a mutable reference type stack to a resource pool,
10156 and if the value type enumerator is copied (which can easily happen unintentionally if you pass the value around) there is a risk
10157 that a stack that has already been returned to the resource pool may still be in use by one of the enumerator copies, leading to data
10158 corruption and/or exceptions.
10161 <member name="F:System.Collections.Immutable.ImmutableSortedDictionary`2.Enumerator.s_enumeratingStacks">
10163 The resource pool of reusable mutable stacks for purposes of enumeration.
10166 We utilize this resource pool to make "allocation free" enumeration achievable.
10169 <member name="F:System.Collections.Immutable.ImmutableSortedDictionary`2.Enumerator._builder">
10171 The builder being enumerated, if applicable.
10174 <member name="F:System.Collections.Immutable.ImmutableSortedDictionary`2.Enumerator._poolUserId">
10176 A unique ID for this instance of this enumerator.
10177 Used to protect pooled objects from use after they are recycled.
10180 <member name="F:System.Collections.Immutable.ImmutableSortedDictionary`2.Enumerator._root">
10182 The set being enumerated.
10185 <member name="F:System.Collections.Immutable.ImmutableSortedDictionary`2.Enumerator._stack">
10187 The stack to use for enumerating the binary tree.
10190 <member name="F:System.Collections.Immutable.ImmutableSortedDictionary`2.Enumerator._current">
10192 The node currently selected.
10195 <member name="F:System.Collections.Immutable.ImmutableSortedDictionary`2.Enumerator._enumeratingBuilderVersion">
10197 The version of the builder (when applicable) that is being enumerated.
10200 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Enumerator.#ctor(System.Collections.Immutable.ImmutableSortedDictionary{`0,`1}.Node,System.Collections.Immutable.ImmutableSortedDictionary{`0,`1}.Builder)">
10202 Initializes an <see cref="T:System.Collections.Immutable.ImmutableSortedDictionary`2.Enumerator"/> structure.
10204 <param name="root">The root of the set to be enumerated.</param>
10205 <param name="builder">The builder, if applicable.</param>
10207 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Enumerator.Current">
10209 The current element.
10212 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Enumerator.System#Collections#Immutable#ISecurePooledObjectUser#PoolUserId">
10215 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Enumerator.System#Collections#IEnumerator#Current">
10217 The current element.
10220 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Enumerator.Dispose">
10222 Disposes of this enumerator and returns the stack reference to the resource pool.
10225 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Enumerator.MoveNext">
10227 Advances enumeration to the next element.
10229 <returns>A value indicating whether there is another element in the enumeration.</returns>
10231 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Enumerator.Reset">
10233 Restarts enumeration.
10236 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Enumerator.ThrowIfDisposed">
10238 Throws an <see cref="T:System.ObjectDisposedException"/> if this enumerator has been disposed.
10241 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Enumerator.ThrowIfChanged">
10243 Throws an exception if the underlying builder's contents have been changed since enumeration started.
10245 <exception cref="T:System.InvalidOperationException">Thrown if the collection has changed.</exception>
10247 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Enumerator.PushLeft(System.Collections.Immutable.ImmutableSortedDictionary{`0,`1}.Node)">
10249 Pushes this node and all its Left descendants onto the stack.
10251 <param name="node">The starting node to push onto the stack.</param>
10253 <member name="T:System.Collections.Immutable.ImmutableSortedDictionary`2.Node">
10255 A node in the AVL tree storing this map.
10258 <member name="F:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.EmptyNode">
10260 The default empty node.
10263 <member name="F:System.Collections.Immutable.ImmutableSortedDictionary`2.Node._key">
10265 The key associated with this node.
10268 <member name="F:System.Collections.Immutable.ImmutableSortedDictionary`2.Node._value">
10270 The value associated with this node.
10273 Sadly this field could be readonly but doing so breaks serialization due to bug:
10274 http://connect.microsoft.com/VisualStudio/feedback/details/312970/weird-argumentexception-when-deserializing-field-in-typedreferences-cannot-be-static-or-init-only
10277 <member name="F:System.Collections.Immutable.ImmutableSortedDictionary`2.Node._frozen">
10279 A value indicating whether this node has been frozen (made immutable).
10282 Nodes must be frozen before ever being observed by a wrapping collection type
10283 to protect collections from further mutations.
10286 <member name="F:System.Collections.Immutable.ImmutableSortedDictionary`2.Node._height">
10288 The depth of the tree beneath this node.
10291 <member name="F:System.Collections.Immutable.ImmutableSortedDictionary`2.Node._left">
10296 <member name="F:System.Collections.Immutable.ImmutableSortedDictionary`2.Node._right">
10301 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.#ctor">
10303 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableSortedDictionary`2.Node"/> class
10304 that is pre-frozen.
10307 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.#ctor(`0,`1,System.Collections.Immutable.ImmutableSortedDictionary{`0,`1}.Node,System.Collections.Immutable.ImmutableSortedDictionary{`0,`1}.Node,System.Boolean)">
10309 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableSortedDictionary`2.Node"/> class
10310 that is not yet frozen.
10312 <param name="key">The key.</param>
10313 <param name="value">The value.</param>
10314 <param name="left">The left.</param>
10315 <param name="right">The right.</param>
10316 <param name="frozen">Whether this node is prefrozen.</param>
10318 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.IsEmpty">
10320 Gets a value indicating whether this instance is empty.
10323 <c>true</c> if this instance is empty; otherwise, <c>false</c>.
10326 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.System#Collections#Immutable#IBinaryTree{System#Collections#Generic#KeyValuePair{TKey,TValue}}#Left">
10328 Gets the left branch of this node.
10331 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.System#Collections#Immutable#IBinaryTree{System#Collections#Generic#KeyValuePair{TKey,TValue}}#Right">
10333 Gets the right branch of this node.
10336 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.Height">
10338 Gets the height of the tree beneath this node.
10341 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.Left">
10343 Gets the left branch of this node.
10346 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.System#Collections#Immutable#IBinaryTree#Left">
10348 Gets the left branch of this node.
10351 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.Right">
10353 Gets the right branch of this node.
10356 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.System#Collections#Immutable#IBinaryTree#Right">
10358 Gets the right branch of this node.
10361 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.Value">
10363 Gets the value represented by the current node.
10366 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.System#Collections#Immutable#IBinaryTree#Count">
10368 Gets the number of elements contained by this node and below.
10371 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.Keys">
10376 <member name="P:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.Values">
10381 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.GetEnumerator">
10383 Returns an enumerator that iterates through the collection.
10386 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
10389 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.System#Collections#Generic#IEnumerable{System#Collections#Generic#KeyValuePair{TKey,TValue}}#GetEnumerator">
10391 Returns an enumerator that iterates through the collection.
10394 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
10397 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.System#Collections#IEnumerable#GetEnumerator">
10399 Returns an enumerator that iterates through the collection.
10402 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
10405 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.GetEnumerator(System.Collections.Immutable.ImmutableSortedDictionary{`0,`1}.Builder)">
10407 Returns an enumerator that iterates through the collection.
10409 <param name="builder">The builder, if applicable.</param>
10411 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
10414 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.CopyTo(System.Collections.Generic.KeyValuePair{`0,`1}[],System.Int32,System.Int32)">
10416 See <see cref="T:System.Collections.Generic.IDictionary`2"/>
10419 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.CopyTo(System.Array,System.Int32,System.Int32)">
10421 See <see cref="T:System.Collections.Generic.IDictionary`2"/>
10424 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.NodeTreeFromSortedDictionary(System.Collections.Generic.SortedDictionary{`0,`1})">
10426 Creates a node tree from an existing (mutable) collection.
10428 <param name="dictionary">The collection.</param>
10429 <returns>The root of the node tree.</returns>
10431 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.Add(`0,`1,System.Collections.Generic.IComparer{`0},System.Collections.Generic.IEqualityComparer{`1},System.Boolean@)">
10433 Adds the specified key.
10435 <param name="key">The key.</param>
10436 <param name="value">The value.</param>
10437 <param name="keyComparer">The key comparer.</param>
10438 <param name="valueComparer">The value comparer.</param>
10439 <param name="mutated">Receives a value indicating whether this node tree has mutated because of this operation.</param>
10441 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.SetItem(`0,`1,System.Collections.Generic.IComparer{`0},System.Collections.Generic.IEqualityComparer{`1},System.Boolean@,System.Boolean@)">
10443 Adds the specified key.
10445 <param name="key">The key.</param>
10446 <param name="value">The value.</param>
10447 <param name="keyComparer">The key comparer.</param>
10448 <param name="valueComparer">The value comparer.</param>
10449 <param name="replacedExistingValue">Receives a value indicating whether an existing value was replaced.</param>
10450 <param name="mutated">Receives a value indicating whether this node tree has mutated because of this operation.</param>
10452 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.Remove(`0,System.Collections.Generic.IComparer{`0},System.Boolean@)">
10454 Removes the specified key.
10456 <param name="key">The key.</param>
10457 <param name="keyComparer">The key comparer.</param>
10458 <param name="mutated">Receives a value indicating whether this node tree has mutated because of this operation.</param>
10459 <returns>The new AVL tree.</returns>
10461 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.GetValueOrDefault(`0,System.Collections.Generic.IComparer{`0})">
10463 Gets the value or default.
10465 <param name="key">The key.</param>
10466 <param name="keyComparer">The key comparer.</param>
10467 <returns>The value.</returns>
10469 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.TryGetValue(`0,System.Collections.Generic.IComparer{`0},`1@)">
10471 Tries to get the value.
10473 <param name="key">The key.</param>
10474 <param name="keyComparer">The key comparer.</param>
10475 <param name="value">The value.</param>
10476 <returns>True if the key was found.</returns>
10478 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.TryGetKey(`0,System.Collections.Generic.IComparer{`0},`0@)">
10480 Searches the dictionary for a given key and returns the equal key it finds, if any.
10482 <param name="equalKey">The key to search for.</param>
10483 <param name="keyComparer">The key comparer.</param>
10484 <param name="actualKey">The key from the dictionary that the search found, or <paramref name="equalKey"/> if the search yielded no match.</param>
10485 <returns>A value indicating whether the search was successful.</returns>
10487 This can be useful when you want to reuse a previously stored reference instead of
10488 a newly constructed one (so that more sharing of references can occur) or to look up
10489 the canonical value, or a value that has more complete data than the value you currently have,
10490 although their comparer functions indicate they are equal.
10493 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.ContainsKey(`0,System.Collections.Generic.IComparer{`0})">
10495 Determines whether the specified key contains key.
10497 <param name="key">The key.</param>
10498 <param name="keyComparer">The key comparer.</param>
10500 <c>true</c> if the specified key contains key; otherwise, <c>false</c>.
10503 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.ContainsValue(`1,System.Collections.Generic.IEqualityComparer{`1})">
10505 Determines whether the <see cref="T:System.Collections.Immutable.ImmutableSortedDictionary`2"/>
10506 contains an element with the specified value.
10508 <param name="value">
10509 The value to locate in the <see cref="T:System.Collections.Immutable.ImmutableSortedDictionary`2"/>.
10510 The value can be null for reference types.
10512 <param name="valueComparer">The value comparer to use.</param>
10514 true if the <see cref="T:System.Collections.Immutable.ImmutableSortedDictionary`2"/> contains
10515 an element with the specified value; otherwise, false.
10518 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.Contains(System.Collections.Generic.KeyValuePair{`0,`1},System.Collections.Generic.IComparer{`0},System.Collections.Generic.IEqualityComparer{`1})">
10520 Determines whether [contains] [the specified pair].
10522 <param name="pair">The pair.</param>
10523 <param name="keyComparer">The key comparer.</param>
10524 <param name="valueComparer">The value comparer.</param>
10526 <c>true</c> if [contains] [the specified pair]; otherwise, <c>false</c>.
10529 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.Freeze(System.Action{System.Collections.Generic.KeyValuePair{`0,`1}})">
10531 Freezes this node and all descendant nodes so that any mutations require a new instance of the nodes.
10534 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.RotateLeft(System.Collections.Immutable.ImmutableSortedDictionary{`0,`1}.Node)">
10536 AVL rotate left operation.
10538 <param name="tree">The tree.</param>
10539 <returns>The rotated tree.</returns>
10541 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.RotateRight(System.Collections.Immutable.ImmutableSortedDictionary{`0,`1}.Node)">
10543 AVL rotate right operation.
10545 <param name="tree">The tree.</param>
10546 <returns>The rotated tree.</returns>
10548 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.DoubleLeft(System.Collections.Immutable.ImmutableSortedDictionary{`0,`1}.Node)">
10550 AVL rotate double-left operation.
10552 <param name="tree">The tree.</param>
10553 <returns>The rotated tree.</returns>
10555 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.DoubleRight(System.Collections.Immutable.ImmutableSortedDictionary{`0,`1}.Node)">
10557 AVL rotate double-right operation.
10559 <param name="tree">The tree.</param>
10560 <returns>The rotated tree.</returns>
10562 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.Balance(System.Collections.Immutable.ImmutableSortedDictionary{`0,`1}.Node)">
10564 Returns a value indicating whether the tree is in balance.
10566 <param name="tree">The tree.</param>
10567 <returns>0 if the tree is in balance, a positive integer if the right side is heavy, or a negative integer if the left side is heavy.</returns>
10569 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.IsRightHeavy(System.Collections.Immutable.ImmutableSortedDictionary{`0,`1}.Node)">
10571 Determines whether the specified tree is right heavy.
10573 <param name="tree">The tree.</param>
10575 <c>true</c> if [is right heavy] [the specified tree]; otherwise, <c>false</c>.
10578 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.IsLeftHeavy(System.Collections.Immutable.ImmutableSortedDictionary{`0,`1}.Node)">
10580 Determines whether the specified tree is left heavy.
10583 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.MakeBalanced(System.Collections.Immutable.ImmutableSortedDictionary{`0,`1}.Node)">
10585 Balances the specified tree.
10587 <param name="tree">The tree.</param>
10588 <returns>A balanced tree.</returns>
10590 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.NodeTreeFromList(System.Collections.Immutable.IOrderedCollection{System.Collections.Generic.KeyValuePair{`0,`1}},System.Int32,System.Int32)">
10592 Creates a node tree that contains the contents of a list.
10594 <param name="items">An indexable list with the contents that the new node tree should contain.</param>
10595 <param name="start">The starting index within <paramref name="items"/> that should be captured by the node tree.</param>
10596 <param name="length">The number of elements from <paramref name="items"/> that should be captured by the node tree.</param>
10597 <returns>The root of the created node tree.</returns>
10599 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.SetOrAdd(`0,`1,System.Collections.Generic.IComparer{`0},System.Collections.Generic.IEqualityComparer{`1},System.Boolean,System.Boolean@,System.Boolean@)">
10601 Adds the specified key. Callers are expected to have validated arguments.
10603 <param name="key">The key.</param>
10604 <param name="value">The value.</param>
10605 <param name="keyComparer">The key comparer.</param>
10606 <param name="valueComparer">The value comparer.</param>
10607 <param name="overwriteExistingValue">if <c>true</c>, an existing key=value pair will be overwritten with the new one.</param>
10608 <param name="replacedExistingValue">Receives a value indicating whether an existing value was replaced.</param>
10609 <param name="mutated">Receives a value indicating whether this node tree has mutated because of this operation.</param>
10610 <returns>The new AVL tree.</returns>
10612 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.RemoveRecursive(`0,System.Collections.Generic.IComparer{`0},System.Boolean@)">
10614 Removes the specified key. Callers are expected to validate arguments.
10616 <param name="key">The key.</param>
10617 <param name="keyComparer">The key comparer.</param>
10618 <param name="mutated">Receives a value indicating whether this node tree has mutated because of this operation.</param>
10619 <returns>The new AVL tree.</returns>
10621 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.Mutate(System.Collections.Immutable.ImmutableSortedDictionary{`0,`1}.Node,System.Collections.Immutable.ImmutableSortedDictionary{`0,`1}.Node)">
10623 Creates a node mutation, either by mutating this node (if not yet frozen) or by creating a clone of this node
10624 with the described changes.
10626 <param name="left">The left branch of the mutated node.</param>
10627 <param name="right">The right branch of the mutated node.</param>
10628 <returns>The mutated (or created) node.</returns>
10630 <member name="M:System.Collections.Immutable.ImmutableSortedDictionary`2.Node.Search(`0,System.Collections.Generic.IComparer{`0})">
10632 Searches the specified key. Callers are expected to validate arguments.
10634 <param name="key">The key.</param>
10635 <param name="keyComparer">The key comparer.</param>
10637 <member name="T:System.Collections.Immutable.ImmutableSortedDictionaryBuilderDebuggerProxy`2">
10639 A simple view of the immutable collection that the debugger can show to the developer.
10642 <member name="F:System.Collections.Immutable.ImmutableSortedDictionaryBuilderDebuggerProxy`2._map">
10644 The collection to be enumerated.
10647 <member name="F:System.Collections.Immutable.ImmutableSortedDictionaryBuilderDebuggerProxy`2._contents">
10649 The simple view of the collection.
10652 <member name="M:System.Collections.Immutable.ImmutableSortedDictionaryBuilderDebuggerProxy`2.#ctor(System.Collections.Immutable.ImmutableSortedDictionary{`0,`1}.Builder)">
10654 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableSortedDictionaryBuilderDebuggerProxy`2"/> class.
10656 <param name="map">The collection to display in the debugger</param>
10658 <member name="P:System.Collections.Immutable.ImmutableSortedDictionaryBuilderDebuggerProxy`2.Contents">
10660 Gets a simple debugger-viewable collection.
10663 <member name="T:System.Collections.Immutable.ImmutableSortedDictionaryDebuggerProxy`2">
10665 A simple view of the immutable collection that the debugger can show to the developer.
10668 <member name="F:System.Collections.Immutable.ImmutableSortedDictionaryDebuggerProxy`2._map">
10670 The collection to be enumerated.
10673 <member name="F:System.Collections.Immutable.ImmutableSortedDictionaryDebuggerProxy`2._contents">
10675 The simple view of the collection.
10678 <member name="M:System.Collections.Immutable.ImmutableSortedDictionaryDebuggerProxy`2.#ctor(System.Collections.Immutable.ImmutableSortedDictionary{`0,`1})">
10680 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableSortedDictionaryDebuggerProxy`2"/> class.
10682 <param name="map">The collection to display in the debugger</param>
10684 <member name="P:System.Collections.Immutable.ImmutableSortedDictionaryDebuggerProxy`2.Contents">
10686 Gets a simple debugger-viewable collection.
10689 <member name="T:System.Collections.Immutable.ImmutableSortedSet">
10691 A set of initialization methods for instances of <see cref="T:System.Collections.Immutable.ImmutableSortedSet`1"/>.
10694 <member name="M:System.Collections.Immutable.ImmutableSortedSet.Create``1">
10696 Returns an empty collection.
10698 <typeparam name="T">The type of items stored by the collection.</typeparam>
10699 <returns>The immutable collection.</returns>
10701 <member name="M:System.Collections.Immutable.ImmutableSortedSet.Create``1(System.Collections.Generic.IComparer{``0})">
10703 Returns an empty collection.
10705 <typeparam name="T">The type of items stored by the collection.</typeparam>
10706 <param name="comparer">The comparer.</param>
10708 The immutable collection.
10711 <member name="M:System.Collections.Immutable.ImmutableSortedSet.Create``1(``0)">
10713 Creates a new immutable collection prefilled with the specified item.
10715 <typeparam name="T">The type of items stored by the collection.</typeparam>
10716 <param name="item">The item to prepopulate.</param>
10717 <returns>The new immutable collection.</returns>
10719 <member name="M:System.Collections.Immutable.ImmutableSortedSet.Create``1(System.Collections.Generic.IComparer{``0},``0)">
10721 Creates a new immutable collection prefilled with the specified item.
10723 <typeparam name="T">The type of items stored by the collection.</typeparam>
10724 <param name="comparer">The comparer.</param>
10725 <param name="item">The item to prepopulate.</param>
10726 <returns>The new immutable collection.</returns>
10728 <member name="M:System.Collections.Immutable.ImmutableSortedSet.CreateRange``1(System.Collections.Generic.IEnumerable{``0})">
10730 Creates a new immutable collection prefilled with the specified items.
10732 <typeparam name="T">The type of items stored by the collection.</typeparam>
10733 <param name="items">The items to prepopulate.</param>
10734 <returns>The new immutable collection.</returns>
10736 <member name="M:System.Collections.Immutable.ImmutableSortedSet.CreateRange``1(System.Collections.Generic.IComparer{``0},System.Collections.Generic.IEnumerable{``0})">
10738 Creates a new immutable collection prefilled with the specified items.
10740 <typeparam name="T">The type of items stored by the collection.</typeparam>
10741 <param name="comparer">The comparer.</param>
10742 <param name="items">The items to prepopulate.</param>
10743 <returns>The new immutable collection.</returns>
10745 <member name="M:System.Collections.Immutable.ImmutableSortedSet.Create``1(``0[])">
10747 Creates a new immutable collection prefilled with the specified items.
10749 <typeparam name="T">The type of items stored by the collection.</typeparam>
10750 <param name="items">The items to prepopulate.</param>
10751 <returns>The new immutable collection.</returns>
10753 <member name="M:System.Collections.Immutable.ImmutableSortedSet.Create``1(System.Collections.Generic.IComparer{``0},``0[])">
10755 Creates a new immutable collection prefilled with the specified items.
10757 <typeparam name="T">The type of items stored by the collection.</typeparam>
10758 <param name="comparer">The comparer.</param>
10759 <param name="items">The items to prepopulate.</param>
10760 <returns>The new immutable collection.</returns>
10762 <member name="M:System.Collections.Immutable.ImmutableSortedSet.CreateBuilder``1">
10764 Returns an empty collection.
10766 <typeparam name="T">The type of items stored by the collection.</typeparam>
10767 <returns>The immutable collection.</returns>
10769 <member name="M:System.Collections.Immutable.ImmutableSortedSet.CreateBuilder``1(System.Collections.Generic.IComparer{``0})">
10771 Returns an empty collection.
10773 <typeparam name="T">The type of items stored by the collection.</typeparam>
10774 <param name="comparer">The comparer.</param>
10776 The immutable collection.
10779 <member name="M:System.Collections.Immutable.ImmutableSortedSet.ToImmutableSortedSet``1(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IComparer{``0})">
10781 Enumerates a sequence exactly once and produces an immutable set of its contents.
10783 <typeparam name="TSource">The type of element in the sequence.</typeparam>
10784 <param name="source">The sequence to enumerate.</param>
10785 <param name="comparer">The comparer to use for initializing and adding members to the sorted set.</param>
10786 <returns>An immutable set.</returns>
10788 <member name="M:System.Collections.Immutable.ImmutableSortedSet.ToImmutableSortedSet``1(System.Collections.Generic.IEnumerable{``0})">
10790 Enumerates a sequence exactly once and produces an immutable set of its contents.
10792 <typeparam name="TSource">The type of element in the sequence.</typeparam>
10793 <param name="source">The sequence to enumerate.</param>
10794 <returns>An immutable set.</returns>
10796 <member name="T:System.Collections.Immutable.ImmutableSortedSet`1">
10798 Contains the inner <see cref="T:System.Collections.Immutable.ImmutableSortedSet`1.Builder"/> class.
10801 An immutable sorted set implementation.
10803 <typeparam name="T">The type of elements in the set.</typeparam>
10805 We implement <see cref="T:System.Collections.Generic.IReadOnlyList`1"/> because it adds an ordinal indexer.
10806 We implement <see cref="T:System.Collections.Generic.IList`1"/> because it gives us <see cref="M:System.Collections.Generic.IList`1.IndexOf(`0)"/>, which is important for some folks.
10809 <member name="T:System.Collections.Immutable.ImmutableSortedSet`1.Builder">
10811 A sorted set that mutates with little or no memory allocations,
10812 can produce and/or build on immutable sorted set instances very efficiently.
10816 While <see cref="M:System.Collections.Immutable.ImmutableSortedSet`1.Union(System.Collections.Generic.IEnumerable{`0})"/> and other bulk change methods
10817 already provide fast bulk change operations on the collection, this class allows
10818 multiple combinations of changes to be made to a set with equal efficiency.
10821 Instance members of this class are <em>not</em> thread-safe.
10825 <member name="F:System.Collections.Immutable.ImmutableSortedSet`1.Builder._root">
10827 The root of the binary tree that stores the collection. Contents are typically not entirely frozen.
10830 <member name="F:System.Collections.Immutable.ImmutableSortedSet`1.Builder._comparer">
10832 The comparer to use for sorting the set.
10835 <member name="F:System.Collections.Immutable.ImmutableSortedSet`1.Builder._immutable">
10837 Caches an immutable instance that represents the current state of the collection.
10839 <value>Null if no immutable view has been created for the current version.</value>
10841 <member name="F:System.Collections.Immutable.ImmutableSortedSet`1.Builder._version">
10843 A number that increments every time the builder changes its contents.
10846 <member name="F:System.Collections.Immutable.ImmutableSortedSet`1.Builder._syncRoot">
10848 The object callers may use to synchronize access to this collection.
10851 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Builder.#ctor(System.Collections.Immutable.ImmutableSortedSet{`0})">
10853 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableSortedSet`1.Builder"/> class.
10855 <param name="set">A set to act as the basis for a new set.</param>
10857 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.Builder.Count">
10859 Gets the number of elements in this set.
10862 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.Builder.System#Collections#Generic#ICollection{T}#IsReadOnly">
10864 Gets a value indicating whether this instance is read-only.
10866 <value>Always <c>false</c>.</value>
10868 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.Builder.Item(System.Int32)">
10870 Gets the element of the set at the given index.
10872 <param name="index">The 0-based index of the element in the set to return.</param>
10873 <returns>The element at the given position.</returns>
10875 No index setter is offered because the element being replaced may not sort
10876 to the same position in the sorted collection as the replacing element.
10879 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.Builder.Max">
10881 Gets the maximum value in the collection, as defined by the comparer.
10883 <value>The maximum value in the set.</value>
10885 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.Builder.Min">
10887 Gets the minimum value in the collection, as defined by the comparer.
10889 <value>The minimum value in the set.</value>
10891 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.Builder.KeyComparer">
10893 Gets or sets the <see cref="T:System.Collections.Generic.IComparer`1"/> object that is used to determine equality for the values in the <see cref="T:System.Collections.Immutable.ImmutableSortedSet`1"/>.
10895 <value>The comparer that is used to determine equality for the values in the set.</value>
10897 When changing the comparer in such a way as would introduce collisions, the conflicting elements are dropped,
10898 leaving only one of each matching pair in the collection.
10901 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.Builder.Version">
10903 Gets the current version of the contents of this builder.
10906 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.Builder.Root">
10908 Gets or sets the root node that represents the data in this collection.
10911 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Builder.Add(`0)">
10913 Adds an element to the current set and returns a value to indicate if the
10914 element was successfully added.
10916 <param name="item">The element to add to the set.</param>
10917 <returns>true if the element is added to the set; false if the element is already in the set.</returns>
10919 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Builder.ExceptWith(System.Collections.Generic.IEnumerable{`0})">
10921 Removes all elements in the specified collection from the current set.
10923 <param name="other">The collection of items to remove from the set.</param>
10925 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Builder.IntersectWith(System.Collections.Generic.IEnumerable{`0})">
10927 Modifies the current set so that it contains only elements that are also in a specified collection.
10929 <param name="other">The collection to compare to the current set.</param>
10931 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Builder.IsProperSubsetOf(System.Collections.Generic.IEnumerable{`0})">
10933 Determines whether the current set is a proper (strict) subset of a specified collection.
10935 <param name="other">The collection to compare to the current set.</param>
10936 <returns>true if the current set is a correct subset of other; otherwise, false.</returns>
10938 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Builder.IsProperSupersetOf(System.Collections.Generic.IEnumerable{`0})">
10940 Determines whether the current set is a proper (strict) superset of a specified collection.
10942 <param name="other">The collection to compare to the current set.</param>
10943 <returns>true if the current set is a superset of other; otherwise, false.</returns>
10945 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Builder.IsSubsetOf(System.Collections.Generic.IEnumerable{`0})">
10947 Determines whether the current set is a subset of a specified collection.
10949 <param name="other">The collection to compare to the current set.</param>
10950 <returns>true if the current set is a subset of other; otherwise, false.</returns>
10952 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Builder.IsSupersetOf(System.Collections.Generic.IEnumerable{`0})">
10954 Determines whether the current set is a superset of a specified collection.
10956 <param name="other">The collection to compare to the current set.</param>
10957 <returns>true if the current set is a superset of other; otherwise, false.</returns>
10959 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Builder.Overlaps(System.Collections.Generic.IEnumerable{`0})">
10961 Determines whether the current set overlaps with the specified collection.
10963 <param name="other">The collection to compare to the current set.</param>
10964 <returns>true if the current set and other share at least one common element; otherwise, false.</returns>
10966 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Builder.SetEquals(System.Collections.Generic.IEnumerable{`0})">
10968 Determines whether the current set and the specified collection contain the same elements.
10970 <param name="other">The collection to compare to the current set.</param>
10971 <returns>true if the current set is equal to other; otherwise, false.</returns>
10973 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Builder.SymmetricExceptWith(System.Collections.Generic.IEnumerable{`0})">
10975 Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both.
10977 <param name="other">The collection to compare to the current set.</param>
10979 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Builder.UnionWith(System.Collections.Generic.IEnumerable{`0})">
10981 Modifies the current set so that it contains all elements that are present in both the current set and in the specified collection.
10983 <param name="other">The collection to compare to the current set.</param>
10985 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Builder.System#Collections#Generic#ICollection{T}#Add(`0)">
10987 Adds an element to the current set and returns a value to indicate if the
10988 element was successfully added.
10990 <param name="item">The element to add to the set.</param>
10992 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Builder.Clear">
10994 Removes all elements from this set.
10997 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Builder.Contains(`0)">
10999 Determines whether the set contains a specific value.
11001 <param name="item">The object to locate in the set.</param>
11002 <returns>true if item is found in the set; false otherwise.</returns>
11004 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Builder.System#Collections#Generic#ICollection{T}#CopyTo(`0[],System.Int32)">
11006 See <see cref="T:System.Collections.Generic.ICollection`1"/>
11009 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Builder.Remove(`0)">
11011 Removes the first occurrence of a specific object from the set.
11013 <param name="item">The object to remove from the set.</param>
11014 <returns><c>true</c> if the item was removed from the set; <c>false</c> if the item was not found in the set.</returns>
11016 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Builder.GetEnumerator">
11018 Returns an enumerator that iterates through the collection.
11020 <returns>A enumerator that can be used to iterate through the collection.</returns>
11022 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Builder.System#Collections#Generic#IEnumerable{T}#GetEnumerator">
11024 Returns an enumerator that iterates through the collection.
11026 <returns>A enumerator that can be used to iterate through the collection.</returns>
11028 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Builder.System#Collections#IEnumerable#GetEnumerator">
11030 Returns an enumerator that iterates through the collection.
11032 <returns>A enumerator that can be used to iterate through the collection.</returns>
11034 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Builder.Reverse">
11036 Returns an <see cref="T:System.Collections.Generic.IEnumerable`1"/> that iterates over this
11037 collection in reverse order.
11040 An enumerator that iterates over the <see cref="T:System.Collections.Immutable.ImmutableSortedSet`1.Builder"/>
11044 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Builder.ToImmutable">
11046 Creates an immutable sorted set based on the contents of this instance.
11048 <returns>An immutable set.</returns>
11050 This method is an O(n) operation, and approaches O(1) time as the number of
11051 actual mutations to the set since the last call to this method approaches 0.
11054 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Builder.System#Collections#ICollection#CopyTo(System.Array,System.Int32)">
11056 Copies the elements of the <see cref="T:System.Collections.ICollection"/> to an <see cref="T:System.Array"/>, starting at a particular <see cref="T:System.Array"/> index.
11058 <param name="array">The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements copied from <see cref="T:System.Collections.ICollection"/>. The <see cref="T:System.Array"/> must have zero-based indexing.</param>
11059 <param name="arrayIndex">The zero-based index in <paramref name="array"/> at which copying begins.</param>
11061 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.Builder.System#Collections#ICollection#IsSynchronized">
11063 Gets a value indicating whether access to the <see cref="T:System.Collections.ICollection"/> is synchronized (thread safe).
11065 <returns>true if access to the <see cref="T:System.Collections.ICollection"/> is synchronized (thread safe); otherwise, false.</returns>
11067 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.Builder.System#Collections#ICollection#SyncRoot">
11069 Gets an object that can be used to synchronize access to the <see cref="T:System.Collections.ICollection"/>.
11071 <returns>An object that can be used to synchronize access to the <see cref="T:System.Collections.ICollection"/>.</returns>
11073 <member name="F:System.Collections.Immutable.ImmutableSortedSet`1.RefillOverIncrementalThreshold">
11075 This is the factor between the small collection's size and the large collection's size in a bulk operation,
11076 under which recreating the entire collection using a fast method rather than some incremental update
11077 (that requires tree rebalancing) is preferable.
11080 <member name="F:System.Collections.Immutable.ImmutableSortedSet`1.Empty">
11082 An empty sorted set with the default sort comparer.
11085 <member name="F:System.Collections.Immutable.ImmutableSortedSet`1._root">
11087 The root node of the AVL tree that stores this set.
11090 <member name="F:System.Collections.Immutable.ImmutableSortedSet`1._comparer">
11092 The comparer used to sort elements in this set.
11095 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.#ctor(System.Collections.Generic.IComparer{`0})">
11097 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableSortedSet`1"/> class.
11099 <param name="comparer">The comparer.</param>
11101 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.#ctor(System.Collections.Immutable.ImmutableSortedSet{`0}.Node,System.Collections.Generic.IComparer{`0})">
11103 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableSortedSet`1"/> class.
11105 <param name="root">The root of the AVL tree with the contents of this set.</param>
11106 <param name="comparer">The comparer.</param>
11108 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Clear">
11110 See the <see cref="T:System.Collections.Immutable.IImmutableSet`1"/> interface.
11113 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.Max">
11115 Gets the maximum value in the collection, as defined by the comparer.
11117 <value>The maximum value in the set.</value>
11119 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.Min">
11121 Gets the minimum value in the collection, as defined by the comparer.
11123 <value>The minimum value in the set.</value>
11125 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.IsEmpty">
11127 See the <see cref="T:System.Collections.Immutable.IImmutableSet`1"/> interface.
11130 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.Count">
11132 See the <see cref="T:System.Collections.Immutable.IImmutableSet`1"/> interface.
11135 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.KeyComparer">
11137 See the <see cref="T:System.Collections.Generic.ISortKeyCollection`1"/> interface.
11140 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.Root">
11142 Gets the root node (for testing purposes).
11145 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.Item(System.Int32)">
11147 Gets the element of the set at the given index.
11149 <param name="index">The 0-based index of the element in the set to return.</param>
11150 <returns>The element at the given position.</returns>
11152 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.ToBuilder">
11154 Creates a collection with the same contents as this collection that
11155 can be efficiently mutated across multiple operations using standard
11156 mutable interfaces.
11159 This is an O(1) operation and results in only a single (small) memory allocation.
11160 The mutable collection that is returned is *not* thread-safe.
11163 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Add(`0)">
11165 See the <see cref="T:System.Collections.Immutable.IImmutableSet`1"/> interface.
11168 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Remove(`0)">
11170 See the <see cref="T:System.Collections.Immutable.IImmutableSet`1"/> interface.
11173 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.TryGetValue(`0,`0@)">
11175 Searches the set for a given value and returns the equal value it finds, if any.
11177 <param name="equalValue">The value to search for.</param>
11178 <param name="actualValue">The value from the set that the search found, or the original value if the search yielded no match.</param>
11179 <returns>A value indicating whether the search was successful.</returns>
11181 This can be useful when you want to reuse a previously stored reference instead of
11182 a newly constructed one (so that more sharing of references can occur) or to look up
11183 a value that has more complete data than the value you currently have, although their
11184 comparer functions indicate they are equal.
11187 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Intersect(System.Collections.Generic.IEnumerable{`0})">
11189 See the <see cref="T:System.Collections.Immutable.IImmutableSet`1"/> interface.
11192 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Except(System.Collections.Generic.IEnumerable{`0})">
11194 See the <see cref="T:System.Collections.Immutable.IImmutableSet`1"/> interface.
11197 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.SymmetricExcept(System.Collections.Generic.IEnumerable{`0})">
11199 Produces a set that contains elements either in this set or a given sequence, but not both.
11201 <param name="other">The other sequence of items.</param>
11202 <returns>The new set.</returns>
11204 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Union(System.Collections.Generic.IEnumerable{`0})">
11206 See the <see cref="T:System.Collections.Immutable.IImmutableSet`1"/> interface.
11209 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.WithComparer(System.Collections.Generic.IComparer{`0})">
11211 See the <see cref="T:System.Collections.Immutable.IImmutableSet`1"/> interface.
11214 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.SetEquals(System.Collections.Generic.IEnumerable{`0})">
11216 Checks whether a given sequence of items entirely describe the contents of this set.
11218 <param name="other">The sequence of items to check against this set.</param>
11219 <returns>A value indicating whether the sets are equal.</returns>
11221 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.IsProperSubsetOf(System.Collections.Generic.IEnumerable{`0})">
11223 Determines whether the current set is a property (strict) subset of a specified collection.
11225 <param name="other">The collection to compare to the current set.</param>
11226 <returns>true if the current set is a correct subset of other; otherwise, false.</returns>
11228 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.IsProperSupersetOf(System.Collections.Generic.IEnumerable{`0})">
11230 Determines whether the current set is a correct superset of a specified collection.
11232 <param name="other">The collection to compare to the current set.</param>
11233 <returns>true if the current set is a correct superset of other; otherwise, false.</returns>
11235 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.IsSubsetOf(System.Collections.Generic.IEnumerable{`0})">
11237 Determines whether a set is a subset of a specified collection.
11239 <param name="other">The collection to compare to the current set.</param>
11240 <returns>true if the current set is a subset of other; otherwise, false.</returns>
11242 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.IsSupersetOf(System.Collections.Generic.IEnumerable{`0})">
11244 Determines whether the current set is a superset of a specified collection.
11246 <param name="other">The collection to compare to the current set.</param>
11247 <returns>true if the current set is a superset of other; otherwise, false.</returns>
11249 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Overlaps(System.Collections.Generic.IEnumerable{`0})">
11251 Determines whether the current set overlaps with the specified collection.
11253 <param name="other">The collection to compare to the current set.</param>
11254 <returns>true if the current set and other share at least one common element; otherwise, false.</returns>
11256 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Reverse">
11258 Returns an <see cref="T:System.Collections.Generic.IEnumerable`1"/> that iterates over this
11259 collection in reverse order.
11262 An enumerator that iterates over the <see cref="T:System.Collections.Immutable.ImmutableSortedSet`1"/>
11266 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.IndexOf(`0)">
11268 Gets the position within this set that the specified value does or would appear.
11270 <param name="item">The value whose position is being sought.</param>
11272 The index of the specified <paramref name="item"/> in the sorted set,
11273 if <paramref name="item"/> is found. If <paramref name="item"/> is not
11274 found and <paramref name="item"/> is less than one or more elements in this set,
11275 a negative number which is the bitwise complement of the index of the first
11276 element that is larger than value. If <paramref name="item"/> is not found
11277 and <paramref name="item"/> is greater than any of the elements in the set,
11278 a negative number which is the bitwise complement of (the index of the last
11282 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Contains(`0)">
11284 See the <see cref="T:System.Collections.Immutable.IImmutableSet`1"/> interface.
11287 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#Immutable#IImmutableSet{T}#Clear">
11289 See the <see cref="T:System.Collections.Immutable.IImmutableSet`1"/> interface.
11292 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#Immutable#IImmutableSet{T}#Add(`0)">
11294 See the <see cref="T:System.Collections.Immutable.IImmutableSet`1"/> interface.
11297 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#Immutable#IImmutableSet{T}#Remove(`0)">
11299 See the <see cref="T:System.Collections.Immutable.IImmutableSet`1"/> interface.
11302 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#Immutable#IImmutableSet{T}#Intersect(System.Collections.Generic.IEnumerable{`0})">
11304 See the <see cref="T:System.Collections.Immutable.IImmutableSet`1"/> interface.
11307 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#Immutable#IImmutableSet{T}#Except(System.Collections.Generic.IEnumerable{`0})">
11309 See the <see cref="T:System.Collections.Immutable.IImmutableSet`1"/> interface.
11312 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#Immutable#IImmutableSet{T}#SymmetricExcept(System.Collections.Generic.IEnumerable{`0})">
11314 Produces a set that contains elements either in this set or a given sequence, but not both.
11316 <param name="other">The other sequence of items.</param>
11317 <returns>The new set.</returns>
11319 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#Immutable#IImmutableSet{T}#Union(System.Collections.Generic.IEnumerable{`0})">
11321 See the <see cref="T:System.Collections.Immutable.IImmutableSet`1"/> interface.
11324 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#Generic#ISet{T}#Add(`0)">
11326 See <see cref="T:System.Collections.Generic.ISet`1"/>
11329 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#Generic#ISet{T}#ExceptWith(System.Collections.Generic.IEnumerable{`0})">
11331 See <see cref="T:System.Collections.Generic.ISet`1"/>
11334 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#Generic#ISet{T}#IntersectWith(System.Collections.Generic.IEnumerable{`0})">
11336 See <see cref="T:System.Collections.Generic.ISet`1"/>
11339 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#Generic#ISet{T}#SymmetricExceptWith(System.Collections.Generic.IEnumerable{`0})">
11341 See <see cref="T:System.Collections.Generic.ISet`1"/>
11344 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#Generic#ISet{T}#UnionWith(System.Collections.Generic.IEnumerable{`0})">
11346 See <see cref="T:System.Collections.Generic.ISet`1"/>
11349 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#Generic#ICollection{T}#IsReadOnly">
11351 See the <see cref="T:System.Collections.Generic.ICollection`1"/> interface.
11354 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#Generic#ICollection{T}#CopyTo(`0[],System.Int32)">
11356 See the <see cref="T:System.Collections.Generic.ICollection`1"/> interface.
11359 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#Generic#ICollection{T}#Add(`0)">
11361 See the <see cref="T:System.Collections.Generic.IList`1"/> interface.
11364 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#Generic#ICollection{T}#Clear">
11366 See the <see cref="T:System.Collections.Generic.ICollection`1"/> interface.
11369 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#Generic#ICollection{T}#Remove(`0)">
11371 See the <see cref="T:System.Collections.Generic.IList`1"/> interface.
11374 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#Generic#IList{T}#Item(System.Int32)">
11376 See the <see cref="T:System.Collections.Generic.IList`1"/> interface.
11379 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#Generic#IList{T}#Insert(System.Int32,`0)">
11381 See the <see cref="T:System.Collections.Generic.IList`1"/> interface.
11384 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#Generic#IList{T}#RemoveAt(System.Int32)">
11386 See the <see cref="T:System.Collections.Generic.IList`1"/> interface.
11389 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#IList#IsFixedSize">
11391 Gets a value indicating whether the <see cref="T:System.Collections.IList"/> has a fixed size.
11393 <returns>true if the <see cref="T:System.Collections.IList"/> has a fixed size; otherwise, false.</returns>
11395 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#IList#IsReadOnly">
11397 Gets a value indicating whether the <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.
11399 <returns>true if the <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only; otherwise, false.
11402 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#ICollection#SyncRoot">
11404 See <see cref="T:System.Collections.ICollection"/>.
11407 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#ICollection#IsSynchronized">
11409 See the <see cref="T:System.Collections.ICollection"/> interface.
11412 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#IList#Add(System.Object)">
11414 Adds an item to the <see cref="T:System.Collections.IList"/>.
11416 <param name="value">The object to add to the <see cref="T:System.Collections.IList"/>.</param>
11418 The position into which the new element was inserted, or -1 to indicate that the item was not inserted into the collection,
11420 <exception cref="T:System.NotSupportedException"></exception>
11422 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#IList#Clear">
11424 Clears this instance.
11426 <exception cref="T:System.NotSupportedException"></exception>
11428 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#IList#Contains(System.Object)">
11430 Determines whether the <see cref="T:System.Collections.IList"/> contains a specific value.
11432 <param name="value">The object to locate in the <see cref="T:System.Collections.IList"/>.</param>
11434 true if the <see cref="T:System.Object"/> is found in the <see cref="T:System.Collections.IList"/>; otherwise, false.
11437 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#IList#IndexOf(System.Object)">
11439 Determines the index of a specific item in the <see cref="T:System.Collections.IList"/>.
11441 <param name="value">The object to locate in the <see cref="T:System.Collections.IList"/>.</param>
11443 The index of <paramref name="value"/> if found in the list; otherwise, -1.
11446 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#IList#Insert(System.Int32,System.Object)">
11448 Inserts an item to the <see cref="T:System.Collections.IList"/> at the specified index.
11450 <param name="index">The zero-based index at which <paramref name="value"/> should be inserted.</param>
11451 <param name="value">The object to insert into the <see cref="T:System.Collections.IList"/>.</param>
11452 <exception cref="T:System.NotSupportedException"></exception>
11454 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#IList#Remove(System.Object)">
11456 Removes the first occurrence of a specific object from the <see cref="T:System.Collections.IList"/>.
11458 <param name="value">The object to remove from the <see cref="T:System.Collections.IList"/>.</param>
11459 <exception cref="T:System.NotSupportedException"></exception>
11461 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#IList#RemoveAt(System.Int32)">
11465 <param name="index">The index.</param>
11466 <exception cref="T:System.NotSupportedException"></exception>
11468 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#IList#Item(System.Int32)">
11470 Gets or sets the <see cref="T:System.Object"/> at the specified index.
11473 The <see cref="T:System.Object"/>.
11475 <param name="index">The index.</param>
11476 <exception cref="T:System.NotSupportedException"></exception>
11478 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#ICollection#CopyTo(System.Array,System.Int32)">
11480 Copies the elements of the <see cref="T:System.Collections.ICollection"/> to an <see cref="T:System.Array"/>, starting at a particular <see cref="T:System.Array"/> index.
11482 <param name="array">The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements copied from <see cref="T:System.Collections.ICollection"/>. The <see cref="T:System.Array"/> must have zero-based indexing.</param>
11483 <param name="index">The zero-based index in <paramref name="array"/> at which copying begins.</param>
11485 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#Generic#IEnumerable{T}#GetEnumerator">
11487 Returns an enumerator that iterates through the collection.
11490 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
11493 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.System#Collections#IEnumerable#GetEnumerator">
11495 Returns an enumerator that iterates through a collection.
11498 An <see cref="T:System.Collections.IEnumerator"/> object that can be used to iterate through the collection.
11501 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.GetEnumerator">
11503 Returns an enumerator that iterates through the collection.
11506 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
11509 CAUTION: when this enumerator is actually used as a valuetype (not boxed) do NOT copy it by assigning to a second variable
11510 or by passing it to another method. When this enumerator is disposed of it returns a mutable reference type stack to a resource pool,
11511 and if the value type enumerator is copied (which can easily happen unintentionally if you pass the value around) there is a risk
11512 that a stack that has already been returned to the resource pool may still be in use by one of the enumerator copies, leading to data
11513 corruption and/or exceptions.
11516 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.TryCastToImmutableSortedSet(System.Collections.Generic.IEnumerable{`0},System.Collections.Immutable.ImmutableSortedSet{`0}@)">
11518 Discovers an immutable sorted set for a given value, if possible.
11521 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Wrap(System.Collections.Immutable.ImmutableSortedSet{`0}.Node,System.Collections.Generic.IComparer{`0})">
11523 Creates a new sorted set wrapper for a node tree.
11525 <param name="root">The root of the collection.</param>
11526 <param name="comparer">The comparer used to build the tree.</param>
11527 <returns>The immutable sorted set instance.</returns>
11529 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.UnionIncremental(System.Collections.Generic.IEnumerable{`0})">
11531 Adds items to this collection using the standard spine rewrite and tree rebalance technique.
11533 <param name="items">The items to add.</param>
11534 <returns>The new collection.</returns>
11536 This method is least demanding on memory, providing the great chance of memory reuse
11537 and does not require allocating memory large enough to store all items contiguously.
11538 It's performance is optimal for additions that do not significantly dwarf the existing
11539 size of this collection.
11542 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Wrap(System.Collections.Immutable.ImmutableSortedSet{`0}.Node)">
11544 Creates a wrapping collection type around a root node.
11546 <param name="root">The root node to wrap.</param>
11547 <returns>A wrapping collection type for the new tree.</returns>
11549 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.LeafToRootRefill(System.Collections.Generic.IEnumerable{`0})">
11551 Creates an immutable sorted set with the contents from this collection and a sequence of elements.
11553 <param name="addedItems">The sequence of elements to add to this set.</param>
11554 <returns>The immutable sorted set.</returns>
11556 <member name="T:System.Collections.Immutable.ImmutableSortedSet`1.Enumerator">
11558 Enumerates the contents of a binary tree.
11561 This struct can and should be kept in exact sync with the other binary tree enumerators:
11562 <see cref="T:System.Collections.Immutable.ImmutableList`1.Enumerator"/>, <see cref="T:System.Collections.Immutable.ImmutableSortedDictionary`2.Enumerator"/>, and <see cref="T:System.Collections.Immutable.ImmutableSortedSet`1.Enumerator"/>.
11564 CAUTION: when this enumerator is actually used as a valuetype (not boxed) do NOT copy it by assigning to a second variable
11565 or by passing it to another method. When this enumerator is disposed of it returns a mutable reference type stack to a resource pool,
11566 and if the value type enumerator is copied (which can easily happen unintentionally if you pass the value around) there is a risk
11567 that a stack that has already been returned to the resource pool may still be in use by one of the enumerator copies, leading to data
11568 corruption and/or exceptions.
11571 <member name="F:System.Collections.Immutable.ImmutableSortedSet`1.Enumerator.s_enumeratingStacks">
11573 The resource pool of reusable mutable stacks for purposes of enumeration.
11576 We utilize this resource pool to make "allocation free" enumeration achievable.
11579 <member name="F:System.Collections.Immutable.ImmutableSortedSet`1.Enumerator._builder">
11581 The builder being enumerated, if applicable.
11584 <member name="F:System.Collections.Immutable.ImmutableSortedSet`1.Enumerator._poolUserId">
11586 A unique ID for this instance of this enumerator.
11587 Used to protect pooled objects from use after they are recycled.
11590 <member name="F:System.Collections.Immutable.ImmutableSortedSet`1.Enumerator._reverse">
11592 A flag indicating whether this enumerator works in reverse sort order.
11595 <member name="F:System.Collections.Immutable.ImmutableSortedSet`1.Enumerator._root">
11597 The set being enumerated.
11600 <member name="F:System.Collections.Immutable.ImmutableSortedSet`1.Enumerator._stack">
11602 The stack to use for enumerating the binary tree.
11605 We use <see cref="T:System.Collections.Immutable.RefAsValueType`1"/> as a wrapper to avoid paying the cost of covariant checks whenever
11606 the underlying array that the <see cref="T:System.Collections.Generic.Stack`1"/> class uses is written to.
11607 We've recognized this as a perf win in ETL traces for these stack frames:
11609 clr!ArrayStoreCheck
11610 clr!ObjIsInstanceOf
11613 <member name="F:System.Collections.Immutable.ImmutableSortedSet`1.Enumerator._current">
11615 The node currently selected.
11618 <member name="F:System.Collections.Immutable.ImmutableSortedSet`1.Enumerator._enumeratingBuilderVersion">
11620 The version of the builder (when applicable) that is being enumerated.
11623 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Enumerator.#ctor(System.Collections.Immutable.ImmutableSortedSet{`0}.Node,System.Collections.Immutable.ImmutableSortedSet{`0}.Builder,System.Boolean)">
11625 Initializes an <see cref="T:System.Collections.Immutable.ImmutableSortedSet`1.Enumerator"/> structure.
11627 <param name="root">The root of the set to be enumerated.</param>
11628 <param name="builder">The builder, if applicable.</param>
11629 <param name="reverse"><c>true</c> to enumerate the collection in reverse.</param>
11631 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.Enumerator.System#Collections#Immutable#ISecurePooledObjectUser#PoolUserId">
11634 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.Enumerator.Current">
11636 The current element.
11639 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.Enumerator.System#Collections#IEnumerator#Current">
11641 The current element.
11644 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Enumerator.Dispose">
11646 Disposes of this enumerator and returns the stack reference to the resource pool.
11649 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Enumerator.MoveNext">
11651 Advances enumeration to the next element.
11653 <returns>A value indicating whether there is another element in the enumeration.</returns>
11655 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Enumerator.Reset">
11657 Restarts enumeration.
11660 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Enumerator.ThrowIfDisposed">
11662 Throws an <see cref="T:System.ObjectDisposedException"/> if this enumerator has been disposed.
11665 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Enumerator.ThrowIfChanged">
11667 Throws an exception if the underlying builder's contents have been changed since enumeration started.
11669 <exception cref="T:System.InvalidOperationException">Thrown if the collection has changed.</exception>
11671 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Enumerator.PushNext(System.Collections.Immutable.ImmutableSortedSet{`0}.Node)">
11673 Pushes this node and all its Left (or Right, if reversed) descendants onto the stack.
11675 <param name="node">The starting node to push onto the stack.</param>
11677 <member name="T:System.Collections.Immutable.ImmutableSortedSet`1.ReverseEnumerable">
11679 An reverse enumerable of a sorted set.
11682 <member name="F:System.Collections.Immutable.ImmutableSortedSet`1.ReverseEnumerable._root">
11684 The root node to enumerate.
11687 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.ReverseEnumerable.#ctor(System.Collections.Immutable.ImmutableSortedSet{`0}.Node)">
11689 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableSortedSet`1.ReverseEnumerable"/> class.
11691 <param name="root">The root of the data structure to reverse enumerate.</param>
11693 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.ReverseEnumerable.GetEnumerator">
11695 Returns an enumerator that iterates through the collection.
11698 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
11701 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.ReverseEnumerable.System#Collections#IEnumerable#GetEnumerator">
11703 Returns an enumerator that iterates through a collection.
11706 An <see cref="T:System.Collections.IEnumerator"/> object that can be used to iterate through the collection.
11709 <member name="T:System.Collections.Immutable.ImmutableSortedSet`1.Node">
11711 A node in the AVL tree storing this set.
11714 <member name="F:System.Collections.Immutable.ImmutableSortedSet`1.Node.EmptyNode">
11716 The default empty node.
11719 <member name="F:System.Collections.Immutable.ImmutableSortedSet`1.Node._key">
11721 The key associated with this node.
11724 <member name="F:System.Collections.Immutable.ImmutableSortedSet`1.Node._frozen">
11726 A value indicating whether this node has been frozen (made immutable).
11729 Nodes must be frozen before ever being observed by a wrapping collection type
11730 to protect collections from further mutations.
11733 <member name="F:System.Collections.Immutable.ImmutableSortedSet`1.Node._height">
11735 The depth of the tree beneath this node.
11738 <member name="F:System.Collections.Immutable.ImmutableSortedSet`1.Node._count">
11740 The number of elements contained by this subtree starting at this node.
11743 If this node would benefit from saving 4 bytes, we could have only a few nodes
11744 scattered throughout the graph actually record the count of nodes beneath them.
11745 Those without the count could query their descendants, which would often short-circuit
11746 when they hit a node that *does* include a count field.
11749 <member name="F:System.Collections.Immutable.ImmutableSortedSet`1.Node._left">
11754 <member name="F:System.Collections.Immutable.ImmutableSortedSet`1.Node._right">
11759 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Node.#ctor">
11761 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableSortedSet`1.Node"/> class
11762 that is pre-frozen.
11765 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Node.#ctor(`0,System.Collections.Immutable.ImmutableSortedSet{`0}.Node,System.Collections.Immutable.ImmutableSortedSet{`0}.Node,System.Boolean)">
11767 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableSortedSet`1.Node"/> class
11768 that is not yet frozen.
11770 <param name="key">The value stored by this node.</param>
11771 <param name="left">The left branch.</param>
11772 <param name="right">The right branch.</param>
11773 <param name="frozen">Whether this node is prefrozen.</param>
11775 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.Node.IsEmpty">
11777 Gets a value indicating whether this instance is empty.
11780 <c>true</c> if this instance is empty; otherwise, <c>false</c>.
11783 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.Node.Height">
11785 Gets the height of the tree beneath this node.
11788 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.Node.Left">
11790 Gets the left branch of this node.
11793 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.Node.System#Collections#Immutable#IBinaryTree#Left">
11795 Gets the left branch of this node.
11798 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.Node.Right">
11800 Gets the right branch of this node.
11803 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.Node.System#Collections#Immutable#IBinaryTree#Right">
11805 Gets the right branch of this node.
11808 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.Node.System#Collections#Immutable#IBinaryTree{T}#Left">
11810 Gets the left branch of this node.
11813 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.Node.System#Collections#Immutable#IBinaryTree{T}#Right">
11815 Gets the right branch of this node.
11818 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.Node.Value">
11820 Gets the value represented by the current node.
11823 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.Node.Count">
11825 Gets the number of elements contained by this subtree starting at this node.
11828 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.Node.Key">
11833 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.Node.Max">
11835 Gets the maximum value in the collection, as defined by the comparer.
11837 <value>The maximum value in the set.</value>
11839 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.Node.Min">
11841 Gets the minimum value in the collection, as defined by the comparer.
11843 <value>The minimum value in the set.</value>
11845 <member name="P:System.Collections.Immutable.ImmutableSortedSet`1.Node.Item(System.Int32)">
11847 Gets the element of the set at the given index.
11849 <param name="index">The 0-based index of the element in the set to return.</param>
11850 <returns>The element at the given position.</returns>
11852 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Node.GetEnumerator">
11854 Returns an enumerator that iterates through the collection.
11857 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
11860 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Node.System#Collections#Generic#IEnumerable{T}#GetEnumerator">
11862 Returns an enumerator that iterates through the collection.
11865 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
11868 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Node.System#Collections#IEnumerable#GetEnumerator">
11870 Returns an enumerator that iterates through the collection.
11873 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
11876 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Node.GetEnumerator(System.Collections.Immutable.ImmutableSortedSet{`0}.Builder)">
11878 Returns an enumerator that iterates through the collection.
11880 <param name="builder">The builder, if applicable.</param>
11882 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
11885 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Node.CopyTo(`0[],System.Int32)">
11887 See the <see cref="T:System.Collections.Generic.ICollection`1"/> interface.
11890 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Node.CopyTo(System.Array,System.Int32)">
11892 See the <see cref="T:System.Collections.Generic.ICollection`1"/> interface.
11895 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Node.Add(`0,System.Collections.Generic.IComparer{`0},System.Boolean@)">
11897 Adds the specified key to the tree.
11899 <param name="key">The key.</param>
11900 <param name="comparer">The comparer.</param>
11901 <param name="mutated">Receives a value indicating whether this node tree has mutated because of this operation.</param>
11902 <returns>The new tree.</returns>
11904 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Node.Remove(`0,System.Collections.Generic.IComparer{`0},System.Boolean@)">
11906 Removes the specified key from the tree.
11908 <param name="key">The key.</param>
11909 <param name="comparer">The comparer.</param>
11910 <param name="mutated">Receives a value indicating whether this node tree has mutated because of this operation.</param>
11911 <returns>The new tree.</returns>
11913 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Node.Contains(`0,System.Collections.Generic.IComparer{`0})">
11915 Determines whether the specified key is in this tree.
11917 <param name="key">The key.</param>
11918 <param name="comparer">The comparer.</param>
11920 <c>true</c> if the tree contains the specified key; otherwise, <c>false</c>.
11923 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Node.Freeze">
11925 Freezes this node and all descendant nodes so that any mutations require a new instance of the nodes.
11928 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Node.Search(`0,System.Collections.Generic.IComparer{`0})">
11930 Searches for the specified key.
11932 <param name="key">The key to search for.</param>
11933 <param name="comparer">The comparer.</param>
11934 <returns>The matching node, or <see cref="F:System.Collections.Immutable.ImmutableSortedSet`1.Node.EmptyNode"/> if no match was found.</returns>
11936 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Node.IndexOf(`0,System.Collections.Generic.IComparer{`0})">
11938 Searches for the specified key.
11940 <param name="key">The key to search for.</param>
11941 <param name="comparer">The comparer.</param>
11942 <returns>The matching node, or <see cref="F:System.Collections.Immutable.ImmutableSortedSet`1.Node.EmptyNode"/> if no match was found.</returns>
11944 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Node.Reverse">
11946 Returns an <see cref="T:System.Collections.Generic.IEnumerable`1"/> that iterates over this
11947 collection in reverse order.
11950 An enumerator that iterates over the <see cref="T:System.Collections.Immutable.ImmutableSortedSet`1"/>
11954 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Node.RotateLeft(System.Collections.Immutable.ImmutableSortedSet{`0}.Node)">
11956 AVL rotate left operation.
11958 <param name="tree">The tree.</param>
11959 <returns>The rotated tree.</returns>
11961 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Node.RotateRight(System.Collections.Immutable.ImmutableSortedSet{`0}.Node)">
11963 AVL rotate right operation.
11965 <param name="tree">The tree.</param>
11966 <returns>The rotated tree.</returns>
11968 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Node.DoubleLeft(System.Collections.Immutable.ImmutableSortedSet{`0}.Node)">
11970 AVL rotate double-left operation.
11972 <param name="tree">The tree.</param>
11973 <returns>The rotated tree.</returns>
11975 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Node.DoubleRight(System.Collections.Immutable.ImmutableSortedSet{`0}.Node)">
11977 AVL rotate double-right operation.
11979 <param name="tree">The tree.</param>
11980 <returns>The rotated tree.</returns>
11982 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Node.Balance(System.Collections.Immutable.ImmutableSortedSet{`0}.Node)">
11984 Returns a value indicating whether the tree is in balance.
11986 <param name="tree">The tree.</param>
11987 <returns>0 if the tree is in balance, a positive integer if the right side is heavy, or a negative integer if the left side is heavy.</returns>
11989 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Node.IsRightHeavy(System.Collections.Immutable.ImmutableSortedSet{`0}.Node)">
11991 Determines whether the specified tree is right heavy.
11993 <param name="tree">The tree.</param>
11995 <c>true</c> if [is right heavy] [the specified tree]; otherwise, <c>false</c>.
11998 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Node.IsLeftHeavy(System.Collections.Immutable.ImmutableSortedSet{`0}.Node)">
12000 Determines whether the specified tree is left heavy.
12003 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Node.MakeBalanced(System.Collections.Immutable.ImmutableSortedSet{`0}.Node)">
12005 Balances the specified tree.
12007 <param name="tree">The tree.</param>
12008 <returns>A balanced tree.</returns>
12010 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Node.NodeTreeFromList(System.Collections.Immutable.IOrderedCollection{`0},System.Int32,System.Int32)">
12012 Creates a node tree that contains the contents of a list.
12014 <param name="items">An indexable list with the contents that the new node tree should contain.</param>
12015 <param name="start">The starting index within <paramref name="items"/> that should be captured by the node tree.</param>
12016 <param name="length">The number of elements from <paramref name="items"/> that should be captured by the node tree.</param>
12017 <returns>The root of the created node tree.</returns>
12019 <member name="M:System.Collections.Immutable.ImmutableSortedSet`1.Node.Mutate(System.Collections.Immutable.ImmutableSortedSet{`0}.Node,System.Collections.Immutable.ImmutableSortedSet{`0}.Node)">
12021 Creates a node mutation, either by mutating this node (if not yet frozen) or by creating a clone of this node
12022 with the described changes.
12024 <param name="left">The left branch of the mutated node.</param>
12025 <param name="right">The right branch of the mutated node.</param>
12026 <returns>The mutated (or created) node.</returns>
12028 <member name="T:System.Collections.Immutable.ImmutableSortedSetBuilderDebuggerProxy`1">
12030 A simple view of the immutable collection that the debugger can show to the developer.
12033 <member name="F:System.Collections.Immutable.ImmutableSortedSetBuilderDebuggerProxy`1._set">
12035 The collection to be enumerated.
12038 <member name="F:System.Collections.Immutable.ImmutableSortedSetBuilderDebuggerProxy`1._contents">
12040 The simple view of the collection.
12043 <member name="M:System.Collections.Immutable.ImmutableSortedSetBuilderDebuggerProxy`1.#ctor(System.Collections.Immutable.ImmutableSortedSet{`0}.Builder)">
12045 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableSortedSetBuilderDebuggerProxy`1"/> class.
12047 <param name="builder">The collection to display in the debugger</param>
12049 <member name="P:System.Collections.Immutable.ImmutableSortedSetBuilderDebuggerProxy`1.Contents">
12051 Gets a simple debugger-viewable collection.
12054 <member name="T:System.Collections.Immutable.ImmutableSortedSetDebuggerProxy`1">
12056 A simple view of the immutable collection that the debugger can show to the developer.
12059 <member name="F:System.Collections.Immutable.ImmutableSortedSetDebuggerProxy`1._set">
12061 The collection to be enumerated.
12064 <member name="F:System.Collections.Immutable.ImmutableSortedSetDebuggerProxy`1._contents">
12066 The simple view of the collection.
12069 <member name="M:System.Collections.Immutable.ImmutableSortedSetDebuggerProxy`1.#ctor(System.Collections.Immutable.ImmutableSortedSet{`0})">
12071 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableSortedSetDebuggerProxy`1"/> class.
12073 <param name="set">The collection to display in the debugger</param>
12075 <member name="P:System.Collections.Immutable.ImmutableSortedSetDebuggerProxy`1.Contents">
12077 Gets a simple debugger-viewable collection.
12080 <member name="T:System.Collections.Immutable.ImmutableStack">
12082 A set of initialization methods for instances of <see cref="T:System.Collections.Immutable.ImmutableStack`1"/>.
12085 <member name="M:System.Collections.Immutable.ImmutableStack.Create``1">
12087 Returns an empty collection.
12089 <typeparam name="T">The type of items stored by the collection.</typeparam>
12090 <returns>The immutable collection.</returns>
12092 <member name="M:System.Collections.Immutable.ImmutableStack.Create``1(``0)">
12094 Creates a new immutable collection prefilled with the specified item.
12096 <typeparam name="T">The type of items stored by the collection.</typeparam>
12097 <param name="item">The item to prepopulate.</param>
12098 <returns>The new immutable collection.</returns>
12100 <member name="M:System.Collections.Immutable.ImmutableStack.CreateRange``1(System.Collections.Generic.IEnumerable{``0})">
12102 Creates a new immutable collection prefilled with the specified items.
12104 <typeparam name="T">The type of items stored by the collection.</typeparam>
12105 <param name="items">The items to prepopulate.</param>
12106 <returns>The new immutable collection.</returns>
12108 <member name="M:System.Collections.Immutable.ImmutableStack.Create``1(``0[])">
12110 Creates a new immutable collection prefilled with the specified items.
12112 <typeparam name="T">The type of items stored by the collection.</typeparam>
12113 <param name="items">The items to prepopulate.</param>
12114 <returns>The new immutable collection.</returns>
12116 <member name="M:System.Collections.Immutable.ImmutableStack.Pop``1(System.Collections.Immutable.IImmutableStack{``0},``0@)">
12118 Pops the top element off the stack.
12120 <typeparam name="T">The type of values contained in the stack.</typeparam>
12121 <param name="stack">The stack to modify.</param>
12122 <param name="value">The value that was removed from the stack.</param>
12124 A stack; never <c>null</c>
12126 <exception cref="T:System.InvalidOperationException">Thrown when the stack is empty.</exception>
12128 <member name="T:System.Collections.Immutable.ImmutableStack`1">
12130 An immutable stack.
12132 <typeparam name="T">The type of element stored by the stack.</typeparam>
12134 <member name="F:System.Collections.Immutable.ImmutableStack`1.s_EmptyField">
12136 The singleton empty stack.
12139 Additional instances representing the empty stack may exist on deserialized stacks.
12142 <member name="F:System.Collections.Immutable.ImmutableStack`1._head">
12144 The element on the top of the stack.
12147 <member name="F:System.Collections.Immutable.ImmutableStack`1._tail">
12149 A stack that contains the rest of the elements (under the top element).
12152 <member name="M:System.Collections.Immutable.ImmutableStack`1.#ctor">
12154 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableStack`1"/> class
12155 that acts as the empty stack.
12158 <member name="M:System.Collections.Immutable.ImmutableStack`1.#ctor(`0,System.Collections.Immutable.ImmutableStack{`0})">
12160 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableStack`1"/> class.
12162 <param name="head">The head element on the stack.</param>
12163 <param name="tail">The rest of the elements on the stack.</param>
12165 <member name="P:System.Collections.Immutable.ImmutableStack`1.Empty">
12167 Gets the empty stack, upon which all stacks are built.
12170 <member name="M:System.Collections.Immutable.ImmutableStack`1.Clear">
12172 Gets the empty stack, upon which all stacks are built.
12175 <member name="M:System.Collections.Immutable.ImmutableStack`1.System#Collections#Immutable#IImmutableStack{T}#Clear">
12177 Gets an empty stack.
12180 <member name="P:System.Collections.Immutable.ImmutableStack`1.IsEmpty">
12182 Gets a value indicating whether this instance is empty.
12185 <c>true</c> if this instance is empty; otherwise, <c>false</c>.
12188 <member name="M:System.Collections.Immutable.ImmutableStack`1.Peek">
12190 Gets the element on the top of the stack.
12193 The element on the top of the stack.
12195 <exception cref="T:System.InvalidOperationException">Thrown when the stack is empty.</exception>
12197 <member name="M:System.Collections.Immutable.ImmutableStack`1.Push(`0)">
12199 Pushes an element onto a stack and returns the new stack.
12201 <param name="value">The element to push onto the stack.</param>
12202 <returns>The new stack.</returns>
12204 <member name="M:System.Collections.Immutable.ImmutableStack`1.System#Collections#Immutable#IImmutableStack{T}#Push(`0)">
12206 Pushes an element onto a stack and returns the new stack.
12208 <param name="value">The element to push onto the stack.</param>
12209 <returns>The new stack.</returns>
12211 <member name="M:System.Collections.Immutable.ImmutableStack`1.Pop">
12213 Returns a stack that lacks the top element on this stack.
12215 <returns>A stack; never <c>null</c></returns>
12216 <exception cref="T:System.InvalidOperationException">Thrown when the stack is empty.</exception>
12218 <member name="M:System.Collections.Immutable.ImmutableStack`1.Pop(`0@)">
12220 Pops the top element off the stack.
12222 <param name="value">The value that was removed from the stack.</param>
12224 A stack; never <c>null</c>
12227 <member name="M:System.Collections.Immutable.ImmutableStack`1.System#Collections#Immutable#IImmutableStack{T}#Pop">
12229 Returns a stack that lacks the top element on this stack.
12231 <returns>A stack; never <c>null</c></returns>
12232 <exception cref="T:System.InvalidOperationException">Thrown when the stack is empty.</exception>
12234 <member name="M:System.Collections.Immutable.ImmutableStack`1.GetEnumerator">
12236 Returns an enumerator that iterates through the collection.
12239 An <see cref="T:System.Collections.Immutable.ImmutableStack`1.Enumerator"/> that can be used to iterate through the collection.
12242 <member name="M:System.Collections.Immutable.ImmutableStack`1.System#Collections#Generic#IEnumerable{T}#GetEnumerator">
12244 Returns an enumerator that iterates through the collection.
12247 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
12250 <member name="M:System.Collections.Immutable.ImmutableStack`1.System#Collections#IEnumerable#GetEnumerator">
12252 Returns an enumerator that iterates through a collection.
12255 An <see cref="T:System.Collections.IEnumerator"/> object that can be used to iterate through the collection.
12258 <member name="M:System.Collections.Immutable.ImmutableStack`1.Reverse">
12260 Reverses the order of a stack.
12262 <returns>The reversed stack.</returns>
12264 <member name="T:System.Collections.Immutable.ImmutableStack`1.Enumerator">
12266 Enumerates a stack with no memory allocations.
12269 <member name="F:System.Collections.Immutable.ImmutableStack`1.Enumerator._originalStack">
12271 The original stack being enumerated.
12274 <member name="F:System.Collections.Immutable.ImmutableStack`1.Enumerator._remainingStack">
12276 The remaining stack not yet enumerated.
12279 <member name="M:System.Collections.Immutable.ImmutableStack`1.Enumerator.#ctor(System.Collections.Immutable.ImmutableStack{`0})">
12281 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableStack`1.Enumerator"/> struct.
12283 <param name="stack">The stack to enumerator.</param>
12285 <member name="P:System.Collections.Immutable.ImmutableStack`1.Enumerator.Current">
12287 Gets the current element.
12290 <member name="M:System.Collections.Immutable.ImmutableStack`1.Enumerator.MoveNext">
12292 Moves to the first or next element.
12294 <returns>A value indicating whether there are any more elements.</returns>
12296 <member name="T:System.Collections.Immutable.ImmutableStack`1.EnumeratorObject">
12298 Enumerates a stack with no memory allocations.
12301 <member name="F:System.Collections.Immutable.ImmutableStack`1.EnumeratorObject._originalStack">
12303 The original stack being enumerated.
12306 <member name="F:System.Collections.Immutable.ImmutableStack`1.EnumeratorObject._remainingStack">
12308 The remaining stack not yet enumerated.
12311 <member name="F:System.Collections.Immutable.ImmutableStack`1.EnumeratorObject._disposed">
12313 A flag indicating whether this enumerator has been disposed.
12316 <member name="M:System.Collections.Immutable.ImmutableStack`1.EnumeratorObject.#ctor(System.Collections.Immutable.ImmutableStack{`0})">
12318 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableStack`1.EnumeratorObject"/> class.
12320 <param name="stack">The stack to enumerator.</param>
12322 <member name="P:System.Collections.Immutable.ImmutableStack`1.EnumeratorObject.Current">
12324 Gets the current element.
12327 <member name="P:System.Collections.Immutable.ImmutableStack`1.EnumeratorObject.System#Collections#IEnumerator#Current">
12329 Gets the current element.
12332 <member name="M:System.Collections.Immutable.ImmutableStack`1.EnumeratorObject.MoveNext">
12334 Moves to the first or next element.
12336 <returns>A value indicating whether there are any more elements.</returns>
12338 <member name="M:System.Collections.Immutable.ImmutableStack`1.EnumeratorObject.Reset">
12340 Resets the position to just before the first element in the list.
12343 <member name="M:System.Collections.Immutable.ImmutableStack`1.EnumeratorObject.Dispose">
12345 Disposes this instance.
12348 <member name="M:System.Collections.Immutable.ImmutableStack`1.EnumeratorObject.ThrowIfDisposed">
12350 Throws an <see cref="T:System.ObjectDisposedException"/> if this
12351 enumerator has already been disposed.
12354 <member name="T:System.Collections.Immutable.ImmutableStackDebuggerProxy`1">
12356 A simple view of the immutable collection that the debugger can show to the developer.
12359 <member name="F:System.Collections.Immutable.ImmutableStackDebuggerProxy`1._stack">
12361 The collection to be enumerated.
12364 <member name="F:System.Collections.Immutable.ImmutableStackDebuggerProxy`1._contents">
12366 The simple view of the collection.
12369 <member name="M:System.Collections.Immutable.ImmutableStackDebuggerProxy`1.#ctor(System.Collections.Immutable.ImmutableStack{`0})">
12371 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ImmutableStackDebuggerProxy`1"/> class.
12373 <param name="stack">The collection to display in the debugger</param>
12375 <member name="P:System.Collections.Immutable.ImmutableStackDebuggerProxy`1.Contents">
12377 Gets a simple debugger-viewable collection.
12380 <member name="T:System.Collections.Immutable.KeysOrValuesCollectionAccessor`3">
12382 A thin wrapper around the <see cref="P:System.Collections.Generic.IDictionary`2.Keys"/> or <see cref="P:System.Collections.Generic.IDictionary`2.Values"/> enumerators so they look like a collection.
12384 <typeparam name="TKey">The type of key in the dictionary.</typeparam>
12385 <typeparam name="TValue">The type of value in the dictionary.</typeparam>
12386 <typeparam name="T">Either TKey or TValue.</typeparam>
12388 <member name="F:System.Collections.Immutable.KeysOrValuesCollectionAccessor`3._dictionary">
12390 The underlying wrapped dictionary.
12393 <member name="F:System.Collections.Immutable.KeysOrValuesCollectionAccessor`3._keysOrValues">
12395 The key or value enumerable that this instance wraps.
12398 <member name="M:System.Collections.Immutable.KeysOrValuesCollectionAccessor`3.#ctor(System.Collections.Immutable.IImmutableDictionary{`0,`1},System.Collections.Generic.IEnumerable{`2})">
12400 Initializes a new instance of the <see cref="T:System.Collections.Immutable.KeysOrValuesCollectionAccessor`3"/> class.
12402 <param name="dictionary">The dictionary to base on.</param>
12403 <param name="keysOrValues">The keys or values enumeration to wrap as a collection.</param>
12405 <member name="P:System.Collections.Immutable.KeysOrValuesCollectionAccessor`3.IsReadOnly">
12407 See <see cref="T:System.Collections.Generic.ICollection`1"/>
12410 <member name="P:System.Collections.Immutable.KeysOrValuesCollectionAccessor`3.Count">
12412 See <see cref="T:System.Collections.Generic.ICollection`1"/>
12414 <returns>The number of elements contained in the <see cref="T:System.Collections.Generic.ICollection`1"/>.</returns>
12416 <member name="P:System.Collections.Immutable.KeysOrValuesCollectionAccessor`3.Dictionary">
12418 Gets the wrapped dictionary.
12421 <member name="M:System.Collections.Immutable.KeysOrValuesCollectionAccessor`3.Add(`2)">
12423 See <see cref="T:System.Collections.Generic.ICollection`1"/>
12426 <member name="M:System.Collections.Immutable.KeysOrValuesCollectionAccessor`3.Clear">
12428 See <see cref="T:System.Collections.Generic.ICollection`1"/>
12431 <member name="M:System.Collections.Immutable.KeysOrValuesCollectionAccessor`3.Contains(`2)">
12433 See <see cref="T:System.Collections.Generic.ICollection`1"/>
12436 <member name="M:System.Collections.Immutable.KeysOrValuesCollectionAccessor`3.CopyTo(`2[],System.Int32)">
12438 See <see cref="T:System.Collections.Generic.ICollection`1"/>
12441 <member name="M:System.Collections.Immutable.KeysOrValuesCollectionAccessor`3.Remove(`2)">
12443 See <see cref="T:System.Collections.Generic.ICollection`1"/>
12446 <member name="M:System.Collections.Immutable.KeysOrValuesCollectionAccessor`3.GetEnumerator">
12448 See <see cref="T:System.Collections.Generic.IEnumerable`1"/>
12451 <member name="M:System.Collections.Immutable.KeysOrValuesCollectionAccessor`3.System#Collections#IEnumerable#GetEnumerator">
12453 See <see cref="T:System.Collections.IEnumerable"/>
12456 <member name="M:System.Collections.Immutable.KeysOrValuesCollectionAccessor`3.System#Collections#ICollection#CopyTo(System.Array,System.Int32)">
12458 Copies the elements of the <see cref="T:System.Collections.ICollection"/> to an <see cref="T:System.Array"/>, starting at a particular <see cref="T:System.Array"/> index.
12460 <param name="array">The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements copied from <see cref="T:System.Collections.ICollection"/>. The <see cref="T:System.Array"/> must have zero-based indexing.</param>
12461 <param name="arrayIndex">The zero-based index in <paramref name="array"/> at which copying begins.</param>
12463 <member name="P:System.Collections.Immutable.KeysOrValuesCollectionAccessor`3.System#Collections#ICollection#IsSynchronized">
12465 Gets a value indicating whether access to the <see cref="T:System.Collections.ICollection"/> is synchronized (thread safe).
12467 <returns>true if access to the <see cref="T:System.Collections.ICollection"/> is synchronized (thread safe); otherwise, false.</returns>
12469 <member name="P:System.Collections.Immutable.KeysOrValuesCollectionAccessor`3.System#Collections#ICollection#SyncRoot">
12471 Gets an object that can be used to synchronize access to the <see cref="T:System.Collections.ICollection"/>.
12473 <returns>An object that can be used to synchronize access to the <see cref="T:System.Collections.ICollection"/>.</returns>
12475 <member name="T:System.Collections.Immutable.KeysCollectionAccessor`2">
12477 A lightweight collection view over and IEnumerable of keys.
12480 <member name="M:System.Collections.Immutable.KeysCollectionAccessor`2.#ctor(System.Collections.Immutable.IImmutableDictionary{`0,`1})">
12482 Initializes a new instance of the <see cref="T:System.Collections.Immutable.KeysCollectionAccessor`2"/> class.
12485 <member name="M:System.Collections.Immutable.KeysCollectionAccessor`2.Contains(`0)">
12487 See <see cref="T:System.Collections.Generic.ICollection`1"/>
12490 <member name="T:System.Collections.Immutable.ValuesCollectionAccessor`2">
12492 A lightweight collection view over and IEnumerable of values.
12495 <member name="M:System.Collections.Immutable.ValuesCollectionAccessor`2.#ctor(System.Collections.Immutable.IImmutableDictionary{`0,`1})">
12497 Initializes a new instance of the <see cref="T:System.Collections.Immutable.ValuesCollectionAccessor`2"/> class.
12500 <member name="M:System.Collections.Immutable.ValuesCollectionAccessor`2.Contains(`1)">
12502 See <see cref="T:System.Collections.Generic.ICollection`1"/>
12505 <member name="T:System.Collections.Immutable.RefAsValueType`1">
12507 A simple struct we wrap reference types inside when storing in arrays to
12508 bypass the CLR's covariant checks when writing to arrays.
12511 We use <see cref="T:System.Collections.Immutable.RefAsValueType`1"/> as a wrapper to avoid paying the cost of covariant checks whenever
12512 the underlying array that the <see cref="T:System.Collections.Generic.Stack`1"/> class uses is written to.
12513 We've recognized this as a perf win in ETL traces for these stack frames:
12515 clr!ArrayStoreCheck
12516 clr!ObjIsInstanceOf
12519 <member name="M:System.Collections.Immutable.RefAsValueType`1.#ctor(`0)">
12521 Initializes a new instance of the <see cref="T:System.Collections.Immutable.RefAsValueType`1"/> struct.
12524 <member name="F:System.Collections.Immutable.RefAsValueType`1.Value">
12529 <member name="T:System.Collections.Immutable.SecureObjectPool">
12531 Object pooling utilities.
12534 <member name="F:System.Collections.Immutable.SecureObjectPool.s_poolUserIdCounter">
12536 The ever-incrementing (and wrap-on-overflow) integer for owner id's.
12539 <member name="F:System.Collections.Immutable.SecureObjectPool.UnassignedId">
12541 The ID reserved for unassigned objects.
12544 <member name="M:System.Collections.Immutable.SecureObjectPool.NewId">
12549 <member name="P:System.Collections.Immutable.SecurePooledObject`1.Owner">
12551 Gets or sets the current owner of this recyclable object.
12554 <member name="M:System.Collections.Immutable.SecurePooledObject`1.Use``1(``0@)">
12556 Returns the recyclable value if it hasn't been reclaimed already.
12558 <typeparam name="TCaller">The type of renter of the object.</typeparam>
12559 <param name="caller">The renter of the object.</param>
12560 <returns>The rented object.</returns>
12561 <exception cref="T:System.ObjectDisposedException">Thrown if <paramref name="caller"/> is no longer the renter of the value.</exception>
12563 <member name="T:System.Collections.Immutable.Requires">
12565 Common runtime checks that throw <see cref="T:System.ArgumentException"/> upon failure.
12568 <member name="M:System.Collections.Immutable.Requires.NotNull``1(``0,System.String)">
12570 Throws an exception if the specified parameter's value is null.
12572 <typeparam name="T">The type of the parameter.</typeparam>
12573 <param name="value">The value of the argument.</param>
12574 <param name="parameterName">The name of the parameter to include in any thrown exception.</param>
12575 <exception cref="T:System.ArgumentNullException">Thrown if <paramref name="value"/> is <c>null</c></exception>
12577 <member name="M:System.Collections.Immutable.Requires.NotNullPassthrough``1(``0,System.String)">
12579 Throws an exception if the specified parameter's value is null. It passes through the specified value back as a return value.
12581 <typeparam name="T">The type of the parameter.</typeparam>
12582 <param name="value">The value of the argument.</param>
12583 <param name="parameterName">The name of the parameter to include in any thrown exception.</param>
12584 <returns>The value of the parameter.</returns>
12585 <exception cref="T:System.ArgumentNullException">Thrown if <paramref name="value"/> is <c>null</c></exception>
12587 <member name="M:System.Collections.Immutable.Requires.NotNullAllowStructs``1(``0,System.String)">
12589 Throws an exception if the specified parameter's value is null.
12591 <typeparam name="T">The type of the parameter.</typeparam>
12592 <param name="value">The value of the argument.</param>
12593 <param name="parameterName">The name of the parameter to include in any thrown exception.</param>
12594 <exception cref="T:System.ArgumentNullException">Thrown if <paramref name="value"/> is <c>null</c></exception>
12596 This method exists for callers who themselves only know the type as a generic parameter which
12597 may or may not be a class, but certainly cannot be null.
12600 <member name="M:System.Collections.Immutable.Requires.FailArgumentNullException(System.String)">
12602 Throws an <see cref="T:System.ArgumentNullException"/>.
12604 <param name="parameterName">The name of the parameter that was null.</param>
12606 <member name="M:System.Collections.Immutable.Requires.Range(System.Boolean,System.String,System.String)">
12608 Throws an <see cref="T:System.ArgumentOutOfRangeException"/> if a condition does not evaluate to true.
12611 <member name="M:System.Collections.Immutable.Requires.FailRange(System.String,System.String)">
12613 Throws an <see cref="T:System.ArgumentOutOfRangeException"/>.
12616 <member name="M:System.Collections.Immutable.Requires.Argument(System.Boolean,System.String,System.String)">
12618 Throws an <see cref="T:System.ArgumentException"/> if a condition does not evaluate to true.
12621 <member name="M:System.Collections.Immutable.Requires.Argument(System.Boolean)">
12623 Throws an <see cref="T:System.ArgumentException"/> if a condition does not evaluate to true.
12626 <member name="M:System.Collections.Immutable.Requires.FailObjectDisposed``1(``0)">
12628 Throws an <see cref="T:System.ObjectDisposedException"/> for a disposed object.
12630 <typeparam name="TDisposed">Specifies the type of the disposed object.</typeparam>
12631 <param name="disposed">The disposed object.</param>
12633 <member name="T:System.Collections.Immutable.ValidatedNotNullAttribute">
12635 Indicates to Code Analysis that a method validates a particular parameter.
12638 <member name="T:System.Linq.ImmutableArrayExtensions">
12640 LINQ extension method overrides that offer greater efficiency for <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> than the standard LINQ methods
12643 <member name="M:System.Linq.ImmutableArrayExtensions.Select``2(System.Collections.Immutable.ImmutableArray{``0},System.Func{``0,``1})">
12645 Projects each element of a sequence into a new form.
12647 <typeparam name="T">The type of element contained by the collection.</typeparam>
12648 <typeparam name="TResult">The type of the result element.</typeparam>
12649 <param name="immutableArray">The immutable array.</param>
12650 <param name="selector">The selector.</param>
12652 <member name="M:System.Linq.ImmutableArrayExtensions.SelectMany``3(System.Collections.Immutable.ImmutableArray{``0},System.Func{``0,System.Collections.Generic.IEnumerable{``1}},System.Func{``0,``1,``2})">
12654 Projects each element of a sequence to an <see cref="T:System.Collections.Generic.IEnumerable`1"/>,
12655 flattens the resulting sequences into one sequence, and invokes a result
12656 selector function on each element therein.
12658 <typeparam name="TSource">The type of the elements of <paramref name="immutableArray"/>.</typeparam>
12659 <typeparam name="TCollection">The type of the intermediate elements collected by <paramref name="collectionSelector"/>.</typeparam>
12660 <typeparam name="TResult">The type of the elements of the resulting sequence.</typeparam>
12661 <param name="immutableArray">The immutable array.</param>
12662 <param name="collectionSelector">A transform function to apply to each element of the input sequence.</param>
12663 <param name="resultSelector">A transform function to apply to each element of the intermediate sequence.</param>
12665 An <see cref="T:System.Collections.Generic.IEnumerable`1"/> whose elements are the result
12666 of invoking the one-to-many transform function <paramref name="collectionSelector"/> on each
12667 element of <paramref name="immutableArray"/> and then mapping each of those sequence elements and their
12668 corresponding source element to a result element.
12671 <member name="M:System.Linq.ImmutableArrayExtensions.Where``1(System.Collections.Immutable.ImmutableArray{``0},System.Func{``0,System.Boolean})">
12673 Filters a sequence of values based on a predicate.
12675 <typeparam name="T">The type of element contained by the collection.</typeparam>
12677 <member name="M:System.Linq.ImmutableArrayExtensions.Any``1(System.Collections.Immutable.ImmutableArray{``0})">
12679 Gets a value indicating whether any elements are in this collection.
12681 <typeparam name="T">The type of element contained by the collection.</typeparam>
12682 <param name="immutableArray"></param>
12684 <member name="M:System.Linq.ImmutableArrayExtensions.Any``1(System.Collections.Immutable.ImmutableArray{``0},System.Func{``0,System.Boolean})">
12686 Gets a value indicating whether any elements are in this collection
12687 that match a given condition.
12689 <typeparam name="T">The type of element contained by the collection.</typeparam>
12690 <param name="immutableArray"></param>
12691 <param name="predicate">The predicate.</param>
12693 <member name="M:System.Linq.ImmutableArrayExtensions.All``1(System.Collections.Immutable.ImmutableArray{``0},System.Func{``0,System.Boolean})">
12695 Gets a value indicating whether all elements in this collection
12696 match a given condition.
12698 <typeparam name="T">The type of element contained by the collection.</typeparam>
12699 <param name="immutableArray"></param>
12700 <param name="predicate">The predicate.</param>
12702 <c>true</c> if every element of the source sequence passes the test in the specified predicate, or if the sequence is empty; otherwise, <c>false</c>.
12705 <member name="M:System.Linq.ImmutableArrayExtensions.SequenceEqual``2(System.Collections.Immutable.ImmutableArray{``1},System.Collections.Immutable.ImmutableArray{``0},System.Collections.Generic.IEqualityComparer{``1})">
12707 Determines whether two sequences are equal according to an equality comparer.
12709 <typeparam name="TDerived">The type of element in the compared array.</typeparam>
12710 <typeparam name="TBase">The type of element contained by the collection.</typeparam>
12712 <member name="M:System.Linq.ImmutableArrayExtensions.SequenceEqual``2(System.Collections.Immutable.ImmutableArray{``1},System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEqualityComparer{``1})">
12714 Determines whether two sequences are equal according to an equality comparer.
12716 <typeparam name="TDerived">The type of element in the compared array.</typeparam>
12717 <typeparam name="TBase">The type of element contained by the collection.</typeparam>
12719 <member name="M:System.Linq.ImmutableArrayExtensions.SequenceEqual``2(System.Collections.Immutable.ImmutableArray{``1},System.Collections.Immutable.ImmutableArray{``0},System.Func{``1,``1,System.Boolean})">
12721 Determines whether two sequences are equal according to an equality comparer.
12723 <typeparam name="TDerived">The type of element in the compared array.</typeparam>
12724 <typeparam name="TBase">The type of element contained by the collection.</typeparam>
12726 <member name="M:System.Linq.ImmutableArrayExtensions.Aggregate``1(System.Collections.Immutable.ImmutableArray{``0},System.Func{``0,``0,``0})">
12728 Applies an accumulator function over a sequence.
12730 <typeparam name="T">The type of element contained by the collection.</typeparam>
12732 <member name="M:System.Linq.ImmutableArrayExtensions.Aggregate``2(System.Collections.Immutable.ImmutableArray{``1},``0,System.Func{``0,``1,``0})">
12734 Applies an accumulator function over a sequence.
12736 <typeparam name="TAccumulate">The type of the accumulated value.</typeparam>
12737 <typeparam name="T">The type of element contained by the collection.</typeparam>
12739 <member name="M:System.Linq.ImmutableArrayExtensions.Aggregate``3(System.Collections.Immutable.ImmutableArray{``2},``0,System.Func{``0,``2,``0},System.Func{``0,``1})">
12741 Applies an accumulator function over a sequence.
12743 <typeparam name="TAccumulate">The type of the accumulated value.</typeparam>
12744 <typeparam name="TResult">The type of result returned by the result selector.</typeparam>
12745 <typeparam name="T">The type of element contained by the collection.</typeparam>
12747 <member name="M:System.Linq.ImmutableArrayExtensions.ElementAt``1(System.Collections.Immutable.ImmutableArray{``0},System.Int32)">
12749 Returns the element at a specified index in a sequence.
12751 <typeparam name="T">The type of element contained by the collection.</typeparam>
12753 <member name="M:System.Linq.ImmutableArrayExtensions.ElementAtOrDefault``1(System.Collections.Immutable.ImmutableArray{``0},System.Int32)">
12755 Returns the element at a specified index in a sequence or a default value if the index is out of range.
12757 <typeparam name="T">The type of element contained by the collection.</typeparam>
12759 <member name="M:System.Linq.ImmutableArrayExtensions.First``1(System.Collections.Immutable.ImmutableArray{``0},System.Func{``0,System.Boolean})">
12761 Returns the first element in a sequence that satisfies a specified condition.
12763 <typeparam name="T">The type of element contained by the collection.</typeparam>
12765 <member name="M:System.Linq.ImmutableArrayExtensions.First``1(System.Collections.Immutable.ImmutableArray{``0})">
12767 Returns the first element in a sequence that satisfies a specified condition.
12769 <typeparam name="T">The type of element contained by the collection.</typeparam>
12770 <param name="immutableArray"></param>
12772 <member name="M:System.Linq.ImmutableArrayExtensions.FirstOrDefault``1(System.Collections.Immutable.ImmutableArray{``0})">
12774 Returns the first element of a sequence, or a default value if the sequence contains no elements.
12776 <typeparam name="T">The type of element contained by the collection.</typeparam>
12777 <param name="immutableArray"></param>
12779 <member name="M:System.Linq.ImmutableArrayExtensions.FirstOrDefault``1(System.Collections.Immutable.ImmutableArray{``0},System.Func{``0,System.Boolean})">
12781 Returns the first element of the sequence that satisfies a condition or a default value if no such element is found.
12783 <typeparam name="T">The type of element contained by the collection.</typeparam>
12785 <member name="M:System.Linq.ImmutableArrayExtensions.Last``1(System.Collections.Immutable.ImmutableArray{``0})">
12787 Returns the last element of a sequence.
12789 <typeparam name="T">The type of element contained by the collection.</typeparam>
12790 <param name="immutableArray"></param>
12792 <member name="M:System.Linq.ImmutableArrayExtensions.Last``1(System.Collections.Immutable.ImmutableArray{``0},System.Func{``0,System.Boolean})">
12794 Returns the last element of a sequence that satisfies a specified condition.
12796 <typeparam name="T">The type of element contained by the collection.</typeparam>
12798 <member name="M:System.Linq.ImmutableArrayExtensions.LastOrDefault``1(System.Collections.Immutable.ImmutableArray{``0})">
12800 Returns the last element of a sequence, or a default value if the sequence contains no elements.
12802 <typeparam name="T">The type of element contained by the collection.</typeparam>
12803 <param name="immutableArray"></param>
12805 <member name="M:System.Linq.ImmutableArrayExtensions.LastOrDefault``1(System.Collections.Immutable.ImmutableArray{``0},System.Func{``0,System.Boolean})">
12807 Returns the last element of a sequence that satisfies a condition or a default value if no such element is found.
12809 <typeparam name="T">The type of element contained by the collection.</typeparam>
12811 <member name="M:System.Linq.ImmutableArrayExtensions.Single``1(System.Collections.Immutable.ImmutableArray{``0})">
12813 Returns the only element of a sequence, and throws an exception if there is not exactly one element in the sequence.
12815 <typeparam name="T">The type of element contained by the collection.</typeparam>
12816 <param name="immutableArray"></param>
12818 <member name="M:System.Linq.ImmutableArrayExtensions.Single``1(System.Collections.Immutable.ImmutableArray{``0},System.Func{``0,System.Boolean})">
12820 Returns the only element of a sequence that satisfies a specified condition, and throws an exception if more than one such element exists.
12822 <typeparam name="T">The type of element contained by the collection.</typeparam>
12824 <member name="M:System.Linq.ImmutableArrayExtensions.SingleOrDefault``1(System.Collections.Immutable.ImmutableArray{``0})">
12826 Returns the only element of a sequence, or a default value if the sequence is empty; this method throws an exception if there is more than one element in the sequence.
12828 <typeparam name="T">The type of element contained by the collection.</typeparam>
12829 <param name="immutableArray"></param>
12831 <member name="M:System.Linq.ImmutableArrayExtensions.SingleOrDefault``1(System.Collections.Immutable.ImmutableArray{``0},System.Func{``0,System.Boolean})">
12833 Returns the only element of a sequence that satisfies a specified condition or a default value if no such element exists; this method throws an exception if more than one element satisfies the condition.
12835 <typeparam name="T">The type of element contained by the collection.</typeparam>
12837 <member name="M:System.Linq.ImmutableArrayExtensions.ToDictionary``2(System.Collections.Immutable.ImmutableArray{``1},System.Func{``1,``0})">
12839 Creates a dictionary based on the contents of this array.
12841 <typeparam name="TKey">The type of the key.</typeparam>
12842 <typeparam name="T">The type of element contained by the collection.</typeparam>
12843 <param name="immutableArray"></param>
12844 <param name="keySelector">The key selector.</param>
12845 <returns>The newly initialized dictionary.</returns>
12847 <member name="M:System.Linq.ImmutableArrayExtensions.ToDictionary``3(System.Collections.Immutable.ImmutableArray{``2},System.Func{``2,``0},System.Func{``2,``1})">
12849 Creates a dictionary based on the contents of this array.
12851 <typeparam name="TKey">The type of the key.</typeparam>
12852 <typeparam name="TElement">The type of the element.</typeparam>
12853 <typeparam name="T">The type of element contained by the collection.</typeparam>
12854 <param name="immutableArray"></param>
12855 <param name="keySelector">The key selector.</param>
12856 <param name="elementSelector">The element selector.</param>
12857 <returns>The newly initialized dictionary.</returns>
12859 <member name="M:System.Linq.ImmutableArrayExtensions.ToDictionary``2(System.Collections.Immutable.ImmutableArray{``1},System.Func{``1,``0},System.Collections.Generic.IEqualityComparer{``0})">
12861 Creates a dictionary based on the contents of this array.
12863 <typeparam name="TKey">The type of the key.</typeparam>
12864 <typeparam name="T">The type of element contained by the collection.</typeparam>
12865 <param name="immutableArray"></param>
12866 <param name="keySelector">The key selector.</param>
12867 <param name="comparer">The comparer to initialize the dictionary with.</param>
12868 <returns>The newly initialized dictionary.</returns>
12870 <member name="M:System.Linq.ImmutableArrayExtensions.ToDictionary``3(System.Collections.Immutable.ImmutableArray{``2},System.Func{``2,``0},System.Func{``2,``1},System.Collections.Generic.IEqualityComparer{``0})">
12872 Creates a dictionary based on the contents of this array.
12874 <typeparam name="TKey">The type of the key.</typeparam>
12875 <typeparam name="TElement">The type of the element.</typeparam>
12876 <typeparam name="T">The type of element contained by the collection.</typeparam>
12877 <param name="immutableArray"></param>
12878 <param name="keySelector">The key selector.</param>
12879 <param name="elementSelector">The element selector.</param>
12880 <param name="comparer">The comparer to initialize the dictionary with.</param>
12881 <returns>The newly initialized dictionary.</returns>
12883 <member name="M:System.Linq.ImmutableArrayExtensions.ToArray``1(System.Collections.Immutable.ImmutableArray{``0})">
12885 Copies the contents of this array to a mutable array.
12887 <typeparam name="T">The type of element contained by the collection.</typeparam>
12888 <param name="immutableArray"></param>
12889 <returns>The newly instantiated array.</returns>
12891 <member name="M:System.Linq.ImmutableArrayExtensions.First``1(System.Collections.Immutable.ImmutableArray{``0}.Builder)">
12893 Returns the first element in the collection.
12895 <exception cref="T:System.InvalidOperationException">Thrown if the collection is empty.</exception>
12897 <member name="M:System.Linq.ImmutableArrayExtensions.FirstOrDefault``1(System.Collections.Immutable.ImmutableArray{``0}.Builder)">
12899 Returns the first element in the collection, or the default value if the collection is empty.
12902 <member name="M:System.Linq.ImmutableArrayExtensions.Last``1(System.Collections.Immutable.ImmutableArray{``0}.Builder)">
12904 Returns the last element in the collection.
12906 <exception cref="T:System.InvalidOperationException">Thrown if the collection is empty.</exception>
12908 <member name="M:System.Linq.ImmutableArrayExtensions.LastOrDefault``1(System.Collections.Immutable.ImmutableArray{``0}.Builder)">
12910 Returns the last element in the collection, or the default value if the collection is empty.
12913 <member name="M:System.Linq.ImmutableArrayExtensions.Any``1(System.Collections.Immutable.ImmutableArray{``0}.Builder)">
12915 Returns a value indicating whether this collection contains any elements.
12918 <member name="M:System.Linq.ImmutableArrayExtensions.SelectManyIterator``3(System.Collections.Immutable.ImmutableArray{``0},System.Func{``0,System.Collections.Generic.IEnumerable{``1}},System.Func{``0,``1,``2})">
12919 <summary>Provides the core iterator implementation of <see cref="M:System.Linq.ImmutableArrayExtensions.SelectMany``3(System.Collections.Immutable.ImmutableArray{``0},System.Func{``0,System.Collections.Generic.IEnumerable{``1}},System.Func{``0,``1,``2})"/>.</summary>