namespace Misaki.HighPerformance.LowLevel.Buffer;
[Flags]
public enum AllocationOption : byte
{
None = 0,
///
/// Allocator for initialized memory.
///
Clear = 1 << 0,
///
/// Allocator for untracked memory.
///
///
/// 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 released after use automatically.
///
Temp,
///
/// Allocator for persistent allocations. Allocations are not released after use.
///
Persistent,
///
/// Allocator for stack allocations. Must have at least one active stack scope. Allocations are released when the stack scope is exited.
///
Stack
}