Files
ladybird/Libraries/LibWeb/Internals/InternalsBase.h
Shannon Booth 4d64f21fa5 LibWeb: Give IDL exposed PlatformObjects an InterfaceName
By making use of the WEB_PLATFORM_OBJECT macro we can remove
the boilerplate of needing to add this override for every
serializable platform object so that we can check whether they
are exposed or not.
2026-02-14 20:22:40 +01:00

30 lines
596 B
C++

/*
* Copyright (c) 2025, Tim Flynn <trflynn89@ladybird.org>
*
* SPDX-License-Identifier: BSD-2-Clause
*/
#pragma once
#include <LibWeb/Bindings/PlatformObject.h>
#include <LibWeb/Export.h>
#include <LibWeb/Forward.h>
namespace Web::Internals {
class WEB_API InternalsBase : public Bindings::PlatformObject {
WEB_NON_IDL_PLATFORM_OBJECT(InternalsBase, Bindings::PlatformObject);
GC_DECLARE_ALLOCATOR(InternalsBase);
public:
virtual ~InternalsBase() override;
protected:
explicit InternalsBase(JS::Realm&);
HTML::Window& window() const;
Page& page() const;
};
}