Velentr.Collections
2.0.2
dotnet add package Velentr.Collections --version 2.0.2
NuGet\Install-Package Velentr.Collections -Version 2.0.2
<PackageReference Include="Velentr.Collections" Version="2.0.2" />
paket add Velentr.Collections --version 2.0.2
#r "nuget: Velentr.Collections, 2.0.2"
// Install Velentr.Collections as a Cake Addin #addin nuget:?package=Velentr.Collections&version=2.0.2 // Install Velentr.Collections as a Cake Tool #tool nuget:?package=Velentr.Collections&version=2.0.2
Velentr.Collections
A variety of helpful collections.
Installation
A nuget package is available: Velentr.Collections
Available Collections
Namespace | Collection | Description | Min Supported Library Version | Example Usage |
---|---|---|---|---|
Collections.Concurrent | ConcurrentLimitedPriorityQueue | A priority queue that utilizes a list of available priorities based on a PriorityConverter |
1.0.0 | var c = new ConcurrentLimitedPriorityQueue<int, string>(new StringPriorityConverter()); |
Collections.Concurrent | ConcurrentPriorityQueue | A priority queue that has priorities available based on the QueuePriority enum |
1.0.0 | var c = new ConcurrentPriorityQueue<string>(); |
Collections.Concurrent | ConcurrentPool | A pool of objects that can be used to hold objects and define a maximum amount. More efficient generally for games as it can help reduce garbage collection | 1.0.0 | var c = new ConcurrentPool<object>(); |
Collections.LockFree | LockFreeLimitedPriorityQueue | A priority queue that utilizes a list of available priorities based on a PriorityConverter |
1.0.0 | var c = new LockFreeLimitedPriorityQueue<int, string>(new StringPriorityConverter()); |
Collections.LockFree | LockFreePriorityQueue | A priority queue that has priorities available based on the QueuePriority enum |
1.0.0 | var c = new LockFreePriorityQueue<string>(); |
Collections.LockFree | LockFreePool | A pool of objects that can be used to hold objects and define a maximum amount. More efficient generally for games as it can help reduce garbage collection | 1.0.0 | var c = new LockFreePool<object>(); |
Collections.LockFree | LockFreeQueue | A lock-free Queue implementation | 1.0.0 | var c = new LockFreeQueue<string>(); |
Collections.LockFree | LockFreeStack | A lock-free Stack implementation | 1.0.0 | var c = new LockFreeStack<string>(); |
Collections | OrderedDictionary | A Collection that combines functionality of a dictionary and a list. | 1.1.0 | var c = new OrderedDictionary<string, List<string>>(); |
Collections | SizeLimitedOrderedDictionary | A Collection that combines functionality of a dictionary and a list and that is also limited in max capacity. | 1.1.3 | var c = new OrderedDictionary<string, List<string>>(); |
Collections | DictionaryCache | A Thread-Safe and Lock-Free dictionary optimized for reads | 1.1.0 | var c = new DictionaryCache<string, int>(); |
Collections | SizeLimitedList | A list that is limited in max capacity | 1.1.0 | var c = new SizeLimitedList<string>(); |
Collections | HistoryCollection | A collection implementing undo and redo functionality | 1.2.0 | var c = new HistoryCollection<string>(); |
Collections | BiDirectionalDictionary | A bi-directional dictionary, where you can access the value for a key/value pair using the key or vice-versa | 1.2.0 | var c = new HistoryCollection<string>(); |
NOTES:
- Collections.Concurrent collections: Collections under this namespace utilize .NET Concurrent collections internally
- Lock-Free: Collections under this namespace utilize custom lock-free base collections
Deprecated Collections
Collection | Description | Max Supported Library Version |
---|---|---|
Bank | A Collection that combines functionality of a dictionary and a list. Renamed to OrderedDictionary in 1.1.0. |
1.0.5 |
Cache | A Thread-Safe and Lock-Free dictionary optimized for reads. Renamed to DictionaryCache in 1.1.0. |
1.0.5 |
Future Plans
See list of issues under the Milestones: https://github.com/vonderborch/Velentr.Collections/milestones
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. 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. |
-
net6.0
- Velentr.Core (>= 2.0.2)
NuGet packages (16)
Showing the top 5 NuGet packages that depend on Velentr.Collections:
Package | Downloads |
---|---|
Velentr.Miscellaneous
Miscellaneous helper methods and things that are useful for various purposes. |
|
Velentr.Font.Monogame
An alternative solution for Monogame/FNA/XNA-derived frameworks that utilizes SharpFont to draw text rather than the traditional SpriteFont approach. |
|
Velentr.Font.FNA
An alternative solution for Monogame/FNA/XNA-derived frameworks that utilizes SharpFont to draw text rather than the traditional SpriteFont approach. |
|
Velentr.Input.FNA
A simple and easy-to-use input library for XNA/Monogame/FNA. |
|
Velentr.Logging
A simple, extensible, and easy-to-use logging library. |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
2.0.2 | 1,141 | 11/17/2022 |
2.0.1 | 337 | 11/17/2022 |
2.0.0 | 325 | 11/17/2022 |
1.2.3 | 650 | 7/26/2022 |
1.2.2 | 1,397 | 5/20/2022 |
1.2.1 | 421 | 5/20/2022 |
1.2.0 | 5,290 | 11/10/2021 |
1.1.3 | 2,970 | 4/28/2021 |
1.1.2 | 495 | 4/28/2021 |
1.1.1 | 370 | 4/28/2021 |
1.1.0 | 371 | 4/28/2021 |
1.0.5 | 1,419 | 4/15/2021 |
1.0.4 | 385 | 4/15/2021 |
1.0.3 | 1,017 | 4/15/2021 |
1.0.2 | 352 | 4/15/2021 |
1.0.1 | 2,572 | 4/6/2021 |
1.0.0 | 413 | 4/6/2021 |