Namespace NFX.Collections
Classes
BitList
Provides bit array with automatic resizing
BitMatrix2D
Provides an efficient access to a square 2D bit matrix accessible as boolean values
CappedSet<T>
Implements a set of T with the optional size limit and optional item lifespan limit. This class is thread-safe and must be disposed in a deterministic way
EventedCollectionBase<TContext>
Provides base implementation for some evented collections
EventedDictionary<TKey, TValue, TContext>
Represents a dictionary that rises events
EventedList<TData, TContext>
Represents list that rises change events
LookAheadEnumerable<T>
Implements a look-ahead enumerator wrapped around a regular enumerator
LookAheadEnumerator<T>
Implements a look-ahead enumerator wrapped around a regular enumerator
LookAheadExtensions
Extensions methods for LookAheadEnumerable
Matrix2D<T>
Represents a two deminsional matrix of T. This class uses jagged arrays for internal implementation ensuring proper array sizing per matrix structure
Matrix2DBase<T>
MatrixBase<T>
Provides base for various matrices
NamedInterlocked
Provides functionality similar to the Interlocked class executed over a named slot. All operations are THREAD-SAFE for calling concurrently. The name comparison is that of Registry's which is OrdinalIgnoreCase. This class was designed to better organize named counters incremented from different threads, i.e. this is needed to keep a count of calls to remote host identified by their names. This class is NOT designed for frequent additions/deletions of named slots, nor was it designed to keep millions of slots. Use it in cases when there are thousands at most slots and new slots appear infrequently. You must delete un-needed slots
NamedInterlocked<TContext>
Adds context to NamedInterlocked
StringMap
Efficeintly maps string -> string for serialization. Compared to Dictionary[string,string] this class yields 20%-50% better Slim serialization speed improvement and 5%-10% space improvement
Interfaces
ILookAheadEnumerable<T>
Defines an enumerable with look-ahead capability
ILookAheadEnumerator<T>
Defines an enumerator with look-ahead capability
Enums
EventedDictionary<TKey, TValue, TContext>.ChangeType
Describes changes in evented list
EventedList<TData, TContext>.ChangeType
Describes changes in evented list
EventPhase
Specifies the phase of the event i.e. before/after
Delegates
EventedCollectionGetReadOnlyHandler<TContext>
Event handler for list changes