Ladybird+LibWeb: Add optional IDL call tracing

When launched with the new --enable-idl-tracing option, we now log
every call to web platform APIs declared via IDL, along with the
arguments passed.

This can be very helpful when trying to figure out what a site is
doing, especially if it's not doing what you'd expect.
This commit is contained in:
Andreas Kling 2024-04-16 14:39:57 +02:00
commit f4f4f7781d
Notes: sideshowbarker 2024-07-17 17:06:59 +09:00
8 changed files with 110 additions and 1 deletions

View file

@ -0,0 +1,22 @@
/*
* Copyright (c) 2024, Andreas Kling <kling@serenityos.org>
*
* SPDX-License-Identifier: BSD-2-Clause
*/
#pragma once
#include <LibJS/Forward.h>
namespace Web::WebIDL {
extern bool g_enable_idl_tracing;
inline void log_trace(JS::VM& vm, char const* function)
{
void log_trace_impl(JS::VM&, char const*);
if (g_enable_idl_tracing)
log_trace_impl(vm, function);
}
}