/* * Copyright (c) 2022, Andreas Kling * * SPDX-License-Identifier: BSD-2-Clause */ #include #include #include #include namespace Web::DOM { AbstractRange::AbstractRange(Node& start_container, WebIDL::UnsignedLong start_offset, 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); } }