43 constexpr operator id_t()
const {
return id; }
51 bool exists(
void)
const {
return id != 0; }
60#define C_ENUMS(name, desc) name,
72 size_t reason_size)
const;
77 return os << std::hex << m.
id << std::dec;
82#define STRING_KIND_CASE(kind, desc) \
83 case Memory::Kind::kind: \
88#undef STRING_KIND_CASE
89 return os <<
"UNKNOWN_KIND";
95struct std::hash<
Realm::Memory> {
98 return std::hash<realm_id_t>()(m.id);
void report_memory_fault(int reason, const void *reason_data, size_t reason_size) const
bool operator<(const Memory &rhs) const
Definition memory.h:45
Kind
Definition memory.h:59
bool operator!=(const Memory &rhs) const
Definition memory.h:47
id_t id
Definition memory.h:36
static const Memory NO_MEMORY
Definition memory.h:49
AddressSpace address_space(void) const
bool exists(void) const
Definition memory.h:51
constexpr Memory(id_t id)
Definition memory.h:39
::realm_id_t id_t
Definition memory.h:35
size_t capacity(void) const
bool operator==(const Memory &rhs) const
Definition memory.h:46
#define REALM_PUBLIC_API
Definition compiler_support.h:217
#define STRING_KIND_CASE(kind, desc)
#define C_ENUMS(name, desc)
Definition memory.h:60
Definition activemsg.h:38
::realm_address_space_t AddressSpace
Definition memory.h:31
std::ostream & operator<<(std::ostream &os, const DenseRectangleList< N, T > &drl)
#define REALM_MEMORY_KINDS(__op__)
Definition realm_c.h:248
unsigned long long realm_id_t
Definition realm_c.h:64
unsigned int realm_address_space_t
Definition realm_c.h:72
#define REALM_NO_MEM
Definition realm_c.h:166
std::size_t operator()(const Realm::Memory &m) const noexcept
Definition memory.h:96