RadixTrie<TValue>.Enumerator Struct
Definition
Enumerates the key/value pairs of a RadixTrie<TValue> by walking the node graph lazily, without materializing the collection.
public struct RadixTrie<TValue>.Enumerator : IEnumerator<KeyValuePair<string, TValue>>, IEnumerator, IDisposable
- Implements
- Inherited Members
- Extension Methods
Remarks
The enumerator is fail-fast: if the trie is modified after the enumerator is created, the next call to MoveNext() or Reset() throws InvalidOperationException.
Properties
Current
Gets the element in the collection at the current position of the enumerator.
public readonly KeyValuePair<string, TValue> Current { get; }
Property Value
- KeyValuePair<string, TValue>
The element in the collection at the current position of the enumerator.
Methods
Dispose()
Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
public readonly void Dispose()
MoveNext()
Advances the enumerator to the next element of the collection.
public bool MoveNext()
Returns
- bool
true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection.
Exceptions
- InvalidOperationException
The collection was modified after the enumerator was created.
- InvalidOperationException
The trie was modified after the enumerator was created.
Reset()
Sets the enumerator to its initial position, which is before the first element in the collection.
public void Reset()
Exceptions
- InvalidOperationException
The collection was modified after the enumerator was created.
- NotSupportedException
The enumerator does not support being reset.
- InvalidOperationException
The trie was modified after the enumerator was created.
Explicit Interface Implementations
IEnumerator.Current
Gets the element in the collection at the current position of the enumerator.
readonly object IEnumerator.Current { get; }
Returns
- object
The element in the collection at the current position of the enumerator.
Applies to
| Product | Versions |
|---|---|
| .NET | 8, 10 |