#include "third_party/blink/renderer/core/timing/performance_mark.h"
#include <optional>
#include "third_party/blink/public/mojom/timing/performance_mark_or_measure.mojom-blink.h"
#include "third_party/blink/renderer/bindings/core/v8/script_value.h"
#include "third_party/blink/renderer/bindings/core/v8/serialization/serialized_script_value.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_performance_mark_options.h"
#include "third_party/blink/renderer/core/frame/local_dom_window.h"
#include "third_party/blink/renderer/core/performance_entry_names.h"
#include "third_party/blink/renderer/core/timing/dom_window_performance.h"
#include "third_party/blink/renderer/core/timing/performance.h"
#include "third_party/blink/renderer/core/timing/worker_global_scope_performance.h"
#include "third_party/blink/renderer/core/workers/worker_global_scope.h"
#include "third_party/blink/renderer/platform/instrumentation/tracing/trace_event.h"
namespace blink {
PerformanceMark::PerformanceMark(
const AtomicString& name,
double start_time,
base::TimeTicks unsafe_time_for_traces,
scoped_refptr<SerializedScriptValue> serialized_detail,
ExceptionState& exception_state,
DOMWindow* source)
: … { … }
PerformanceMark* PerformanceMark::Create(ScriptState* script_state,
const AtomicString& mark_name,
PerformanceMarkOptions* mark_options,
ExceptionState& exception_state) { … }
const AtomicString& PerformanceMark::entryType() const { … }
PerformanceEntryType PerformanceMark::EntryTypeEnum() const { … }
mojom::blink::PerformanceMarkOrMeasurePtr
PerformanceMark::ToMojoPerformanceMarkOrMeasure() { … }
ScriptValue PerformanceMark::detail(ScriptState* script_state) { … }
const PerformanceMark::UserFeatureNameToWebFeatureMap&
PerformanceMark::GetUseCounterMapping() { … }
std::optional<mojom::blink::WebFeature>
PerformanceMark::GetWebFeatureForUserFeatureName(const String& feature_name) { … }
void PerformanceMark::Trace(Visitor* visitor) const { … }
}