9#include <Kokkos_Macros.hpp>
14#if defined(KOKKOS_COMPILER_GNU) || defined(KOKKOS_COMPILER_CLANG
)
18namespace ddc::detail {
20void print_demangled_type_name(std::ostream& os,
char const*
const mangled_name)
22#if defined(KOKKOS_COMPILER_GNU) || defined(KOKKOS_COMPILER_CLANG
)
25 std::unique_ptr<
char,
decltype(std::free)*>
const
26 demangled_name(abi::__cxa_demangle(mangled_name,
nullptr,
nullptr, &status), std::free);
28 os <<
"Error demangling dimension name: " << status;
32 os << demangled_name.get();
38void print_single_dim_name(
40 char const*
const dim,
41 DiscreteVectorElement
const size)
43 print_demangled_type_name(os, dim);
44 os <<
'(' << size <<
')';
49 char const*
const*
const dims,
50 DiscreteVectorElement
const*
const sizes,
56 print_single_dim_name(os, dims[0], sizes[0]);
57 for (std::size_t i = 1; i < n; ++i) {
59 print_single_dim_name(os, dims[i], sizes[i]);
The top-level namespace of DDC.