Comment.h 749 B

1234567891011121314151617181920212223242526272829303132
  1. /*
  2. * Copyright (c) 2018-2020, Andreas Kling <kling@serenityos.org>
  3. *
  4. * SPDX-License-Identifier: BSD-2-Clause
  5. */
  6. #pragma once
  7. #include <LibWeb/DOM/CharacterData.h>
  8. namespace Web::DOM {
  9. class Comment final : public CharacterData {
  10. WEB_PLATFORM_OBJECT(Comment, CharacterData);
  11. JS_DECLARE_ALLOCATOR(Comment);
  12. public:
  13. static WebIDL::ExceptionOr<JS::NonnullGCPtr<Comment>> construct_impl(JS::Realm&, String const& data);
  14. virtual ~Comment() override = default;
  15. virtual FlyString node_name() const override { return "#comment"_fly_string; }
  16. private:
  17. Comment(Document&, String const&);
  18. virtual void initialize(JS::Realm&) override;
  19. };
  20. template<>
  21. inline bool Node::fast_is<Comment>() const { return is_comment(); }
  22. }