aboutsummaryrefslogtreecommitdiffstats
path: root/util/system/demangle_impl.h
blob: 9184e1f56036819be7b35c663b91a922834f252f (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#pragma once

#include <util/generic/ptr.h>
#include <util/generic/string.h>

namespace NPrivate {

    /*
     * cxxabi::__cxa_demangle (and thus TCppDemanger) have terrible memory ownership model.
     *
     * Consider using CppDemangle instead. It is slow, but robust.
     */
    class TCppDemangler {
    public:
        const char* Demangle(const char* name);

    private:
        THolder<char, TFree> TmpBuf_;
    };

} // namespace NPrivate