diff --git a/includes/hex/dec.pat b/includes/hex/dec.pat new file mode 100644 index 0000000..ba33fb3 --- /dev/null +++ b/includes/hex/dec.pat @@ -0,0 +1,11 @@ +#pragma once + +#include + +namespace hex::dec { + + fn demangle(str mangled_name) { + return builtin::hex::dec::demangle(mangled_name); + }; + +} \ No newline at end of file diff --git a/includes/hex/type/mangled.pat b/includes/hex/type/mangled.pat new file mode 100644 index 0000000..9d986fc --- /dev/null +++ b/includes/hex/type/mangled.pat @@ -0,0 +1,23 @@ +#pragma once + +#include +#include + +#include +#include + +namespace hex::type { + + struct MangledName { + char value[]; + } [[sealed, format("format_mangled_name")]]; + + namespace impl { + + fn format_mangled_name(ref MangledName name) { + return hex::dec::demangle(name.value); + }; + } + +} +