The Gallio.Common.Collections namespace contains specialized collection types and collection utilities.

Classes

  ClassDescription
ArrayEqualityComparer<(Of <(T>)>)
Compares arrays for equality by element.
CollectionUtils
Utility functions for manipulating collections.
CovariantList<(Of <(TInput, TOutput>)>)
A covariant list converts a list of the input type to a read-only list of the more generic output type. The wrapped list can be used to mimic covariance in method return types.
EmptyArray<(Of <(T>)>)
Provides a singleton empty array instance.
EmptyDictionary<(Of <(TKey, TValue>)>)
A read-only empty dictionary.
EnumerableCounter
Encapsulates various strategies for counting the number of elements in a collection, an array, or a simple enumerable type.
GenericCollectionUtils
Utility functions for manipulating generic collections.
HashSet<(Of <(T>)>)
A hashtable-based set implementation.
LazyCache<(Of <(TKey, TValue>)>)
Lazily populates and caches values associated with a particular key.
MultiMap<(Of <(TKey, TValue>)>)
A multi-map allows a list of values to be associated with a single key.
PropertyBag
A property bag associates keys with values where each key may have one or more associated value. All keys and values must be non-null strings.
PropertySet
A property set associates keys with values where each key may have exactly one associated value. All keys and values must be non-null strings.
ReadOnlyDictionary<(Of <(TKey, TValue>)>)
A read-only dictionary wrapper.
ReferentialEqualityComparer<(Of <(T>)>)
An equality comparer that compares values by reference.
TreeUtils
Provides functions for manipulating ad-hoc trees.
UserDataCollection
A user data collection stores arbitrary key/value pairs that may be associated with other objects in the system.

Structures

  StructureDescription
Key<(Of <(TValue>)>)
A strongly-typed key to be used together with an associative array to help the compiler perform better type checking of the value associated with the key.

Interfaces

  InterfaceDescription
ICountingStrategy
Represents a strategy for counting the number of elements in a collection, an array, or a simple enumerable type.
IMultiMap<(Of <(TKey, TValue>)>)
A multi-map allows a list of values to be associated with a single key.
IPropertySetContainer
Contains a PropertySet

Delegates

  DelegateDescription
TreeUtils..::.ChildEnumerator<(Of <(T>)>)
Enumerates child nodes in a tree.

Enumerations

  EnumerationDescription
CountingStrategyName
Name of the existing counting strategies.