1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-26 03:27:45 +00:00

LibWeb: Streamline Node::enclosing_link_element() somewhat

No need to verify_cast repeatedly once we've confirmed the type.
This commit is contained in:
Andreas Kling 2022-03-02 15:15:39 +01:00
parent ad9f3f7ae6
commit 9888e29c14

View file

@ -81,8 +81,11 @@ Node::~Node()
const HTML::HTMLAnchorElement* Node::enclosing_link_element() const const HTML::HTMLAnchorElement* Node::enclosing_link_element() const
{ {
for (auto* node = this; node; node = node->parent()) { for (auto* node = this; node; node = node->parent()) {
if (is<HTML::HTMLAnchorElement>(*node) && verify_cast<HTML::HTMLAnchorElement>(*node).has_attribute(HTML::AttributeNames::href)) if (!is<HTML::HTMLAnchorElement>(*node))
return verify_cast<HTML::HTMLAnchorElement>(node); continue;
auto const& anchor_element = static_cast<HTML::HTMLAnchorElement const&>(*node);
if (anchor_element.has_attribute(HTML::AttributeNames::href))
return &anchor_element;
} }
return nullptr; return nullptr;
} }