LibWeb: Use interface_name instead of serialize_type virtual
`interface_name` is implemented for every platform object, so we no longer need this boilerplate for every serializable platform object.
This commit is contained in:
parent
4d64f21fa5
commit
6a9cd0e8e0
17 changed files with 1 additions and 24 deletions
|
|
@ -17,8 +17,6 @@ class Serializable {
|
|||
public:
|
||||
virtual ~Serializable() = default;
|
||||
|
||||
virtual InterfaceName serialize_type() const = 0;
|
||||
|
||||
// https://html.spec.whatwg.org/multipage/structured-data.html#serialization-steps
|
||||
virtual WebIDL::ExceptionOr<void> serialization_steps(HTML::TransferDataEncoder&, bool for_storage, HTML::SerializationMemory&) = 0;
|
||||
|
||||
|
|
|
|||
|
|
@ -49,7 +49,6 @@ public:
|
|||
InternalKeyData const& handle() const { return m_key_data; }
|
||||
String algorithm_name() const;
|
||||
|
||||
virtual Bindings::InterfaceName serialize_type() const override { return Bindings::InterfaceName::CryptoKey; }
|
||||
virtual WebIDL::ExceptionOr<void> serialization_steps(HTML::TransferDataEncoder&, bool for_storage, HTML::SerializationMemory&) override;
|
||||
virtual WebIDL::ExceptionOr<void> deserialization_steps(HTML::TransferDataDecoder&, HTML::DeserializationMemory&) override;
|
||||
|
||||
|
|
|
|||
|
|
@ -59,8 +59,6 @@ public:
|
|||
|
||||
GC::Ref<Streams::ReadableStream> get_stream();
|
||||
|
||||
virtual Bindings::InterfaceName serialize_type() const override { return Bindings::InterfaceName::Blob; }
|
||||
|
||||
virtual WebIDL::ExceptionOr<void> serialization_steps(HTML::TransferDataEncoder&, bool for_storage, HTML::SerializationMemory&) override;
|
||||
virtual WebIDL::ExceptionOr<void> deserialization_steps(HTML::TransferDataDecoder&, HTML::DeserializationMemory&) override;
|
||||
|
||||
|
|
|
|||
|
|
@ -30,8 +30,6 @@ public:
|
|||
// https://w3c.github.io/FileAPI/#dfn-lastModified
|
||||
i64 last_modified() const { return m_last_modified; }
|
||||
|
||||
virtual Bindings::InterfaceName serialize_type() const override { return Bindings::InterfaceName::File; }
|
||||
|
||||
virtual WebIDL::ExceptionOr<void> serialization_steps(HTML::TransferDataEncoder&, bool for_storage, HTML::SerializationMemory&) override;
|
||||
virtual WebIDL::ExceptionOr<void> deserialization_steps(HTML::TransferDataDecoder&, HTML::DeserializationMemory&) override;
|
||||
|
||||
|
|
|
|||
|
|
@ -46,7 +46,6 @@ public:
|
|||
|
||||
virtual Optional<JS::Value> item_value(size_t index) const override;
|
||||
|
||||
virtual Bindings::InterfaceName serialize_type() const override { return Bindings::InterfaceName::FileList; }
|
||||
virtual WebIDL::ExceptionOr<void> serialization_steps(HTML::TransferDataEncoder&, bool for_storage, HTML::SerializationMemory&) override;
|
||||
virtual WebIDL::ExceptionOr<void> deserialization_steps(HTML::TransferDataDecoder&, HTML::DeserializationMemory&) override;
|
||||
|
||||
|
|
|
|||
|
|
@ -70,8 +70,6 @@ public:
|
|||
|
||||
WebIDL::ExceptionOr<GC::Ref<DOMMatrix>> set_matrix_value(String const& transform_list);
|
||||
|
||||
virtual Bindings::InterfaceName serialize_type() const override { return Bindings::InterfaceName::DOMMatrix; }
|
||||
|
||||
private:
|
||||
DOMMatrix(JS::Realm&, double m11, double m12, double m21, double m22, double m41, double m42);
|
||||
DOMMatrix(JS::Realm&, double m11, double m12, double m13, double m14, double m21, double m22, double m23, double m24, double m31, double m32, double m33, double m34, double m41, double m42, double m43, double m44);
|
||||
|
|
|
|||
|
|
@ -115,7 +115,6 @@ public:
|
|||
|
||||
WebIDL::ExceptionOr<String> to_string() const;
|
||||
|
||||
virtual Bindings::InterfaceName serialize_type() const override { return Bindings::InterfaceName::DOMMatrixReadOnly; }
|
||||
virtual WebIDL::ExceptionOr<void> serialization_steps(HTML::TransferDataEncoder&, bool for_storage, HTML::SerializationMemory&) override;
|
||||
virtual WebIDL::ExceptionOr<void> deserialization_steps(HTML::TransferDataDecoder&, HTML::DeserializationMemory&) override;
|
||||
|
||||
|
|
|
|||
|
|
@ -35,8 +35,6 @@ public:
|
|||
void set_z(double z) { m_z = z; }
|
||||
void set_w(double w) { m_w = w; }
|
||||
|
||||
virtual Bindings::InterfaceName serialize_type() const override { return Bindings::InterfaceName::DOMPoint; }
|
||||
|
||||
private:
|
||||
DOMPoint(JS::Realm&, double x, double y, double z, double w);
|
||||
DOMPoint(JS::Realm&);
|
||||
|
|
|
|||
|
|
@ -44,7 +44,6 @@ public:
|
|||
|
||||
WebIDL::ExceptionOr<GC::Ref<DOMPoint>> matrix_transform(DOMMatrixInit&) const;
|
||||
|
||||
virtual Bindings::InterfaceName serialize_type() const override { return Bindings::InterfaceName::DOMPointReadOnly; }
|
||||
virtual WebIDL::ExceptionOr<void> serialization_steps(HTML::TransferDataEncoder&, bool for_storage, HTML::SerializationMemory&) override;
|
||||
virtual WebIDL::ExceptionOr<void> deserialization_steps(HTML::TransferDataDecoder&, HTML::DeserializationMemory&) override;
|
||||
|
||||
|
|
|
|||
|
|
@ -44,7 +44,6 @@ public:
|
|||
|
||||
GC::Ref<DOMRect> get_bounds() const;
|
||||
|
||||
virtual Bindings::InterfaceName serialize_type() const override { return Bindings::InterfaceName::DOMQuad; }
|
||||
virtual WebIDL::ExceptionOr<void> serialization_steps(HTML::TransferDataEncoder&, bool for_storage, HTML::SerializationMemory&) override;
|
||||
virtual WebIDL::ExceptionOr<void> deserialization_steps(HTML::TransferDataDecoder&, HTML::DeserializationMemory&) override;
|
||||
|
||||
|
|
|
|||
|
|
@ -33,8 +33,6 @@ public:
|
|||
void set_width(double width) { m_rect.set_width(width); }
|
||||
void set_height(double height) { m_rect.set_height(height); }
|
||||
|
||||
virtual Bindings::InterfaceName serialize_type() const override { return Bindings::InterfaceName::DOMRect; }
|
||||
|
||||
private:
|
||||
DOMRect(JS::Realm&, double x, double y, double width, double height);
|
||||
explicit DOMRect(JS::Realm&);
|
||||
|
|
|
|||
|
|
@ -69,7 +69,6 @@ public:
|
|||
return min(x(), x() + width());
|
||||
}
|
||||
|
||||
virtual Bindings::InterfaceName serialize_type() const override { return Bindings::InterfaceName::DOMRectReadOnly; }
|
||||
virtual WebIDL::ExceptionOr<void> serialization_steps(HTML::TransferDataEncoder&, bool for_storage, HTML::SerializationMemory&) override;
|
||||
virtual WebIDL::ExceptionOr<void> deserialization_steps(HTML::TransferDataDecoder&, HTML::DeserializationMemory&) override;
|
||||
|
||||
|
|
|
|||
|
|
@ -38,7 +38,6 @@ public:
|
|||
virtual ~ImageBitmap() override;
|
||||
|
||||
// ^Web::Bindings::Serializable
|
||||
virtual Bindings::InterfaceName serialize_type() const override { return Bindings::InterfaceName::ImageBitmap; }
|
||||
virtual WebIDL::ExceptionOr<void> serialization_steps(HTML::TransferDataEncoder&, bool for_storage, HTML::SerializationMemory&) override;
|
||||
virtual WebIDL::ExceptionOr<void> deserialization_steps(HTML::TransferDataDecoder&, HTML::DeserializationMemory&) override;
|
||||
|
||||
|
|
|
|||
|
|
@ -46,7 +46,6 @@ public:
|
|||
|
||||
Bindings::PredefinedColorSpace color_space() const { return m_color_space; }
|
||||
|
||||
virtual Bindings::InterfaceName serialize_type() const override { return Bindings::InterfaceName::ImageData; }
|
||||
virtual WebIDL::ExceptionOr<void> serialization_steps(HTML::TransferDataEncoder&, bool for_storage, HTML::SerializationMemory&) override;
|
||||
virtual WebIDL::ExceptionOr<void> deserialization_steps(HTML::TransferDataDecoder&, HTML::DeserializationMemory&) override;
|
||||
|
||||
|
|
|
|||
|
|
@ -444,7 +444,7 @@ public:
|
|||
// 2. Let typeString be the identifier of the primary interface of value.
|
||||
// 3. Set serialized to { [[Type]]: typeString }.
|
||||
serialized.encode(ValueTag::SerializableObject);
|
||||
serialized.encode(serializable->serialize_type());
|
||||
serialized.encode(as<Bindings::PlatformObject>(serializable)->interface_name());
|
||||
|
||||
// 4. Set deep to true
|
||||
deep = true;
|
||||
|
|
|
|||
|
|
@ -112,8 +112,6 @@ public:
|
|||
Utf16FlyString const& message() const { return m_message; }
|
||||
u16 code() const { return get_legacy_code_for_name(m_name); }
|
||||
|
||||
virtual Bindings::InterfaceName serialize_type() const override { return Bindings::InterfaceName::DOMException; }
|
||||
|
||||
virtual WebIDL::ExceptionOr<void> serialization_steps(HTML::TransferDataEncoder&, bool for_storage, HTML::SerializationMemory&) override;
|
||||
virtual WebIDL::ExceptionOr<void> deserialization_steps(HTML::TransferDataDecoder&, HTML::DeserializationMemory&) override;
|
||||
|
||||
|
|
|
|||
|
|
@ -27,7 +27,6 @@ public:
|
|||
|
||||
static ExceptionOr<GC::Ref<QuotaExceededError>> construct_impl(JS::Realm&, Utf16String const& message = {}, QuotaExceededErrorOptions const& options = {});
|
||||
|
||||
virtual Bindings::InterfaceName serialize_type() const override { return Bindings::InterfaceName::QuotaExceededError; }
|
||||
virtual WebIDL::ExceptionOr<void> serialization_steps(HTML::TransferDataEncoder&, bool for_storage, HTML::SerializationMemory&) override;
|
||||
virtual WebIDL::ExceptionOr<void> deserialization_steps(HTML::TransferDataDecoder&, HTML::DeserializationMemory&) override;
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue