![]() |
SystemEX
Lacking
Additional generic collection types missing in .net
|
Defines the basic operations for a fixed-size or dynamic array structure, including indexed access, insertion, removal, traversal, and search utilities. More...
Classes | |
| interface | SystemEx.Collections.Generic.Interfaces.IArray< T > |
| interface | SystemEx.Collections.Generic.Interfaces.IDynamicArray< T > |
| Extends IArray<T> with dynamic resizing capabilities. More... | |
| interface | SystemEx.Collections.Generic.Interfaces.ICache |
| interface | SystemEx.Collections.Generic.Interfaces.ICompared< in T > |
| interface | SystemEx.Collections.Generic.Interfaces.IContainerEx< T > |
| interface | SystemEx.Collections.Generic.Interfaces.IMap |
| interface | SystemEx.Collections.Generic.Interfaces.IMap< T, TU > |
| Defines a typed map structure that stores key/value pairs as Pair<T, TU>. Provides insertion, removal, searching, traversal, and conversion utilities. More... | |
| interface | SystemEx.Collections.Generic.Interfaces.IReadOnlyMap< T, TU > |
| Defines a read‑only associative container mapping keys of type T to values of type TU . More... | |
| interface | SystemEx.Collections.Generic.Interfaces.INode< T > |
| interface | SystemEx.Collections.Generic.Interfaces.IPair< T, TU > |
| interface | SystemEx.Collections.Generic.Interfaces.ISortedArray< T > |
| Extends IArray<T> with sorting capabilities using either a comparer interface or a delegate-based sort function. More... | |
| interface | SystemEx.Collections.Generic.Interfaces.ISortedMap< T, TU > |
| Extends IMap<T, TU> with sorting capabilities for key/value pairs. Sorting can be performed using a delegate or a comparer interface. More... | |
| interface | SystemEx.Collections.Generic.Interfaces.ISortedTupleMap |
| Extends ITupleMap with sorting capabilities for tuple elements. Sorting can be performed using a delegate or a comparer interface. More... | |
| class | SystemEx.Collections.Generic.Interfaces.ListIterator< T > |
| class | SystemEx.Collections.Generic.Interfaces.ListIteratorExtensions |
| Provides extension methods for creating iterators from List<T>. | |
| interface | SystemEx.Collections.Generic.Interfaces.IIterator |
| interface | SystemEx.Collections.Generic.Interfaces.IIterator< T > |
| Extends IIterator with cloning support, allowing iterators to be duplicated without affecting the original. More... | |
| interface | SystemEx.Collections.Generic.Interfaces.IForwardIterator< T > |
| Represents a forward-only iterator that exposes the current element and an end-of-range indicator. More... | |
| interface | SystemEx.Collections.Generic.Interfaces.IBidirectionalIterator< T > |
| Represents an iterator that can move both forward and backward. More... | |
| interface | SystemEx.Collections.Generic.Interfaces.IRandomAccessIterator< T > |
| Represents a random-access iterator that supports offset-based movement in addition to forward and backward stepping. More... | |
| interface | SystemEx.Collections.Generic.Interfaces.IPairForwardIterator< T, TU > |
| Represents a forward iterator over key/value pairs. More... | |
| interface | SystemEx.Collections.Generic.Interfaces.IForeachIterator< T > |
| Represents an iterator that can be used directly in foreach loops. Combines IEnumerable<T> and IEnumerator<T>. More... | |
| class | SystemEx.Collections.Generic.Interfaces.Iterator |
| Provides generic iterator algorithms such as distance calculation, searching, bounds detection, reversal, rotation, and iteration helpers. | |
| interface | SystemEx.Collections.Generic.Interfaces.ITraverse< T > |
| Defines a traversal operation over a range of elements using a specified direction and index boundaries. More... | |
| interface | SystemEx.Collections.Generic.Interfaces.ITuple |
| interface | SystemEx.Collections.Generic.Interfaces.ITupleMap |
| interface | SystemEx.Collections.Generic.Interfaces.ITypeBuffer< T > |
Enumerations | |
| enum | SystemEx.Collections.Generic.Interfaces.TraversMode { SystemEx.Collections.Generic.Interfaces.TraversMode.Forwards , SystemEx.Collections.Generic.Interfaces.TraversMode.Backwards } |
Functions | |
| delegate CompareResult | SystemEx.Collections.Generic.Interfaces.SortFunc< T, TU > (Pair< T, TU > a, Pair< T, TU > b) |
| delegate CompareResult | SystemEx.Collections.Generic.Interfaces.SortTupleFunc (ITuple a, ITuple b) |
| Delegate used to compare two tuples and return their ordering relation. | |
| delegate CompareResult | SystemEx.Collections.Generic.Interfaces.SortObjectFunc< T > (T a, T b) |
| Delegate used to compare two objects of type T . | |
| void | SystemEx.Collections.Generic.Interfaces.ISortedArray< T >.Sort () |
| Sorts the entire array using the configured comparison method. | |
| IArray< T > | SystemEx.Collections.Generic.Interfaces.ISortedArray< T >.ToUnorderedArray () |
| Returns a new array containing the same elements but without sorting behavior. | |
| void | SystemEx.Collections.Generic.Interfaces.ISortedMap< T, TU >.Sort () |
| Sorts the entire map using the configured comparison method. | |
| IMap< T, TU > | SystemEx.Collections.Generic.Interfaces.ISortedMap< T, TU >.ToUnorderedMap () |
| Returns a new map containing the same elements but without sorting behavior. | |
| void | SystemEx.Collections.Generic.Interfaces.ISortedTupleMap.Sort () |
| Sorts the entire tuple map using the configured comparison method. | |
| ITupleMap | SystemEx.Collections.Generic.Interfaces.ISortedTupleMap.ToUnorderedMap () |
| Returns a new tuple map containing the same elements but without sorting behavior. | |
Properties | |
| SortObjectFunc< T > | SystemEx.Collections.Generic.Interfaces.ISortedArray< T >.SortFunctions [get, set] |
| Gets or sets the delegate-based sort function used to compare elements. | |
| ICompared< T >? | SystemEx.Collections.Generic.Interfaces.ISortedArray< T >.Comparer [get, set] |
| Gets or sets the comparer interface used to compare elements. If set, it overrides the delegate-based comparison. | |
| bool | SystemEx.Collections.Generic.Interfaces.ISortedArray< T >.AutoSort [get, set] |
| Enables or disables automatic sorting after modification operations. | |
| SortFunc< T, TU > | SystemEx.Collections.Generic.Interfaces.ISortedMap< T, TU >.SortFunctions [get, set] |
| Gets or sets the delegate-based sort function used to compare key/value pairs. | |
| ICompared< IPair< T, TU > >? | SystemEx.Collections.Generic.Interfaces.ISortedMap< T, TU >.Comparer [get, set] |
| Gets or sets the comparer interface used to compare key/value pairs. If set, it overrides the delegate-based comparison. | |
| bool | SystemEx.Collections.Generic.Interfaces.ISortedMap< T, TU >.AutoSort [get, set] |
| Enables or disables automatic sorting after modification operations. | |
| SortTupleFunc | SystemEx.Collections.Generic.Interfaces.ISortedTupleMap.SortFunctions [get, set] |
| Gets or sets the delegate-based sort function used to compare tuples. | |
| ICompared< ITuple >? | SystemEx.Collections.Generic.Interfaces.ISortedTupleMap.Comparer [get, set] |
| Gets or sets the comparer interface used to compare tuples. If set, it overrides the delegate-based comparison. | |
| bool | SystemEx.Collections.Generic.Interfaces.ISortedTupleMap.AutoSort [get, set] |
| Enables or disables automatic sorting after modification operations. | |
Defines the basic operations for a fixed-size or dynamic array structure, including indexed access, insertion, removal, traversal, and search utilities.
Defines a typed, fixed‑stride buffer abstraction for unmanaged element types.
Defines a map structure specialized for storing and retrieving ITuple objects. Provides tuple‑based search, traversal, and range‑insertion functionality.
A lightweight interface for serializable N‑element tuple consisting of strongly typed.
Specifies the traversal direction for iterating over a sequence.
Defines the base functionality for all iterators. Provides forward-only movement.
A random‑access iterator for List<T> that also implements IForeachIterator<T> to support foreach‑style enumeration. Provides forward, backward, and offset‑based movement.
Delegate used to compare two key/value pairs and return their ordering relation.
Represents a two‑element tuple consisting of a key and a value. Extends ITuple with strongly typed accessors and comparison helpers for the first and second elements.
Defines the basic contract for a node in a multi‑linked structure, such as a tree, graph, or intrusive node network. Provides access to the stored value and metadata about child counts.
Defines the basic contract for a map-like container that stores elements in positional order and supports indexed removal and clearing operations.
Defines the minimal functionality required for a generic container used by the SystemEx collection framework. Implementations provide indexed access, insertion, replacement, removal, and structural duplication of stored elements.
Defines a comparison interface for types that support custom ordering. Implementations return a CompareResult describing the relationship between two values.
Defines a typed cache a low-level byte buffer with position tracking, typed read/write helpers, and optional locking behavior.
| T | The type of elements stored in the array. |
| T | The type being compared. The constraint allows ref struct types, enabling high‑performance stack‑only comparisons. |
| T | The element type stored in the container. |
| T | The type of value stored in the node. |
| T | The type of the first element (key). |
| TU | The type of the second element (value). |
| T | The key type. |
| TU | The value type. |
| a | The first pair to compare. |
| b | The second pair to compare. |
| T | The element type stored in the list. |
ITypeBuffer<T> represents a simple, element‑oriented view over a raw byte buffer (for example a Cache). Implementations expose element access, cloning, clearing and fill semantics for unmanaged value types. All conversions between T and the underlying bytes are the responsibility of the concrete implementation.
The interface intentionally keeps the surface small and portable: implementations may perform endian conversion, bounds validation, and copy semantics as required by the runtime.
| T | An unmanaged value type stored in the buffer. |
| Enumerator | |
|---|---|
| Forwards | Traverses elements from lower to higher indices. |
| Backwards | Traverses elements from higher to lower indices. |
| void SystemEx.Collections.Generic.Interfaces.ISortedArray< T >.Sort | ( | ) |
Sorts the entire array using the configured comparison method.
Implemented in SystemEx.Collections.Generic.SortedArray< T >.
| void SystemEx.Collections.Generic.Interfaces.ISortedMap< T, TU >.Sort | ( | ) |
Sorts the entire map using the configured comparison method.
Implemented in SystemEx.Collections.Generic.SortedMap< T, TU >.
| void SystemEx.Collections.Generic.Interfaces.ISortedTupleMap.Sort | ( | ) |
Sorts the entire tuple map using the configured comparison method.
Implemented in SystemEx.Collections.Generic.SortedTupleMap.
| delegate CompareResult SystemEx.Collections.Generic.Interfaces.SortObjectFunc< T > | ( | T | a, |
| T | b ) |
Delegate used to compare two objects of type T .
| T | The type being compared. |
| a | The first object. |
| b | The second object. |
| delegate CompareResult SystemEx.Collections.Generic.Interfaces.SortTupleFunc | ( | ITuple | a, |
| ITuple | b ) |
Delegate used to compare two tuples and return their ordering relation.
| a | The first tuple. |
| b | The second tuple. |
| IArray< T > SystemEx.Collections.Generic.Interfaces.ISortedArray< T >.ToUnorderedArray | ( | ) |
Returns a new array containing the same elements but without sorting behavior.
Implemented in SystemEx.Collections.Generic.SortedArray< T >.
| IMap< T, TU > SystemEx.Collections.Generic.Interfaces.ISortedMap< T, TU >.ToUnorderedMap | ( | ) |
Returns a new map containing the same elements but without sorting behavior.
Implemented in SystemEx.Collections.Generic.SortedMap< T, TU >.
| ITupleMap SystemEx.Collections.Generic.Interfaces.ISortedTupleMap.ToUnorderedMap | ( | ) |
Returns a new tuple map containing the same elements but without sorting behavior.
Implemented in SystemEx.Collections.Generic.SortedTupleMap.
|
getset |
Enables or disables automatic sorting after modification operations.
Implemented in SystemEx.Collections.Generic.SortedArray< T >.
|
getset |
Enables or disables automatic sorting after modification operations.
Implemented in SystemEx.Collections.Generic.SortedMap< T, TU >.
|
getset |
Enables or disables automatic sorting after modification operations.
Implemented in SystemEx.Collections.Generic.SortedTupleMap.
|
getset |
Gets or sets the comparer interface used to compare elements. If set, it overrides the delegate-based comparison.
Implemented in SystemEx.Collections.Generic.SortedArray< T >.
|
getset |
Gets or sets the comparer interface used to compare key/value pairs. If set, it overrides the delegate-based comparison.
Implemented in SystemEx.Collections.Generic.SortedMap< T, TU >.
|
getset |
Gets or sets the comparer interface used to compare tuples. If set, it overrides the delegate-based comparison.
Implemented in SystemEx.Collections.Generic.SortedTupleMap.
|
getset |
Gets or sets the delegate-based sort function used to compare elements.
Implemented in SystemEx.Collections.Generic.SortedArray< T >.
|
getset |
Gets or sets the delegate-based sort function used to compare key/value pairs.
Implemented in SystemEx.Collections.Generic.SortedMap< T, TU >.
|
getset |
Gets or sets the delegate-based sort function used to compare tuples.
Implemented in SystemEx.Collections.Generic.SortedTupleMap.