Attribute.cpp 626 B

1234567891011121314151617181920212223242526
  1. /*
  2. * Copyright (c) 2023, Tim Flynn <trflynn89@serenityos.org>
  3. *
  4. * SPDX-License-Identifier: BSD-2-Clause
  5. */
  6. #include <LibIPC/Decoder.h>
  7. #include <LibIPC/Encoder.h>
  8. #include <LibWebView/Attribute.h>
  9. template<>
  10. ErrorOr<void> IPC::encode(Encoder& encoder, WebView::Attribute const& attribute)
  11. {
  12. TRY(encoder.encode(attribute.name));
  13. TRY(encoder.encode(attribute.value));
  14. return {};
  15. }
  16. template<>
  17. ErrorOr<WebView::Attribute> IPC::decode(Decoder& decoder)
  18. {
  19. auto name = TRY(decoder.decode<String>());
  20. auto value = TRY(decoder.decode<String>());
  21. return WebView::Attribute { move(name), move(value) };
  22. }