12#ifndef REPR_DEMANGLE_MAX
13# define REPR_DEMANGLE_MAX 1024UL
87 LIBREPR_ASSERT((buffer.data() ==
ret),
"__unDName output address did not match input buffer address.");
91using msvc::UndStrategy;
#define LIBREPR_ASSERT(cond,...)
Checked assertion, for constraint enforcement.
Definition assert.h:67
#define LIBREPR_FORCE_INLINE
Definition macro/util.h:52
UndHandle unDName(const char *name, UndStrategy::Type flags)
Returns a managed handle to the demangled buffer.
Definition undname.h:80
void *(__cdecl *)(unsigned int) UndAlloc
Definition undname.h:22
char *__cdecl __unDName(char *buffer, const char *name, int buffer_size, UndAlloc allocator, UndFree _free, UndStrategy::Type flags)
void *__cdecl malloc_bridge(unsigned int size)
Definition undname.h:61
std::unique_ptr< char[], UndFreeFunctor > UndHandle
Definition undname.h:59
void(__cdecl *)(void *) UndFree
Definition undname.h:23
LIBREPR_FORCE_INLINE char * _unDName(const char *name, char *buffer, std::size_t buffer_size, UndStrategy::Type flags)
Bridge for invoking __unDName.
Definition undname.h:72
std::string code_for()
Definition repr:39
void operator()(char *str) const noexcept
Definition undname.h:55
Flags for the method of undecoration.
Definition undname.h:27
decltype(Complete) type
Definition undname.h:51
@ TypeOnly
Definition undname.h:44
@ NoMemberType
Definition undname.h:40
@ HaveParameters
Definition undname.h:45
@ NoThrowSignatures
Definition undname.h:39
@ NoReturnUDTModel
Definition undname.h:41
@ Complete
Definition undname.h:29
@ NoMSThisType
Definition undname.h:35
@ NoECSU
Definition undname.h:46
@ NoAllocationLanguage
Definition undname.h:34
@ NoCVThisType
Definition undname.h:36
@ NoIdentCharCheck
Definition undname.h:47
@ NoAccessSpecifiers
Definition undname.h:38
@ NameOnly
Definition undname.h:43
@ NoMsKeywords
Definition undname.h:31
@ NoFunctionReturns
Definition undname.h:32
@ NoLeadingUnderscores
Definition undname.h:30
@ Decode32Bit
Definition undname.h:42
@ NoAllocationModel
Definition undname.h:33
@ NoThisType
Definition undname.h:37
decltype(Complete) Type
Definition undname.h:50