clang API Documentation
#include "clang/AST/Mangle.h"#include "clang/AST/ASTContext.h"#include "clang/AST/Attr.h"#include "clang/AST/CXXInheritance.h"#include "clang/AST/CharUnits.h"#include "clang/AST/Decl.h"#include "clang/AST/DeclCXX.h"#include "clang/AST/DeclObjC.h"#include "clang/AST/DeclTemplate.h"#include "clang/AST/Expr.h"#include "clang/AST/ExprCXX.h"#include "clang/AST/VTableBuilder.h"#include "clang/Basic/ABI.h"#include "clang/Basic/DiagnosticOptions.h"#include "clang/Basic/TargetInfo.h"#include "llvm/ADT/StringExtras.h"#include "llvm/Support/MathExtras.h"#include "clang/AST/TypeNodes.def"#include "clang/AST/BuiltinTypes.def"
Go to the source code of this file.
Defines | |
| #define | ABSTRACT_TYPE(CLASS, PARENT) |
| #define | NON_CANONICAL_TYPE(CLASS, PARENT) |
| #define | TYPE(CLASS, PARENT) |
| #define | ABSTRACT_TYPE(CLASS, PARENT) |
| #define | NON_CANONICAL_TYPE(CLASS, PARENT) |
| #define | TYPE(CLASS, PARENT) |
| #define | BUILTIN_TYPE(Id, SingletonId) |
| #define | PLACEHOLDER_TYPE(Id, SingletonId) case BuiltinType::Id: |
Functions | |
| static const TemplateDecl * | isTemplate (const NamedDecl *ND, const TemplateArgumentList *&TemplateArgs) |
| static void | mangleThunkThisAdjustment (const CXXMethodDecl *MD, const ThisAdjustment &Adjustment, MicrosoftCXXNameMangler &Mangler, raw_ostream &Out) |
| #define ABSTRACT_TYPE | ( | CLASS, | |
| PARENT | |||
| ) |
Definition at line 261 of file MicrosoftMangle.cpp.
| #define ABSTRACT_TYPE | ( | CLASS, | |
| PARENT | |||
| ) |
Definition at line 261 of file MicrosoftMangle.cpp.
| #define BUILTIN_TYPE | ( | Id, | |
| SingletonId | |||
| ) |
| #define NON_CANONICAL_TYPE | ( | CLASS, | |
| PARENT | |||
| ) |
Definition at line 262 of file MicrosoftMangle.cpp.
| #define NON_CANONICAL_TYPE | ( | CLASS, | |
| PARENT | |||
| ) |
case Type::CLASS: \ llvm_unreachable("can't mangle non-canonical type " #CLASS "Type"); \ return;
Definition at line 262 of file MicrosoftMangle.cpp.
| #define PLACEHOLDER_TYPE | ( | Id, | |
| SingletonId | |||
| ) | case BuiltinType::Id: |
| #define TYPE | ( | CLASS, | |
| PARENT | |||
| ) |
void mangleType(const CLASS##Type *T, \ SourceRange Range);
Definition at line 263 of file MicrosoftMangle.cpp.
| #define TYPE | ( | CLASS, | |
| PARENT | |||
| ) |
case Type::CLASS: \
mangleType(cast<CLASS##Type>(ty), Range); \
break;
Definition at line 263 of file MicrosoftMangle.cpp.
| static const TemplateDecl* isTemplate | ( | const NamedDecl * | ND, |
| const TemplateArgumentList *& | TemplateArgs | ||
| ) | [static] |
Definition at line 611 of file MicrosoftMangle.cpp.
References clang::FunctionDecl::getPrimaryTemplate(), and clang::FunctionDecl::getTemplateSpecializationArgs().
| static void mangleThunkThisAdjustment | ( | const CXXMethodDecl * | MD, |
| const ThisAdjustment & | Adjustment, | ||
| MicrosoftCXXNameMangler & | Mangler, | ||
| raw_ostream & | Out | ||
| ) | [static] |
Definition at line 2123 of file MicrosoftMangle.cpp.
References clang::AS_none, clang::AS_private, clang::AS_protected, clang::AS_public, clang::Decl::getAccess(), clang::ThisAdjustment::VirtualAdjustment::isEmpty(), clang::ThisAdjustment::VirtualAdjustment::Microsoft, clang::ThisAdjustment::NonVirtual, clang::ThisAdjustment::VirtualAdjustment::VBOffsetOffset, clang::ThisAdjustment::VirtualAdjustment::VBPtrOffset, clang::ThisAdjustment::Virtual, and clang::ThisAdjustment::VirtualAdjustment::VtordispOffset.