namespace Misaki.HighPerformance.Unsafe.Collections; [Flags] public enum AllocationOption : byte { None = 0, /// /// Allocator for initialized memory. /// Clear = 1 << 0, /// /// Allocator for untracked memory. It always allocates memory without using the allocation manager. /// Always free it manually even if you use the allocator. /// /// /// Use this option carefully, as the allocation manager will not track the memory. /// No warning will be given if the memory is not freed. /// UnTracked = 1 << 1, } public enum Allocator : byte { // Make the first allocator as invalid because we don't want to user create a default collection without passing any parameters Invalid, /// /// Allocator for temporary allocations. Allocations are cleared after use. /// Temp, /// /// Allocator for persistent allocations. Allocations are not cleared after use. /// Persistent, /// /// Allocator for external memory. Allocations are not cleared after use. /// External }