The utilities library for HexaEngine.
$ dotnet add package Hexa.NET.UtilitiesThis repository provides a collection of high-performance utilities designed to address common programming needs while maintaining low GC pressure and maximizing performance.
StrBuilder:
StdWString (UTF-16)StdString (UTF-8)List (UnsafeList)Map (UnsafeDictionary)Set (UnsafeHashSet)Queue (UnsafeQueue)Stack (UnsafeStack)Memset)QSort)To get started with the HexaEngine Utilities library, follow these steps:
Install the NuGet package:
dotnet add package Hexa.NET.Utilities
Include the library in your project:
using Hexa.NET.Utilities;
Initialize and utilize data structures:
var myString = new StdString("Hello, HexaEngine!");
var myList = new UnsafeList<int> { 1, 2 };
Leverage memory management utilities:
int* memory = Utils.AllocT<int>(1);
Utils.Free(memory);
or
global using static Hexa.NET.Utilities.Utils;
int* memory = AllocT<int>(1);
Free(memory);
Use thread-safe components for concurrent operations:
var pool = new ObjectPool<MyObject>();
var obj = pool.Rent();
pool.Return(obj);
Contributions are welcome! If you have ideas for new features or improvements, feel free to submit a pull request or open an issue.
This project is licensed under the MIT License. See the LICENSE file for more details.