diff options
Diffstat (limited to 'include/clang/AST/Mangle.h')
| -rw-r--r-- | include/clang/AST/Mangle.h | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/include/clang/AST/Mangle.h b/include/clang/AST/Mangle.h index 309ed5a1a5d2e..b1fbe936136a9 100644 --- a/include/clang/AST/Mangle.h +++ b/include/clang/AST/Mangle.h @@ -1,9 +1,8 @@ //===--- Mangle.h - Mangle C++ Names ----------------------------*- C++ -*-===// // -// The LLVM Compiler Infrastructure -// -// This file is distributed under the University of Illinois Open Source -// License. See LICENSE.TXT for details. +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// // @@ -244,6 +243,19 @@ public: static MicrosoftMangleContext *create(ASTContext &Context, DiagnosticsEngine &Diags); }; + +class ASTNameGenerator { +public: + explicit ASTNameGenerator(ASTContext &Ctx); + ~ASTNameGenerator(); + bool writeName(const Decl *D, raw_ostream &OS); + std::string getName(const Decl *D); + std::vector<std::string> getAllManglings(const Decl *D); + +private: + class Implementation; + std::unique_ptr<Implementation> Impl; +}; } #endif |
