MangleContext - Context for tracking state which persists across multiple calls to the C++ name mangler. More...
#include "clang/AST/Mangle.h"
MangleContext - Context for tracking state which persists across multiple calls to the C++ name mangler.
Definition at line 45 of file Mangle.h.
◆ ManglerKind Enumerator MK_Itanium MK_MicrosoftDefinition at line 47 of file Mangle.h.
◆ MangleContext() ◆ ~MangleContext() virtual clang::MangleContext::~MangleContext ( ) inlinevirtualDefinition at line 76 of file Mangle.h.
◆ getAnonymousStructId() uint64_t clang::MangleContext::getAnonymousStructId ( const NamedDecl * D, const FunctionDecl * FD =nullptr
) inline ◆ getAnonymousStructIdForDebugInfo() uint64_t clang::MangleContext::getAnonymousStructIdForDebugInfo ( const NamedDecl * D ) inline ◆ getASTContext() ASTContext & clang::MangleContext::getASTContext ( ) const inline ◆ getBlockId() ◆ getDiags() ◆ getKind() ◆ getLambdaString() virtual std::string clang::MangleContext::getLambdaString ( const CXXRecordDecl * Lambda ) pure virtual ◆ isAux() bool clang::MangleContext::isAux ( ) const inline
Definition at line 70 of file Mangle.h.
◆ isUniqueInternalLinkageDecl() virtual bool clang::MangleContext::isUniqueInternalLinkageDecl ( const NamedDecl * ND ) inlinevirtual ◆ mangleBlock() ◆ mangleCanonicalTypeName() virtual void clang::MangleContext::mangleCanonicalTypeName ( QualType T, raw_ostream & , bool NormalizeIntegers =false
) pure virtual ◆ mangleCtorBlock() ◆ mangleCXXDtorThunk() ◆ mangleCXXName() virtual void clang::MangleContext::mangleCXXName ( GlobalDecl GD, raw_ostream & ) pure virtual
Referenced by mangleName().
◆ mangleCXXRTTI() virtual void clang::MangleContext::mangleCXXRTTI ( QualType T, raw_ostream & ) pure virtual ◆ mangleCXXRTTIName() ◆ mangleCXXVTable() virtual void clang::MangleContext::mangleCXXVTable ( const CXXRecordDecl * RD, raw_ostream & ) pure virtual ◆ mangleDtorBlock() ◆ mangleDynamicAtExitDestructor() virtual void clang::MangleContext::mangleDynamicAtExitDestructor ( const VarDecl * D, raw_ostream & ) pure virtual ◆ mangleDynamicInitializer() virtual void clang::MangleContext::mangleDynamicInitializer ( const VarDecl * D, raw_ostream & ) pure virtual ◆ mangleGlobalBlock() void MangleContext::mangleGlobalBlock ( const BlockDecl * BD, const NamedDecl * ID, raw_ostream & Out ) ◆ mangleMSGuidDecl() void MangleContext::mangleMSGuidDecl ( const MSGuidDecl * GD, raw_ostream & Out ) virtual ◆ mangleName() void MangleContext::mangleName ( GlobalDecl GD, raw_ostream & Out )Definition at line 138 of file Mangle.cpp.
References clang::Type::castAs(), CCM_Fast, CCM_Other, CCM_RegCall, CCM_Std, CCM_Vector, CCM_WasmMainArgcArgv, D, clang::Default, getASTContext(), clang::Decl::getAttr(), getCallingConvMangling(), clang::TargetInfo::getCXXABI(), clang::GlobalDecl::getDecl(), clang::TargetInfo::getPointerWidth(), clang::ASTContext::getTargetInfo(), clang::ValueDecl::getType(), clang::ASTContext::getTypeSize(), clang::TargetInfo::getUserLabelPrefix(), mangleCXXName(), mangleMSGuidDecl(), mangleObjCMethodNameAsSourceName(), and shouldMangleCXXName().
Referenced by getMangledNameImpl(), mangleBlock(), mangleCtorBlock(), mangleDtorBlock(), and mangleGlobalBlock().
◆ mangleObjCMethodName() void MangleContext::mangleObjCMethodName ( const ObjCMethodDecl * MD, raw_ostream & OS, bool includePrefixByte =true
, bool includeCategoryNamespace = true
)
Definition at line 327 of file Mangle.cpp.
References getASTContext(), clang::ObjCMethodDecl::getCategory(), clang::ObjCMethodDecl::getClassInterface(), clang::Decl::getDeclContext(), clang::NamedDecl::getName(), clang::ObjCMethodDecl::getSelector(), clang::ObjCMethodDecl::isClassMethod(), clang::ObjCRuntime::isGNUFamily(), clang::ObjCMethodDecl::isInstanceMethod(), and clang::Selector::print().
Referenced by clang::CodeGen::CGObjCRuntime::getSymbolNameForMethod(), and mangleObjCMethodNameAsSourceName().
◆ mangleObjCMethodNameAsSourceName() void MangleContext::mangleObjCMethodNameAsSourceName ( const ObjCMethodDecl * MD, raw_ostream & Out ) ◆ mangleReferenceTemporary() ◆ mangleSEHFilterExpression() virtual void clang::MangleContext::mangleSEHFilterExpression ( GlobalDecl EnclosingDecl, raw_ostream & Out ) pure virtual ◆ mangleSEHFinallyBlock() virtual void clang::MangleContext::mangleSEHFinallyBlock ( GlobalDecl EnclosingDecl, raw_ostream & Out ) pure virtual ◆ mangleStaticGuardVariable() virtual void clang::MangleContext::mangleStaticGuardVariable ( const VarDecl * D, raw_ostream & ) pure virtual ◆ mangleStringLiteral() ◆ mangleThunk() virtual void clang::MangleContext::mangleThunk ( const CXXMethodDecl * MD, const ThunkInfo & Thunk, bool ElideOverrideInfo, raw_ostream & ) pure virtual ◆ needsUniqueInternalLinkageNames() virtual void clang::MangleContext::needsUniqueInternalLinkageNames ( ) inlinevirtual ◆ shouldMangleCXXName() ◆ shouldMangleDeclName()Definition at line 104 of file Mangle.cpp.
References CCM_Other, clang::CPlusPlus, D, getASTContext(), getCallingConvMangling(), clang::Decl::getOwningModuleForLinkage(), clang::Decl::hasAttr(), clang::Decl::hasAttrs(), isUniqueInternalLinkageDecl(), and shouldMangleCXXName().
Referenced by getMangledNameImpl(), mangleBlock(), and mangleGlobalBlock().
◆ shouldMangleStringLiteral() virtual bool clang::MangleContext::shouldMangleStringLiteral ( const StringLiteral * SL ) pure virtual ◆ startNewFunction() virtual void clang::MangleContext::startNewFunction ( ) inlinevirtualDefinition at line 82 of file Mangle.h.
The documentation for this class was generated from the following files:
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4