LibCore: Add formatter for Object.

This commit is contained in:
asynts 2020-10-15 21:07:36 +02:00 committed by Andreas Kling
parent 235622dc7f
commit 56cf272ed5
Notes: sideshowbarker 2024-07-19 01:52:26 +09:00
2 changed files with 16 additions and 0 deletions

View file

@ -264,3 +264,12 @@ const LogStream& operator<<(const LogStream& stream, const Object& object)
}
}
namespace AK {
void Formatter<Core::Object>::format(TypeErasedFormatParams& params, FormatBuilder& builder, const Core::Object& value)
{
Formatter<StringView>::format(params, builder, String::formatted("{}({})", value.class_name(), &value));
}
}

View file

@ -170,6 +170,13 @@ private:
}
namespace AK {
template<>
struct Formatter<Core::Object> : Formatter<StringView> {
void format(TypeErasedFormatParams&, FormatBuilder&, const Core::Object&);
};
}
namespace Core {
template<typename T, typename Callback>
inline void Object::for_each_child_of_type(Callback callback)