class ASTNameGenerator::Implementation

Declaration

class ASTNameGenerator::Implementation { /* full declaration omitted */ };

Declared at: clang/lib/AST/Mangle.cpp:392

Member Variables

private std::unique_ptr<MangleContext> MC
private llvm::DataLayout DL

Method Overview

  • public Implementation(clang::ASTContext & Ctx)
  • public std::vector<std::string> getAllManglings(const clang::ObjCContainerDecl * OCD)
  • public std::vector<std::string> getAllManglings(const clang::Decl * D)
  • public static llvm::StringRef getClassSymbolPrefix(clang::ASTNameGenerator::Implementation::ObjCKind Kind, const clang::ASTContext & Context)
  • private std::string getMangledStructor(const clang::NamedDecl * ND, unsigned int StructorType)
  • private std::string getMangledThunk(const clang::CXXMethodDecl * MD, const clang::ThunkInfo & T)
  • public std::string getName(const clang::Decl * D)
  • private bool writeFuncOrVarName(const clang::NamedDecl * D, llvm::raw_ostream & OS)
  • public bool writeName(const clang::Decl * D, llvm::raw_ostream & OS)
  • private void writeObjCClassName(const clang::ObjCInterfaceDecl * D, llvm::raw_ostream & OS)

Methods

Implementation(clang::ASTContext& Ctx)

Declared at: clang/lib/AST/Mangle.cpp:397

Parameters

clang::ASTContext& Ctx

std::vector<std::string> getAllManglings(
    const clang::ObjCContainerDecl* OCD)

Declared at: clang/lib/AST/Mangle.cpp:449

Parameters

const clang::ObjCContainerDecl* OCD

std::vector<std::string> getAllManglings(
    const clang::Decl* D)

Declared at: clang/lib/AST/Mangle.cpp:472

Parameters

const clang::Decl* D

static llvm::StringRef getClassSymbolPrefix(
    clang::ASTNameGenerator::Implementation::
        ObjCKind Kind,
    const clang::ASTContext& Context)

Declared at: clang/lib/AST/Mangle.cpp:442

Parameters

clang::ASTNameGenerator::Implementation::ObjCKind Kind
const clang::ASTContext& Context

std::string getMangledStructor(
    const clang::NamedDecl* ND,
    unsigned int StructorType)

Declared at: clang/lib/AST/Mangle.cpp:550

Parameters

const clang::NamedDecl* ND
unsigned int StructorType

std::string getMangledThunk(
    const clang::CXXMethodDecl* MD,
    const clang::ThunkInfo& T)

Declared at: clang/lib/AST/Mangle.cpp:569

Parameters

const clang::CXXMethodDecl* MD
const clang::ThunkInfo& T

std::string getName(const clang::Decl* D)

Declared at: clang/lib/AST/Mangle.cpp:428

Parameters

const clang::Decl* D

bool writeFuncOrVarName(const clang::NamedDecl* D,
                        llvm::raw_ostream& OS)

Declared at: clang/lib/AST/Mangle.cpp:523

Parameters

const clang::NamedDecl* D
llvm::raw_ostream& OS

bool writeName(const clang::Decl* D,
               llvm::raw_ostream& OS)

Declared at: clang/lib/AST/Mangle.cpp:401

Parameters

const clang::Decl* D
llvm::raw_ostream& OS

void writeObjCClassName(
    const clang::ObjCInterfaceDecl* D,
    llvm::raw_ostream& OS)

Declared at: clang/lib/AST/Mangle.cpp:545

Parameters

const clang::ObjCInterfaceDecl* D
llvm::raw_ostream& OS