#include "clang/AST/TypeLoc.h"
#include "clang/AST/ASTConcept.h"
#include "clang/AST/ASTContext.h"
#include "clang/AST/Attr.h"
#include "clang/AST/DeclTemplate.h"
#include "clang/AST/Expr.h"
#include "clang/AST/NestedNameSpecifier.h"
#include "clang/AST/TemplateBase.h"
#include "clang/AST/TemplateName.h"
#include "clang/AST/TypeLocVisitor.h"
#include "clang/Basic/SourceLocation.h"
#include "clang/Basic/Specifiers.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/MathExtras.h"
#include <algorithm>
#include <cassert>
#include <cstdint>
#include <cstring>
#include "clang/AST/TypeLocNodes.def"
#include "clang/Basic/OpenCLImageTypes.def"
#include "clang/Basic/OpenCLExtensionTypes.def"
#include "clang/Basic/AArch64SVEACLETypes.def"
#include "clang/Basic/PPCTypes.def"
#include "clang/Basic/RISCVVTypes.def"
#include "clang/Basic/WebAssemblyReferenceTypes.def"
#include "clang/Basic/AMDGPUTypes.def"
#include "clang/Basic/HLSLIntangibleTypes.def"
Go to the source code of this file.
|
#define | ABSTRACT_TYPELOC(CLASS, PARENT) |
|
#define | TYPELOC(CLASS, PARENT) |
|
#define | ABSTRACT_TYPELOC(CLASS, PARENT) |
|
#define | TYPELOC(CLASS, PARENT) |
|
#define | ABSTRACT_TYPELOC(CLASS, PARENT) |
|
#define | TYPELOC(CLASS, PARENT) |
|
#define | ABSTRACT_TYPELOC(CLASS, PARENT) |
|
#define | TYPELOC(CLASS, PARENT) |
|
#define | ABSTRACT_TYPELOC(CLASS, PARENT) |
|
#define | TYPELOC(CLASS, PARENT) |
|
#define | ABSTRACT_TYPELOC(CLASS, PARENT) |
|
#define | TYPELOC(CLASS, PARENT) |
|
#define | ABSTRACT_TYPELOC(CLASS, PARENT) |
|
#define | TYPELOC(CLASS, PARENT) |
|
#define | IMAGE_TYPE(ImgType, Id, SingletonId, Access, Suffix) case BuiltinType::Id: |
|
#define | EXT_OPAQUE_TYPE(ExtType, Id, Ext) case BuiltinType::Id: |
|
#define | SVE_TYPE(Name, Id, SingletonId) case BuiltinType::Id: |
|
#define | PPC_VECTOR_TYPE(Name, Id, Size) case BuiltinType::Id: |
|
#define | RVV_TYPE(Name, Id, SingletonId) case BuiltinType::Id: |
|
#define | WASM_TYPE(Name, Id, SingletonId) case BuiltinType::Id: |
|
#define | AMDGPU_TYPE(Name, Id, SingletonId, Width, Align) case BuiltinType::Id: |
|
#define | HLSL_INTANGIBLE_TYPE(Name, Id, SingletonId) case BuiltinType::Id: |
|
◆ ABSTRACT_TYPELOC [1/7]
#define ABSTRACT_TYPELOC |
( |
|
CLASS, |
|
|
|
PARENT |
|
) |
| |
◆ ABSTRACT_TYPELOC [2/7]
#define ABSTRACT_TYPELOC |
( |
|
CLASS, |
|
|
|
PARENT |
|
) |
| |
◆ ABSTRACT_TYPELOC [3/7]
#define ABSTRACT_TYPELOC |
( |
|
CLASS, |
|
|
|
PARENT |
|
) |
| |
◆ ABSTRACT_TYPELOC [4/7]
#define ABSTRACT_TYPELOC |
( |
|
CLASS, |
|
|
|
PARENT |
|
) |
| |
◆ ABSTRACT_TYPELOC [5/7]
#define ABSTRACT_TYPELOC |
( |
|
CLASS, |
|
|
|
PARENT |
|
) |
| |
◆ ABSTRACT_TYPELOC [6/7]
#define ABSTRACT_TYPELOC |
( |
|
CLASS, |
|
|
|
PARENT |
|
) |
| |
◆ ABSTRACT_TYPELOC [7/7]
#define ABSTRACT_TYPELOC |
( |
|
CLASS, |
|
|
|
PARENT |
|
) |
| |
◆ AMDGPU_TYPE
#define AMDGPU_TYPE |
( |
|
Name, |
|
|
|
Id, |
|
|
|
SingletonId, |
|
|
|
Width, |
|
|
|
Align |
|
) |
| case BuiltinType::Id: |
◆ EXT_OPAQUE_TYPE
#define EXT_OPAQUE_TYPE |
( |
|
ExtType, |
|
|
|
Id, |
|
|
|
Ext |
|
) |
| case BuiltinType::Id: |
◆ HLSL_INTANGIBLE_TYPE
#define HLSL_INTANGIBLE_TYPE |
( |
|
Name, |
|
|
|
Id, |
|
|
|
SingletonId |
|
) |
| case BuiltinType::Id: |
◆ IMAGE_TYPE
#define IMAGE_TYPE |
( |
|
ImgType, |
|
|
|
Id, |
|
|
|
SingletonId, |
|
|
|
Access, |
|
|
|
Suffix |
|
) |
| case BuiltinType::Id: |
◆ PPC_VECTOR_TYPE
#define PPC_VECTOR_TYPE |
( |
|
Name, |
|
|
|
Id, |
|
|
|
Size |
|
) |
| case BuiltinType::Id: |
◆ RVV_TYPE
#define RVV_TYPE |
( |
|
Name, |
|
|
|
Id, |
|
|
|
SingletonId |
|
) |
| case BuiltinType::Id: |
◆ SVE_TYPE
#define SVE_TYPE |
( |
|
Name, |
|
|
|
Id, |
|
|
|
SingletonId |
|
) |
| case BuiltinType::Id: |
◆ TYPELOC [1/7]
#define TYPELOC |
( |
|
CLASS, |
|
|
|
PARENT |
|
) |
| |
Value:
}
A trivial tuple used to represent a source range.
Base wrapper for a particular "section" of type source info.
SourceRange getLocalSourceRange() const
Get the local source range.
Definition at line 292 of file TypeLoc.cpp.
◆ TYPELOC [2/7]
#define TYPELOC |
( |
|
CLASS, |
|
|
|
PARENT |
|
) |
| |
Value:
return TyLoc.getLocalDataAlignment(); \
}
Definition at line 292 of file TypeLoc.cpp.
◆ TYPELOC [3/7]
#define TYPELOC |
( |
|
CLASS, |
|
|
|
PARENT |
|
) |
| |
Value:
return TyLoc.getLocalDataSize(); \
}
Definition at line 292 of file TypeLoc.cpp.
◆ TYPELOC [4/7]
#define TYPELOC |
( |
|
CLASS, |
|
|
|
PARENT |
|
) |
| |
Value:
}
TypeLoc getNextTypeLoc() const
Get the next TypeLoc pointed by this TypeLoc, e.g for "int*" the TypeLoc is a PointerLoc and next Typ...
Definition at line 292 of file TypeLoc.cpp.
◆ TYPELOC [5/7]
#define TYPELOC |
( |
|
CLASS, |
|
|
|
PARENT |
|
) |
| |
Value: case CLASS: { \
TLCasted.initializeLocal(Context,
Loc); \
if (!TL) return; \
continue; \
}
T castAs() const
Convert to the specified TypeLoc type, asserting that this TypeLoc is of the desired type.
Definition at line 292 of file TypeLoc.cpp.
◆ TYPELOC [6/7]
#define TYPELOC |
( |
|
CLASS, |
|
|
|
PARENT |
|
) |
| |
◆ TYPELOC [7/7]
#define TYPELOC |
( |
|
CLASS, |
|
|
|
PARENT |
|
) |
| |
Value:
return isTypeSpec(TyLoc); \
}
Definition at line 292 of file TypeLoc.cpp.
◆ WASM_TYPE
#define WASM_TYPE |
( |
|
Name, |
|
|
|
Id, |
|
|
|
SingletonId |
|
) |
| case BuiltinType::Id: |
◆ createTrivialConceptReference()
◆ TypeLocMaxDataAlign
const unsigned TypeLocMaxDataAlign = alignof(void *) |
|
static |