hyperion::source_location#
- group source_location
Hyperion provides an alternative implementation of
std::source_location
ashyperion::source_location
, for users whose target standard library implementation doesn’t yet supportstd::source_location
(or their implementation still has bugs), and re-exportsstd::source_location
under the hyperion namespace for those that do support it (bug-free).It also provides a libfmt format specialization for
hyperion::source_location
(either source of implementation), formatting in the way typically found in assertions (i.e.[file_name|line_number:column_number]: function_name
)-
class source_location#
- #include <hyperion/source_location.h>
Stand-in, standard-compliant implementation of
std::source_location
, for those standard library implementations that don’t yet have a bug-free implementation.Requires that the compiler level support for the pre-requisite intrinsics exists:
__builtin_FILE()
or__builtin_FILE_NAME()
__builtin_FUNCSIG()
or__builtin_FUNCTION()
__builtin_LINE()
If
__builtin_COLUMN()
is not supported, column number will be reported as0
-
template<>
struct formatter<hyperion::source_location># - #include <hyperion/source_location.h>
libfmt format specialization for
hyperion::source_location
-
class source_location#