Cogs.Collections 1.12.1

dotnet add package Cogs.Collections --version 1.12.1
NuGet\Install-Package Cogs.Collections -Version 1.12.1
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Cogs.Collections" Version="1.12.1" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Cogs.Collections --version 1.12.1
#r "nuget: Cogs.Collections, 1.12.1"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Cogs.Collections as a Cake Addin
#addin nuget:?package=Cogs.Collections&version=1.12.1

// Install Cogs.Collections as a Cake Tool
#tool nuget:?package=Cogs.Collections&version=1.12.1

This library provides a number of utilities surrounding collections:

  • EquatableList<T> is an immutable list of items which may be compared with other instances of the same type and produces a hash code based on the permutation of its contents.
  • NullableKeyDictionary<TKey, TValue> and NullableKeySortedDictionary<TKey, TValue> are very slim implementations of IDictionary<TKey, TValue> that allow a single null key (useful for some edge cases in which a null key is simply going to happen and you need to be able to deal with it; otherwise, use other dictionary classes)
  • ObservableDictionary<TKey, TValue> and ObservableSortedDictionary<TKey, TValue> are counterparts to the BCL's Dictionary<TKey, TValue> and SortedDictionary<TKey, TValue>, respectively, that implement the also included IRangeDictionary<TKey, TValue> and INotifyDictionaryChanged<TKey, TValue>. Ever want to add multiple items to a dictionary at once... or keep an eye on what's being done to it? Now you can.
  • OrderedHashSet<T> is a counterpart to the BCL's HashSet<T> that maintains the order of the elements in the set. All operations are still O(1), just like the original, but if you enumerate over it you will get elements in the exact order they were added. There are also methods for manipulating the order.
Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.1 is compatible. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (4)

Showing the top 4 NuGet packages that depend on Cogs.Collections:

Package Downloads

Cogs for active expressions.


Cogs for active queries.


Cogs for synchronized collections. Includes ISynchronizedObservableRangeDictionary, SynchronizedObservableCollection, SynchronizedObservableDictionary, SynchronizedObservableSortedDictionary, SynchronizedRangeObservableCollection, ProcessingQueue, and AsyncProcessingQueue.


Cogs for WPF. Includes general-use behaviors, controls, validation rules, and value converters. Also includes ways to leverage Windows features beyond what WPF supports out of the box (such as using enabling blur-behind and binding system commands to controls) and the inclusion of input gestures in styles.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.12.1 1,184 1/26/2023
1.12.0 280 1/26/2023
1.11.0 4,638 4/3/2022
1.10.1 2,654 3/15/2022
1.10.0 404 3/15/2022
1.9.3 2,943 12/16/2021
1.9.2 925 11/3/2021
1.9.1 694 10/16/2021
1.9.0 776 7/15/2021
1.8.0 343 3/3/2021
1.7.7 2,254 2/1/2021
1.7.6 731 1/30/2021
1.7.5 597 1/30/2021
1.7.4 998 11/22/2020
1.7.3 757 10/23/2020
1.7.2 688 10/22/2020
1.7.0 531 10/21/2020
1.6.0 1,281 10/19/2020
1.5.6 3,580 5/23/2020
1.5.5 452 5/23/2020
1.5.4 492 5/23/2020
1.5.3 474 5/23/2020
1.5.2 423 5/11/2020
1.5.1 438 5/11/2020
1.5.0 454 5/11/2020
1.4.1 4,527 4/17/2020
1.4.0 816 4/13/2020
1.3.0 451 4/13/2020
1.2.1 791 4/11/2020
1.2.0 645 3/4/2020
1.1.1 1,113 3/4/2020
1.1.0 540 3/4/2020
1.0.2 735 3/3/2020
1.0.1 639 3/1/2020
1.0.0 704 2/29/2020

ReadOnlyObservableRangeDictionary is no longer sealed.