Table of Contents

Namespace LfrlAnvil.Collections

Classes

DictionaryHeap<TKey, TValue>

Represents a generic heap data structure with the ability to identify entries by keys.

DirectedGraphEdge<TKey, TNodeValue, TEdgeValue>

Represents a generic IDirectedGraph<TKey, TNodeValue, TEdgeValue> edge.

DirectedGraphNode<TKey, TNodeValue, TEdgeValue>

Represents a generic IDirectedGraph<TKey, TNodeValue, TEdgeValue> node.

DirectedGraph<TKey, TNodeValue, TEdgeValue>

Represents a generic directed graph data structure.

Heap

Contains helper IHeap<T> methods.

Heap<T>

Represents a generic heap data structure.

MultiDictionary<TKey, TValue>

Represents a generic collection of (key, value-range) pairs.

MultiHashSet<T>

Represents a generic multi set.

Ring<T>

Represents a generic circular range of elements with constant Count.

SequentialDictionary<TKey, TValue>

Represents a generic collection of (key, value) pairs whose insertion order is preserved.

SequentialHashSet<T>

Represents a generic set of elements whose insertion order is preserved.

TreeDictionaryNode<TKey, TValue>

Represents a ITreeDictionary<TKey, TValue> node.

TreeDictionary<TKey, TValue>

Represents a generic tree data structure with the ability to identify nodes by keys.

TwoWayDictionary<T1, T2>

Represents a generic collection of two-way (forward, reverse) pairs.

Structs

DictionaryHeap<TKey, TValue>.Enumerator

Lightweight enumerator implementation for DictionaryHeap<TKey, TValue>.

DirectedGraphEdgeInfo<TKey, TNodeValue, TEdgeValue>

Represents an information about two IDirectedGraphNode<TKey, TNodeValue, TEdgeValue> instances connected together through the same IDirectedGraphEdge<TKey, TNodeValue, TEdgeValue> instance.

Heap<T>.Enumerator

Lightweight enumerator implementation for Heap<T>.

Ring<T>.Enumerator

Lightweight enumerator implementation for Ring<T>.

Interfaces

IDictionaryHeap<TKey, TValue>

Represents a generic heap data structure with the ability to identify entries by keys.

IDirectedGraphEdge<TKey, TNodeValue, TEdgeValue>

Represents a generic IDirectedGraph<TKey, TNodeValue, TEdgeValue> edge.

IDirectedGraphNode<TKey, TNodeValue, TEdgeValue>

Represents a generic IDirectedGraph<TKey, TNodeValue, TEdgeValue> node.

IDirectedGraph<TKey, TNodeValue, TEdgeValue>

Represents a generic directed graph data structure.

IHeap<T>

Represents a generic heap data structure.

IMultiDictionary<TKey, TValue>

Represents a generic collection of (key, value-range) pairs.

IMultiSet<T>

Represents a generic multi set.

IReadOnlyDictionaryHeap<TKey, TValue>

Represents a generic read-only heap data structure with the ability to identify entries by keys.

IReadOnlyDirectedGraph<TKey, TNodeValue, TEdgeValue>

Represents a generic read-only directed graph data structure.

IReadOnlyHeap<T>

Represents a read-only generic heap data structure.

IReadOnlyMultiDictionary<TKey, TValue>

Represents a generic read-only collection of (key, value-range) pairs.

IReadOnlyMultiSet<T>

Represents a generic read-only multi set.

IReadOnlyRing<T>

Represents a generic read-only circular range of elements with constant Count.

IReadOnlyTreeDictionary<TKey, TValue>

Represents a generic read-only tree data structure with the ability to identify nodes by keys.

IReadOnlyTwoWayDictionary<T1, T2>

Represents a generic read-only collection of two-way (forward, reverse) pairs.

IRing<T>

Represents a generic circular range of elements with constant Count.

ITreeDictionaryNode<TKey, TValue>

Represents a ITreeDictionary<TKey, TValue> node.

ITreeDictionary<TKey, TValue>

Represents a generic tree data structure with the ability to identify nodes by keys.

ITreeNode<T>

Represents a tree data structure's node.

ITwoWayDictionary<T1, T2>

Represents a generic collection of two-way (forward, reverse) pairs.

Enums

GraphDirection

Represents direction of IDirectedGraphEdge<TKey, TNodeValue, TEdgeValue>.