LLDB mainline
|
The implementation of lldb::Type's m_payload field for TypeSystemClang. More...
#include <TypeSystemClang.h>
Public Member Functions | |
TypePayloadClang ()=default | |
TypePayloadClang (OptionalClangModuleID owning_module, bool is_complete_objc_class=false) | |
TypePayloadClang (uint32_t opaque_payload) | |
operator Type::Payload () | |
bool | IsCompleteObjCClass () |
void | SetIsCompleteObjCClass (bool is_complete_objc_class) |
OptionalClangModuleID | GetOwningModule () |
void | SetOwningModule (OptionalClangModuleID id) |
Static Public Attributes | |
static constexpr unsigned | ObjCClassBit = 1 << 31 |
Private Attributes | |
Type::Payload | m_payload = 0 |
The payload is used for typedefs and ptrauth types. | |
The implementation of lldb::Type's m_payload field for TypeSystemClang.
Definition at line 69 of file TypeSystemClang.h.
|
default |
|
explicit |
Definition at line 329 of file TypeSystemClang.cpp.
References SetIsCompleteObjCClass().
|
inlineexplicit |
Definition at line 83 of file TypeSystemClang.h.
|
inline |
Definition at line 92 of file TypeSystemClang.h.
References m_payload, and ObjCClassBit.
|
inline |
Definition at line 87 of file TypeSystemClang.h.
References m_payload, ObjCClassBit, and lldb_private::Flags::Test().
Referenced by lldb_private::ObjCLanguageRuntime::LookupInCompleteClassCache(), and SetOwningModule().
|
inline |
Definition at line 84 of file TypeSystemClang.h.
References m_payload.
|
inline |
Definition at line 88 of file TypeSystemClang.h.
References lldb_private::Flags::Clear(), m_payload, ObjCClassBit, and lldb_private::Flags::Set().
Referenced by SetOwningModule(), and TypePayloadClang().
void TypePayloadClang::SetOwningModule | ( | OptionalClangModuleID | id | ) |
Definition at line 335 of file TypeSystemClang.cpp.
References IsCompleteObjCClass(), m_payload, ObjCClassBit, and SetIsCompleteObjCClass().
|
private |
The payload is used for typedefs and ptrauth types.
For typedefs, the Layout is as follows:
/// bit 0..30 ... Owning Module ID. /// bit 31 ...... IsCompleteObjCClass. ///
For ptrauth types, we store the PointerAuthQualifier as an opaque value.
Definition at line 77 of file TypeSystemClang.h.
Referenced by GetOwningModule(), IsCompleteObjCClass(), operator Type::Payload(), SetIsCompleteObjCClass(), and SetOwningModule().
|
staticconstexpr |
Definition at line 86 of file TypeSystemClang.h.
Referenced by GetOwningModule(), IsCompleteObjCClass(), SetIsCompleteObjCClass(), and SetOwningModule().