diff --git a/Libraries/LibGUI/TextPosition.h b/Libraries/LibGUI/TextPosition.h index c633d138f2..53732abc63 100644 --- a/Libraries/LibGUI/TextPosition.h +++ b/Libraries/LibGUI/TextPosition.h @@ -65,3 +65,18 @@ inline const LogStream& operator<<(const LogStream& stream, const TextPosition& } } + +namespace AK { + +template<> +struct Formatter : Formatter { + void format(TypeErasedFormatParams& params, FormatBuilder& builder, const GUI::TextPosition& value) + { + if (value.is_valid()) + Formatter::format(params, builder, String::formatted("({},{})", value.line(), value.column())); + else + Formatter::format(params, builder, "GUI::TextPosition(Invalid)"); + } +}; + +} diff --git a/Libraries/LibGUI/TextRange.h b/Libraries/LibGUI/TextRange.h index 94a05230f1..4f62273e89 100644 --- a/Libraries/LibGUI/TextRange.h +++ b/Libraries/LibGUI/TextRange.h @@ -93,3 +93,18 @@ inline const LogStream& operator<<(const LogStream& stream, const TextRange& val } } + +namespace AK { + +template<> +struct Formatter : Formatter { + void format(TypeErasedFormatParams& params, FormatBuilder& builder, const GUI::TextRange& value) + { + if (value.is_valid()) + Formatter::format(params, builder, String::formatted("{}-{}", value.start(), value.end())); + else + Formatter::format(params, builder, "GUI::TextRange(Invalid)"); + } +}; + +}