A splay tree based dictionary implementation that provides fast access to recently visited entries and offered enumeration based on the natural ordering or comparer defined ordering of dictionary entries.
More...
|
| SplayedDictionary () |
| Create a new Splayed Dictionary instance that uses a default key comparer instance to provide relative ordering of keys within the mapping.
|
|
| SplayedDictionary (IComparer< K > comparer) |
| Create a new Splayed Dictionary instance that uses the give key comparer instance to provide relative ordering of keys within the mapping.
|
|
| SplayedDictionary (IDictionary< K, V > source) |
| Create a new Splayed Dictionary instance that uses the give key comparer instance to provide relative ordering of keys within the mapping.
|
|
void | Add (K key, V value) |
|
void | Add (KeyValuePair< K, V > item) |
|
void | Add (object key, object value) |
|
virtual void | Clear () |
|
bool | Contains (object key) |
|
bool | Contains (KeyValuePair< K, V > item) |
|
bool | ContainsValue (V value) |
|
bool | ContainsKey (K key) |
|
virtual void | CopyTo (KeyValuePair< K, V >[] array, int arrayIndex) |
|
virtual void | CopyTo (Array array, int arrayIndex) |
|
void | Remove (object key) |
|
bool | Remove (K key) |
|
bool | RemoveValue (V target) |
| Removes the first entry from the dictionary that contains the specified value and returns true, if there is no entry with the given value this method returns false.
|
|
bool | Remove (KeyValuePair< K, V > item) |
|
bool | TryGetValue (K key, [MaybeNullWhen(false)] out V value) |
|
virtual IEnumerator< KeyValuePair< K, V > > | GetEnumerator () |
|
|
readonly RingQueue< SplayedEntry > | entryPool = new(64) |
| Pooled entries used to prevent excessive allocations for rapid insert and removal operations.
|
|
SplayedEntry | root |
| Root of the tree which can change as entries are splayed up and down the tree.
|
|
int | size |
| Tracked tree size to prevent traversals for size operations.
|
|
int | modCount |
| Provides a means of tracking modification during enumeration errors.
|
|
ICollection< K > | keySet |
| Cached collection object that provides access to the dictionary keys.
|
|
ICollection< V > | values |
| Cached collection object that provides access to the dictionary values.
|
|
|
int | Count [get] |
|
bool | IsReadOnly [get] |
|
IComparer< K > | Comparer [get] |
|
bool | IsFixedSize [get] |
|
bool | IsSynchronized [get] |
|
object | SyncRoot [get] |
|
V | this[K key] [get, set] |
|
object | this[object key] [get, set] |
|
virtual ICollection< K > | Keys [get] |
|
virtual ICollection< V > | Values [get] |
|
A splay tree based dictionary implementation that provides fast access to recently visited entries and offered enumeration based on the natural ordering or comparer defined ordering of dictionary entries.
- Template Parameters
-
T | The type contained in the Queue |
◆ SplayedDictionary() [1/2]
Create a new Splayed Dictionary instance that uses the give key comparer instance to provide relative ordering of keys within the mapping.
- Parameters
-
comparer | The IComparer instance to use to compare keys |
◆ SplayedDictionary() [2/2]
Create a new Splayed Dictionary instance that uses the give key comparer instance to provide relative ordering of keys within the mapping.
- Parameters
-
comparer | The IComparer instance to use to compare keys |
◆ RemoveValue()
Removes the first entry from the dictionary that contains the specified value and returns true, if there is no entry with the given value this method returns false.
- Parameters
-
target | The value to search for in the entries |
- Returns
- true if an entry was removed or false if no match found
The documentation for this class was generated from the following file:
- src/Proton/Utilities/SplayedDictionary.cs