1#ifndef ROSE_BinaryAnalysis_Demangler_H 
    2#define ROSE_BinaryAnalysis_Demangler_H 
    3#include <featureTests.h> 
    4#ifdef ROSE_ENABLE_BINARY_ANALYSIS 
    7#include <boost/filesystem.hpp> 
   12namespace BinaryAnalysis {
 
   20    boost::filesystem::path cxxFiltExe_;                
 
   22    std::string compiler_;                              
 
   31    const boost::filesystem::path& 
cxxFiltExe()
 const { 
return cxxFiltExe_; }
 
   32    void cxxFiltExe(
const boost::filesystem::path &p) { cxxFiltExe_ = p; }
 
   53    const std::string& 
compiler()
 const { 
return compiler_; }
 
   54    void compiler(
const std::string &s) { compiler_ = s; }
 
   61    void fillCache(
const std::vector<std::string> &mangledNames);
 
   70    std::string 
demangle(
const std::string &mangledName);
 
   76    size_t size()
 const { 
return nameMap_.
size(); }
 
   84    void insert(
const std::string &mangledName, 
const std::string &demangledName);
 
 
const NameMap & allNames() const
Map of all cached names.
 
void insert(const std::string &mangledName, const std::string &demangledName)
Insert a mangled/demangled pair.
 
void fillCache(const std::vector< std::string > &mangledNames)
Demangle lots of names.
 
void compiler(const std::string &s)
Property: Format of mangled names.
 
void cxxFiltExe(const boost::filesystem::path &p)
Property: Name of c++filt program.
 
const std::string & compiler() const
Property: Format of mangled names.
 
std::string demangle(const std::string &mangledName)
Demangle one name.
 
size_t size() const
Number of items in the cache.
 
void clear()
Clear the cache.
 
const boost::filesystem::path & cxxFiltExe() const
Property: Name of c++filt program.
 
Container associating values with keys.
 
size_t size() const
Number of nodes, keys, or values in this container.
 
Map & clear()
Remove all nodes.