OGS
DemangleTypeInfo.h
Go to the documentation of this file.
1
// SPDX-FileCopyrightText: Copyright (c) OpenGeoSys Community (opengeosys.org)
2
// SPDX-License-Identifier: BSD-3-Clause
3
4
#pragma once
5
6
#include <string>
7
#include <type_traits>
8
#include <typeinfo>
9
10
namespace
BaseLib
11
{
20
std::string
demangle
(
const
char
* mangled_name);
21
29
template
<
typename
T>
30
std::string
typeToString
()
31
{
32
return
demangle
(
typeid
(T).name());
33
}
34
38
template
<
typename
T>
39
std::string
typeToString
(T&&
/* not needed */
)
40
{
41
return
demangle
(
typeid
(std::remove_cvref_t<T>).name());
42
}
43
}
// namespace BaseLib
BaseLib
Definition
TestDefinition.h:13
BaseLib::demangle
std::string demangle(const char *mangled_name)
Definition
DemangleTypeInfo.cpp:19
BaseLib::typeToString
std::string typeToString()
Definition
DemangleTypeInfo.h:30
BaseLib
DemangleTypeInfo.h
Generated by
1.14.0