1234567891011121314151617181920212223242526272829303132333435363738 |
- /*
- * Copyright (c) 2022, Andreas Kling <andreas@ladybird.org>
- *
- * SPDX-License-Identifier: BSD-2-Clause
- */
- #include <LibWeb/Bindings/AbstractRangePrototype.h>
- #include <LibWeb/Bindings/Intrinsics.h>
- #include <LibWeb/DOM/AbstractRange.h>
- #include <LibWeb/DOM/Document.h>
- namespace Web::DOM {
- AbstractRange::AbstractRange(GC::Ref<Node> start_container, WebIDL::UnsignedLong start_offset, GC::Ref<Node> end_container, WebIDL::UnsignedLong end_offset)
- : Bindings::PlatformObject(start_container->realm())
- , m_start_container(start_container)
- , m_start_offset(start_offset)
- , m_end_container(end_container)
- , m_end_offset(end_offset)
- {
- }
- AbstractRange::~AbstractRange() = default;
- void AbstractRange::initialize(JS::Realm& realm)
- {
- Base::initialize(realm);
- WEB_SET_PROTOTYPE_FOR_INTERFACE(AbstractRange);
- }
- void AbstractRange::visit_edges(Cell::Visitor& visitor)
- {
- Base::visit_edges(visitor);
- visitor.visit(m_start_container);
- visitor.visit(m_end_container);
- }
- }
|