clang
3.7.0
|
#include <Type.h>
Public Member Functions | |
ExtQuals (const Type *baseType, QualType canon, Qualifiers quals) | |
Qualifiers | getQualifiers () const |
bool | hasObjCGCAttr () const |
Qualifiers::GC | getObjCGCAttr () const |
bool | hasObjCLifetime () const |
Qualifiers::ObjCLifetime | getObjCLifetime () const |
bool | hasAddressSpace () const |
unsigned | getAddressSpace () const |
const Type * | getBaseType () const |
void | Profile (llvm::FoldingSetNodeID &ID) const |
Static Public Member Functions | |
static void | Profile (llvm::FoldingSetNodeID &ID, const Type *BaseType, Qualifiers Quals) |
ExtQuals - We can encode up to four bits in the low bits of a type pointer, but there are many more type qualifiers that we want to be able to apply to an arbitrary type. Therefore we have this struct, intended to be heap-allocated and used by QualType to store qualifiers.
The current design tags the 'const', 'restrict', and 'volatile' qualifiers in three low bits on the QualType pointer; a fourth bit records whether the pointer is an ExtQuals node. The extended qualifiers (address spaces, Objective-C GC attributes) are much more rare.
|
inline |
Definition at line 1158 of file Type.h.
References clang::Qualifiers::hasFastQualifiers(), and clang::Qualifiers::hasNonFastQualifiers().
|
inline |
Definition at line 1180 of file Type.h.
References clang::Qualifiers::getAddressSpace().
|
inline |
Definition at line 1182 of file Type.h.
Referenced by Profile(), clang::QualType::split(), and clang::QualifierCollector::strip().
|
inline |
Definition at line 1172 of file Type.h.
References clang::Qualifiers::getObjCGCAttr().
|
inline |
Definition at line 1175 of file Type.h.
References clang::Qualifiers::getObjCLifetime().
|
inline |
Definition at line 1169 of file Type.h.
Referenced by clang::QualType::split(), and clang::QualifierCollector::strip().
|
inline |
Definition at line 1179 of file Type.h.
References clang::Qualifiers::hasAddressSpace().
|
inline |
Definition at line 1171 of file Type.h.
References clang::Qualifiers::hasObjCGCAttr().
|
inline |
Definition at line 1174 of file Type.h.
References clang::Qualifiers::hasObjCLifetime().
|
inline |
Definition at line 1185 of file Type.h.
References getBaseType().
|
inlinestatic |
Definition at line 1188 of file Type.h.
References clang::Qualifiers::hasFastQualifiers(), and clang::Qualifiers::Profile().