1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 18:38:10 +00:00

LibWeb: Introduce Performance Timeline and its Performance functions

This commit is contained in:
Luke Wilde 2023-03-22 19:12:57 +00:00 committed by Linus Groh
parent 4c3f1481ea
commit 31b507afbf
16 changed files with 381 additions and 1 deletions

View file

@ -0,0 +1,31 @@
/*
* Copyright (c) 2023, Luke Wilde <lukew@serenityos.org>
*
* SPDX-License-Identifier: BSD-2-Clause
*/
#include <LibWeb/Bindings/Intrinsics.h>
#include <LibWeb/Bindings/PerformanceEntryPrototype.h>
#include <LibWeb/PerformanceTimeline/PerformanceEntry.h>
namespace Web::PerformanceTimeline {
PerformanceEntry::PerformanceEntry(JS::Realm& realm, String const& name, HighResolutionTime::DOMHighResTimeStamp start_time, HighResolutionTime::DOMHighResTimeStamp duration)
: Bindings::PlatformObject(realm)
, m_name(name)
, m_start_time(start_time)
, m_duration(duration)
{
}
PerformanceEntry::~PerformanceEntry() = default;
JS::ThrowCompletionOr<void> PerformanceEntry::initialize(JS::Realm& realm)
{
MUST_OR_THROW_OOM(Base::initialize(realm));
set_prototype(&Bindings::ensure_web_prototype<Bindings::PerformanceEntryPrototype>(realm, "PerformanceEntry"));
return {};
}
}