14 static constexpr size_t FileCapacity = 260;
15 static constexpr size_t FunctionCapacity = 128;
16 static constexpr size_t FuncsigCapacity = 256;
24 static consteval SourceLocation current(
25 char const* file = LL_CURRENT_FILE,
26 char const* function = LL_CURRENT_FUNCTION,
27 char const* funcsig = LL_CURRENT_FUNCSIG,
28 int line = LL_CURRENT_LINE,
29 int column = LL_CURRENT_COLUMN
31 return {file, function, funcsig, line, column};
34 static consteval SourceLocation unknown()
noexcept {
return {
"",
"",
"", 0, 0}; }
36 consteval SourceLocation(
char const* file,
char const* function,
char const* funcsig,
int line,
int column) noexcept
43 [[nodiscard]]
char const* file()
const noexcept {
return mFile.c_str(); }
44 [[nodiscard]]
char const* function()
const noexcept {
return mFunction.c_str(); }
45 [[nodiscard]]
char const* funcsig()
const noexcept {
return mFuncsig.c_str(); }
46 [[nodiscard]]
int line()
const noexcept {
return mLine; }
47 [[nodiscard]]
int column()
const noexcept {
return mColumn; }
49 [[nodiscard]] std::string toString()
const {
50 return fmt::format(
"{} at {}({}:{})", mFunction.sv(), mFile.sv(), mLine, mColumn);