Native C# library implementing collections.
Install it by cloning it, or referencing through the NuGet package through GitHub's registry (authentication info).
For installing as a Unity package, use these urls to add this repo and its dependency:
https://github.com/simulation-tree/collections.git?path=source#unity
https://github.com/simulation-tree/unmanaged.git?path=core#unity
using Array<int> array = new(4);
array[0] = 1;
array[1] = 3;
array[2] = 3;
array[3] = 7;
foreach (int item in array)
{
Console.WriteLine(item);
}
using List<int> list = new();
list.Add(1);
list.Add(3);
list.Add(3);
list.Add(7);
foreach (int item in list)
{
Console.WriteLine(item);
}
using Dictionary<byte, int> dictionary = new();
dictionary.Add(1, 1337);
dictionary.Add(2, 8008135);
dictionary.Add(3, 42);
foreach ((byte key, int value) in dictionary)
{
Console.WriteLine($"{key} = {value}");
}
using Stack<int> stack = new();
stack.Push(1);
stack.Push(3);
stack.Push(3);
stack.Push(7);
while (stack.TryPop(out int item))
{
Console.WriteLine(item);
}
using Queue<int> queue = new();
queue.Enqueue(1);
queue.Enqueue(3);
queue.Enqueue(3);
queue.Enqueue(7);
while (queue.TryDequeue(out int item))
{
Console.WriteLine(item);
}
using HashSet<int> hashSet = new();
hashSet.TryAdd(1);
hashSet.TryAdd(3);
hashSet.TryAdd(3);
hashSet.TryAdd(7);
foreach (int item in hashSet)
{
Console.WriteLine(item);
}
if (hashSet.TryGetValue(7, out int actualValue))
{
Console.WriteLine(actualValue);
}