ladybird/Userland/Libraries/LibWeb/DOM/RadioNodeList.h
Shannon Booth 1defc4595b LibWeb: Make LiveNodeList store a NonnullGCPtr<Node const> root
This allows us to improve the const-correctness in RadioNodeList, which
has been made possible as of: 5f0ccfb499 now that a GC-visit accepts a
const GC pointer.
2023-12-23 20:53:11 +01:00

34 lines
868 B
C++

/*
* Copyright (c) 2023, Shannon Booth <shannon@serenityos.org>
*
* SPDX-License-Identifier: BSD-2-Clause
*/
#pragma once
#include <LibWeb/DOM/LiveNodeList.h>
namespace Web::DOM {
// https://html.spec.whatwg.org/multipage/common-dom-interfaces.html#radionodelist
class RadioNodeList : public LiveNodeList {
WEB_PLATFORM_OBJECT(RadioNodeList, LiveNodeList);
JS_DECLARE_ALLOCATOR(RadioNodeList);
public:
[[nodiscard]] static JS::NonnullGCPtr<RadioNodeList> create(JS::Realm& realm, Node const& root, Scope scope, Function<bool(Node const&)> filter);
virtual ~RadioNodeList() override;
FlyString value() const;
void set_value(FlyString const&);
protected:
virtual void initialize(JS::Realm&) override;
private:
explicit RadioNodeList(JS::Realm& realm, Node const& root, Scope scope, Function<bool(Node const&)> filter);
};
}