#include "third_party/blink/renderer/core/html/html_link_element.h"
#include <utility>
#include "base/numerics/safe_conversions.h"
#include "third_party/blink/public/platform/task_type.h"
#include "third_party/blink/public/platform/web_icon_sizes_parser.h"
#include "third_party/blink/public/platform/web_prescient_networking.h"
#include "third_party/blink/renderer/core/core_initializer.h"
#include "third_party/blink/renderer/core/dom/attribute.h"
#include "third_party/blink/renderer/core/dom/document.h"
#include "third_party/blink/renderer/core/dom/events/event.h"
#include "third_party/blink/renderer/core/frame/frame_console.h"
#include "third_party/blink/renderer/core/frame/local_dom_window.h"
#include "third_party/blink/renderer/core/frame/local_frame_client.h"
#include "third_party/blink/renderer/core/html/cross_origin_attribute.h"
#include "third_party/blink/renderer/core/html/link_manifest.h"
#include "third_party/blink/renderer/core/html_names.h"
#include "third_party/blink/renderer/core/inspector/console_message.h"
#include "third_party/blink/renderer/core/loader/link_loader.h"
#include "third_party/blink/renderer/core/loader/render_blocking_resource_manager.h"
#include "third_party/blink/renderer/core/origin_trials/origin_trial_context.h"
#include "third_party/blink/renderer/platform/heap/garbage_collected.h"
#include "third_party/blink/renderer/platform/instrumentation/use_counter.h"
#include "third_party/blink/renderer/platform/weborigin/security_policy.h"
#include "third_party/blink/renderer/platform/wtf/functional.h"
namespace blink {
HTMLLinkElement::HTMLLinkElement(Document& document,
const CreateElementFlags flags)
: … { … }
HTMLLinkElement::~HTMLLinkElement() = default;
void HTMLLinkElement::ParseAttribute(
const AttributeModificationParams& params) { … }
bool HTMLLinkElement::ShouldLoadLink() { … }
bool HTMLLinkElement::IsLinkCreatedByParser() { … }
bool HTMLLinkElement::LoadLink(const LinkLoadParameters& params) { … }
void HTMLLinkElement::LoadStylesheet(const LinkLoadParameters& params,
const WTF::TextEncoding& charset,
FetchParameters::DeferOption defer_option,
ResourceClient* link_client,
RenderBlockingBehavior render_blocking) { … }
LinkResource* HTMLLinkElement::LinkResourceToProcess() { … }
LinkStyle* HTMLLinkElement::GetLinkStyle() const { … }
void HTMLLinkElement::Process(LinkLoadParameters::Reason reason) { … }
Node::InsertionNotificationRequest HTMLLinkElement::InsertedInto(
ContainerNode& insertion_point) { … }
void HTMLLinkElement::RemovedFrom(ContainerNode& insertion_point) { … }
void HTMLLinkElement::FinishParsingChildren() { … }
bool HTMLLinkElement::HasActivationBehavior() const { … }
bool HTMLLinkElement::StyleSheetIsLoading() const { … }
void HTMLLinkElement::LinkLoaded() { … }
void HTMLLinkElement::LinkLoadingErrored() { … }
bool HTMLLinkElement::SheetLoaded() { … }
void HTMLLinkElement::NotifyLoadedSheetAndAllCriticalSubresources(
LoadedSheetErrorStatus error_status) { … }
void HTMLLinkElement::DispatchPendingEvent(
std::unique_ptr<IncrementLoadEventDelayCount> count) { … }
void HTMLLinkElement::ScheduleEvent() { … }
void HTMLLinkElement::SetToPendingState() { … }
bool HTMLLinkElement::IsPotentiallyRenderBlocking() const { … }
bool HTMLLinkElement::IsURLAttribute(const Attribute& attribute) const { … }
bool HTMLLinkElement::HasLegalLinkAttribute(const QualifiedName& name) const { … }
KURL HTMLLinkElement::Href() const { … }
const AtomicString& HTMLLinkElement::Rel() const { … }
const AtomicString& HTMLLinkElement::GetType() const { … }
bool HTMLLinkElement::Async() const { … }
mojom::blink::FaviconIconType HTMLLinkElement::GetIconType() const { … }
const Vector<gfx::Size>& HTMLLinkElement::IconSizes() const { … }
DOMTokenList* HTMLLinkElement::sizes() const { … }
void HTMLLinkElement::Trace(Visitor* visitor) const { … }
void HTMLLinkElement::HandleExpectBlockingChanges() { … }
void HTMLLinkElement::HandleExpectHrefChanges(const String& old_value,
const String& new_value) { … }
bool HTMLLinkElement::MediaQueryMatches() const { … }
void HTMLLinkElement::HandleExpectMediaChanges() { … }
void HTMLLinkElement::RemoveExpectRenderBlockingLink(const String& href) { … }
AtomicString HTMLLinkElement::ParseSameDocumentIdFromHref(const String& href) { … }
void HTMLLinkElement::AddExpectRenderBlockingLinkIfNeeded(
const String& href,
bool media_known_to_match) { … }
}