using System;
namespace Ryujinx.Memory
{
/// <summary>
/// Memory access permission control.
/// </summary>
[Flags]
public enum MemoryPermission
/// No access is allowed on the memory region.
None = 0,
/// Allow reads on the memory region.
Read = 1 << 0,
/// Allow writes on the memory region.
Write = 1 << 1,
/// Allow code execution on the memory region.
Execute = 1 << 2,
/// Allow reads and writes on the memory region.
ReadAndWrite = Read | Write,
/// Allow reads and code execution on the memory region.
ReadAndExecute = Read | Execute,
/// Allow reads, writes, and code execution on the memory region.
ReadWriteExecute = Read | Write | Execute,
/// Indicates an invalid protection.
Invalid = 255
}