using System;
namespace Ryujinx.Memory
{
///
/// Memory access permission control.
///
[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,
}
}