/* * Copyright (c) 2023, Jonah Shafran * * SPDX-License-Identifier: BSD-2-Clause */ #include #include #include #include namespace Web::MathML { JS_DEFINE_ALLOCATOR(MathMLElement); MathMLElement::~MathMLElement() = default; MathMLElement::MathMLElement(DOM::Document& document, DOM::QualifiedName qualified_name) : DOM::Element(document, move(qualified_name)) { } void MathMLElement::initialize(JS::Realm& realm) { Base::initialize(realm); WEB_SET_PROTOTYPE_FOR_INTERFACE(MathMLElement); } Optional MathMLElement::default_role() const { // https://www.w3.org/TR/html-aria/#el-math if (local_name() == TagNames::math) return ARIA::Role::math; return {}; } void MathMLElement::visit_edges(JS::Cell::Visitor& visitor) { Base::visit_edges(visitor); HTMLOrSVGElement::visit_edges(visitor); } }