#include "third_party/blink/renderer/core/timing/performance_resource_timing.h"
#include "base/notreached.h"
#include "services/network/public/mojom/service_worker_router_info.mojom-blink-forward.h"
#include "third_party/blink/public/mojom/fetch/fetch_api_request.mojom-blink.h"
#include "third_party/blink/public/mojom/timing/performance_mark_or_measure.mojom-blink.h"
#include "third_party/blink/public/mojom/timing/resource_timing.mojom-blink-forward.h"
#include "third_party/blink/renderer/bindings/core/v8/idl_types.h"
#include "third_party/blink/renderer/bindings/core/v8/to_v8_traits.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_object_builder.h"
#include "third_party/blink/renderer/core/frame/local_dom_window.h"
#include "third_party/blink/renderer/core/loader/document_loader.h"
#include "third_party/blink/renderer/core/performance_entry_names.h"
#include "third_party/blink/renderer/core/timing/performance.h"
#include "third_party/blink/renderer/core/timing/performance_entry.h"
#include "third_party/blink/renderer/core/timing/performance_mark.h"
#include "third_party/blink/renderer/core/timing/performance_measure.h"
#include "third_party/blink/renderer/core/timing/performance_server_timing.h"
#include "third_party/blink/renderer/platform/bindings/exception_state.h"
#include "third_party/blink/renderer/platform/loader/fetch/delivery_type_names.h"
#include "third_party/blink/renderer/platform/loader/fetch/fetch_initiator_type_names.h"
#include "third_party/blink/renderer/platform/loader/fetch/resource_load_timing.h"
#include "third_party/blink/renderer/platform/loader/fetch/resource_request.h"
#include "third_party/blink/renderer/platform/loader/fetch/resource_response.h"
#include "third_party/blink/renderer/platform/loader/fetch/resource_timing_utils.h"
#include "third_party/blink/renderer/platform/loader/fetch/service_worker_router_info.h"
#include "third_party/blink/renderer/platform/runtime_enabled_features.h"
#include "third_party/blink/renderer/platform/scheduler/public/thread_scheduler.h"
#include "third_party/blink/renderer/platform/wtf/text/atomic_string.h"
#include "third_party/blink/renderer/platform/wtf/text/wtf_string.h"
namespace blink {
NavigationDeliveryType;
PerformanceResourceTiming::PerformanceResourceTiming(
mojom::blink::ResourceTimingInfoPtr info,
const AtomicString& initiator_type,
base::TimeTicks time_origin,
bool cross_origin_isolated_capability,
ExecutionContext* context)
: … { … }
PerformanceResourceTiming::~PerformanceResourceTiming() = default;
const AtomicString& PerformanceResourceTiming::entryType() const { … }
PerformanceEntryType PerformanceResourceTiming::EntryTypeEnum() const { … }
uint64_t PerformanceResourceTiming::GetTransferSize(
uint64_t encoded_body_size,
mojom::blink::CacheState cache_state) { … }
AtomicString PerformanceResourceTiming::GetDeliveryType() const { … }
AtomicString PerformanceResourceTiming::deliveryType() const { … }
AtomicString PerformanceResourceTiming::renderBlockingStatus() const { … }
AtomicString PerformanceResourceTiming::contentType() const { … }
uint16_t PerformanceResourceTiming::responseStatus() const { … }
AtomicString PerformanceResourceTiming::GetNextHopProtocol(
const AtomicString& alpn_negotiated_protocol,
const AtomicString& connection_info) const { … }
AtomicString PerformanceResourceTiming::nextHopProtocol() const { … }
DOMHighResTimeStamp PerformanceResourceTiming::workerStart() const { … }
DOMHighResTimeStamp PerformanceResourceTiming::workerRouterEvaluationStart()
const { … }
DOMHighResTimeStamp PerformanceResourceTiming::workerCacheLookupStart() const { … }
AtomicString PerformanceResourceTiming::matchedSourceType() const { … }
AtomicString PerformanceResourceTiming::finalSourceType() const { … }
DOMHighResTimeStamp PerformanceResourceTiming::WorkerReady() const { … }
DOMHighResTimeStamp PerformanceResourceTiming::redirectStart() const { … }
DOMHighResTimeStamp PerformanceResourceTiming::redirectEnd() const { … }
DOMHighResTimeStamp PerformanceResourceTiming::fetchStart() const { … }
DOMHighResTimeStamp PerformanceResourceTiming::domainLookupStart() const { … }
DOMHighResTimeStamp PerformanceResourceTiming::domainLookupEnd() const { … }
DOMHighResTimeStamp PerformanceResourceTiming::connectStart() const { … }
DOMHighResTimeStamp PerformanceResourceTiming::connectEnd() const { … }
DOMHighResTimeStamp PerformanceResourceTiming::secureConnectionStart() const { … }
DOMHighResTimeStamp PerformanceResourceTiming::requestStart() const { … }
DOMHighResTimeStamp PerformanceResourceTiming::firstInterimResponseStart()
const { … }
DOMHighResTimeStamp PerformanceResourceTiming::responseStart() const { … }
DOMHighResTimeStamp PerformanceResourceTiming::GetAnyFirstResponseStart()
const { … }
DOMHighResTimeStamp PerformanceResourceTiming::responseEnd() const { … }
uint64_t PerformanceResourceTiming::transferSize() const { … }
uint64_t PerformanceResourceTiming::encodedBodySize() const { … }
uint64_t PerformanceResourceTiming::decodedBodySize() const { … }
const HeapVector<Member<PerformanceServerTiming>>&
PerformanceResourceTiming::serverTiming() const { … }
void PerformanceResourceTiming::BuildJSONValue(V8ObjectBuilder& builder) const { … }
void PerformanceResourceTiming::Trace(Visitor* visitor) const { … }
}