mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2024-09-20 09:49:15 +03:00
a8391d5a60
These instances were detected by searching for files that include Array.h, but don't match the regex: \\b(Array(?!\.h>)|iota_array|integer_sequence_generate_array)\\b These are the three symbols defined by Array.h. In theory, one might use LibCPP to detect things like this automatically, but let's do this one step after another.
30 lines
754 B
C++
30 lines
754 B
C++
/*
|
|
* Copyright (c) 2022, Tobias Christiansen <tobyase@serenityos.org>
|
|
* Copyright (c) 2022, Tim Flynn <trflynn89@serenityos.org>
|
|
*
|
|
* SPDX-License-Identifier: BSD-2-Clause
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include <LibJS/Heap/GCPtr.h>
|
|
#include <LibWeb/DOM/NodeList.h>
|
|
#include <LibWeb/Forward.h>
|
|
#include <LibWeb/WebDriver/Error.h>
|
|
|
|
namespace Web::WebDriver {
|
|
|
|
// https://w3c.github.io/webdriver/#dfn-table-of-location-strategies
|
|
enum class LocationStrategy {
|
|
CssSelector,
|
|
LinkText,
|
|
PartialLinkText,
|
|
TagName,
|
|
XPath,
|
|
};
|
|
|
|
Optional<LocationStrategy> location_strategy_from_string(StringView type);
|
|
ErrorOr<JS::NonnullGCPtr<DOM::NodeList>, Error> invoke_location_strategy(LocationStrategy type, DOM::ParentNode& start_node, StringView selector);
|
|
|
|
}
|