/* * Copyright (c) 2018-2021, Andreas Kling * * SPDX-License-Identifier: BSD-2-Clause */ #include #include #include #include #include #include namespace Gfx { template<> ByteString IntRect::to_byte_string() const { return ByteString::formatted("[{},{} {}x{}]", x(), y(), width(), height()); } template<> ByteString FloatRect::to_byte_string() const { return ByteString::formatted("[{},{} {}x{}]", x(), y(), width(), height()); } } namespace IPC { template<> ErrorOr encode(Encoder& encoder, Gfx::IntRect const& rect) { TRY(encoder.encode(rect.location())); TRY(encoder.encode(rect.size())); return {}; } template<> ErrorOr decode(Decoder& decoder) { auto point = TRY(decoder.decode()); auto size = TRY(decoder.decode()); return Gfx::IntRect { point, size }; } } template class Gfx::Rect; template class Gfx::Rect;