mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 06:27:45 +00:00
AK: Add dbg()
We have outln() and out(), warnln() and warn(), now we have dbgln() and dbg(). This is useful for printing arrays element-by-element while still only printing one line per array.
This commit is contained in:
parent
e3d182bfe2
commit
0c53b02149
2 changed files with 13 additions and 4 deletions
|
@ -906,7 +906,7 @@ void set_debug_enabled(bool value)
|
||||||
is_debug_enabled = value;
|
is_debug_enabled = value;
|
||||||
}
|
}
|
||||||
|
|
||||||
void vdbgln(StringView fmtstr, TypeErasedFormatParams& params)
|
void vdbg(StringView fmtstr, TypeErasedFormatParams& params, bool newline)
|
||||||
{
|
{
|
||||||
if (!is_debug_enabled)
|
if (!is_debug_enabled)
|
||||||
return;
|
return;
|
||||||
|
@ -946,6 +946,7 @@ void vdbgln(StringView fmtstr, TypeErasedFormatParams& params)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
MUST(vformat(builder, fmtstr, params));
|
MUST(vformat(builder, fmtstr, params));
|
||||||
|
if (newline)
|
||||||
builder.append('\n');
|
builder.append('\n');
|
||||||
|
|
||||||
auto const string = builder.string_view();
|
auto const string = builder.string_view();
|
||||||
|
|
12
AK/Format.h
12
AK/Format.h
|
@ -605,13 +605,20 @@ inline void warnln() { outln(stderr); }
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
void vdbgln(StringView fmtstr, TypeErasedFormatParams&);
|
void vdbg(StringView fmtstr, TypeErasedFormatParams&, bool newline = false);
|
||||||
|
|
||||||
|
template<typename... Parameters>
|
||||||
|
void dbg(CheckedFormatString<Parameters...>&& fmtstr, Parameters const&... parameters)
|
||||||
|
{
|
||||||
|
VariadicFormatParams<AllowDebugOnlyFormatters::Yes, Parameters...> variadic_format_params { parameters... };
|
||||||
|
vdbg(fmtstr.view(), variadic_format_params, false);
|
||||||
|
}
|
||||||
|
|
||||||
template<typename... Parameters>
|
template<typename... Parameters>
|
||||||
void dbgln(CheckedFormatString<Parameters...>&& fmtstr, Parameters const&... parameters)
|
void dbgln(CheckedFormatString<Parameters...>&& fmtstr, Parameters const&... parameters)
|
||||||
{
|
{
|
||||||
VariadicFormatParams<AllowDebugOnlyFormatters::Yes, Parameters...> variadic_format_params { parameters... };
|
VariadicFormatParams<AllowDebugOnlyFormatters::Yes, Parameters...> variadic_format_params { parameters... };
|
||||||
vdbgln(fmtstr.view(), variadic_format_params);
|
vdbg(fmtstr.view(), variadic_format_params, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
inline void dbgln() { dbgln(""); }
|
inline void dbgln() { dbgln(""); }
|
||||||
|
@ -739,6 +746,7 @@ using AK::warn;
|
||||||
using AK::warnln;
|
using AK::warnln;
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
|
using AK::dbg;
|
||||||
using AK::dbgln;
|
using AK::dbgln;
|
||||||
|
|
||||||
using AK::CheckedFormatString;
|
using AK::CheckedFormatString;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue