retdec
itanium_demangler.h
Go to the documentation of this file.
1 
7 #ifndef RETDEC_LLVM_ITANIUM_DEMANGLER_H
8 #define RETDEC_LLVM_ITANIUM_DEMANGLER_H
9 
11 
12 namespace retdec {
13 namespace demangler {
14 
19 {
20 public:
22 
23  std::string demangleToString(const std::string &mangled) override;
24 
25  std::shared_ptr<ctypes::Function> demangleFunctionToCtypes(
26  const std::string &mangled,
27  std::unique_ptr<ctypes::Module> &module,
29  const ctypesparser::CTypesParser::TypeSignedness &typeSignedness,
30  unsigned defaultBitWidth) override;
31 };
32 
33 }
34 }
35 
36 #endif //RETDEC_LLVM_ITANIUM_DEMANGLER_H
std::map< std::string, ctypes::IntegralType::Signess > TypeSignedness
Set container for C-types' signedness.
Definition: ctypes_parser.h:30
std::map< std::string, unsigned > TypeWidths
Set container for C-types' bit width.
Definition: ctypes_parser.h:28
Definition: demangler_base.h:31
Adapter for llvm itanium demangler.
Definition: itanium_demangler.h:19
std::string demangleToString(const std::string &mangled) override
Method for demangling to string. After use demangler status should be checked.
Definition: itanium_demangler_adapter.cpp:28
std::shared_ptr< ctypes::Function > demangleFunctionToCtypes(const std::string &mangled, std::unique_ptr< ctypes::Module > &module, const ctypesparser::CTypesParser::TypeWidths &typeWidths, const ctypesparser::CTypesParser::TypeSignedness &typeSignedness, unsigned defaultBitWidth) override
Definition: itanium_demangler_adapter.cpp:56
ItaniumDemangler()
Constructor for adapter.
Definition: itanium_demangler_adapter.cpp:21
Base class for demanglers.
ShPtr< Module > module
The current module.
Definition: hll_writer.cpp:100
Definition: archive_wrapper.h:19