Namespace Ecng.Collections
Classes
- BackwardComparer<T>
Provides a comparer that compares objects in reverse order.
- BaseBlockingQueue<T, TF>
Abstract base class for a blocking queue implementation with a generic type and an inner collection.
- BaseCollection<TItem, TCollection>
Represents a base class for a generic collection with event notifications and inner collection management.
- BaseEnumerator<TEnumerable, TItem>
Represents an abstract base class for an enumerator over a generic enumerable source.
- BaseList<TItem>
Represents a base class for a strongly-typed list of items.
- BaseOrderedBlockingQueue<TSort, TValue, TCollection>
Represents a base class for an ordered blocking queue that sorts elements based on a specified key.
- BitArrayReader
Provides a reader for bit-level data from a stream.
- BitArrayWriter
Provides a writer for bit-level data to a stream.
- BlockingQueue<T>
Represents a thread-safe blocking queue implementation for storing and retrieving items of type
T
.
- CachedSynchronizedDictionary<TKey, TValue>
Represents a thread-safe dictionary with cached keys, values, and key-value pairs for improved performance.
- CachedSynchronizedList<T>
Represents a thread-safe list with a cached array of its elements for improved performance.
- CachedSynchronizedOrderedDictionary<TKey, TValue>
Represents a thread-safe ordered dictionary with cached keys, values, and key-value pairs for improved performance.
- CachedSynchronizedPairSet<TKey, TValue>
Represents a thread-safe set of key-value pairs with cached keys, values, and pairs for improved performance.
- CachedSynchronizedSet<T>
Represents a thread-safe set with a cached array of its elements for improved performance.
- CircularBufferEx<TItem>
CircularBuffer{TItem} with additional features.
- CircularBuffer<T>
Circular buffer.
When writing to a full buffer: PushBack -> removes this[0] / Front() PushFront -> removes this[Size-1] / Back()
this implementation is inspired by http://www.boost.org/doc/libs/1_53_0/libs/circular_buffer/doc/circular_buffer.html because I liked their interface.
- CollectionHelper
Provides extension methods and helper utilities for working with collections.
- DynamicTuple
Represents a dynamic tuple that holds a collection of objects and provides equality comparison.
- KeyedCollection<TKey, TValue>
Represents an abstract dictionary-backed collection that manages key-value pairs with customizable behavior.
- OrderedPriorityQueue<TPriority, TValue>
Represents a priority queue that sorts elements based on a specified key.
- PairSet<TKey, TValue>
Represents a collection of key-value pairs that supports bidirectional lookup by key or value.
- PriorityQueue<TPriority, TElement>
Represents a min priority queue.
- QueueEx<T>
Extends the Queue<T> class to explicitly implement the ICollection<T> interface.
- SimpleEnumerable<T>
Represents a simple implementation of an enumerable that uses a factory function to create its enumerator.
- SimpleEnumerator<T>
Provides an abstract base class for implementing a simple enumerator with disposable functionality.
- StackEx<T>
Extends the Stack<T> class to explicitly implement the ICollection<T> interface.
- SynchronizedCollection<TItem, TCollection>
Represents a thread-safe collection that provides synchronization for its operations.
- SynchronizedDictionary<TKey, TValue>
Represents a thread-safe dictionary that provides synchronization for its operations.
- SynchronizedKeyedCollection<TKey, TValue>
Represents a thread-safe keyed collection that provides synchronization for its operations.
- SynchronizedLinkedList<T>
Represents a thread-safe linked list that provides synchronization for its operations.
- SynchronizedList<T>
Represents a thread-safe list that supports range operations and notification events.
- SynchronizedOrderedDictionary<TKey, TValue>
Provides a thread-safe dictionary with keys ordered by a specified comparer.
- SynchronizedPairSet<TKey, TValue>
Represents a thread-safe collection that maintains key/value pairs and allows bidirectional lookups.
- SynchronizedQueue<T>
Provides a thread-safe queue based on the QueueEx<T> collection.
- SynchronizedSet<T>
Represents a thread-safe set that supports optional indexing and range-based operations.
- SynchronizedStack<T>
Represents a synchronized stack of items.
Interfaces
- IBlockingQueue<T>
Represents a blocking queue interface for managing items in a thread-safe manner.
- ICollectionEx<T>
Provides an extended set of methods and events for collections of a specified type.
- IEnumerableEx
Extended version of IEnumerable that provides the total number of elements.
- IEnumerableEx<T>
Extended version of IEnumerable<T> that provides the total number of elements.
- IListEx<T>
Provides an extended set of methods and events for lists of a specified type.
- INotifyCollection<TItem>
Represents a collection that notifies about its changes.
- INotifyListEx<TItem>
Represents an extended list that notifies about its changes.
- INotifyList<TItem>
Represents a list that notifies about its changes.
- IQueue<T>
Defines a generic queue interface for enqueueing, dequeueing, and peeking at items.
- ISynchronizedCollection
Represents a collection that can be synchronized using a SyncObject.
- ISynchronizedCollection<T>
Represents a generic synchronized collection.