diff options
Diffstat (limited to 'deps/v8/src/inspector/v8-console.h')
-rw-r--r-- | deps/v8/src/inspector/v8-console.h | 57 |
1 files changed, 32 insertions, 25 deletions
diff --git a/deps/v8/src/inspector/v8-console.h b/deps/v8/src/inspector/v8-console.h index 0b833b3c94..e31133c4e1 100644 --- a/deps/v8/src/inspector/v8-console.h +++ b/deps/v8/src/inspector/v8-console.h @@ -8,6 +8,7 @@ #include "src/base/macros.h" #include "include/v8.h" +#include "src/debug/interface-types.h" namespace v8_inspector { @@ -16,9 +17,8 @@ class V8InspectorImpl; // Console API // https://console.spec.whatwg.org/#console-interface -class V8Console { +class V8Console : public v8::debug::ConsoleDelegate { public: - v8::Local<v8::Object> createConsole(v8::Local<v8::Context> context); v8::Local<v8::Object> createCommandLineAPI(v8::Local<v8::Context> context); void installMemoryGetter(v8::Local<v8::Context> context, v8::Local<v8::Object> console); @@ -49,29 +49,29 @@ class V8Console { explicit V8Console(V8InspectorImpl* inspector); private: - void debugCallback(const v8::FunctionCallbackInfo<v8::Value>&); - void errorCallback(const v8::FunctionCallbackInfo<v8::Value>&); - void infoCallback(const v8::FunctionCallbackInfo<v8::Value>&); - void logCallback(const v8::FunctionCallbackInfo<v8::Value>&); - void warnCallback(const v8::FunctionCallbackInfo<v8::Value>&); - void dirCallback(const v8::FunctionCallbackInfo<v8::Value>&); - void dirxmlCallback(const v8::FunctionCallbackInfo<v8::Value>&); - void tableCallback(const v8::FunctionCallbackInfo<v8::Value>&); - void traceCallback(const v8::FunctionCallbackInfo<v8::Value>&); - void groupCallback(const v8::FunctionCallbackInfo<v8::Value>&); - void groupCollapsedCallback(const v8::FunctionCallbackInfo<v8::Value>&); - void groupEndCallback(const v8::FunctionCallbackInfo<v8::Value>&); - void clearCallback(const v8::FunctionCallbackInfo<v8::Value>&); - void countCallback(const v8::FunctionCallbackInfo<v8::Value>&); - void assertCallback(const v8::FunctionCallbackInfo<v8::Value>&); - void markTimelineCallback(const v8::FunctionCallbackInfo<v8::Value>&); - void profileCallback(const v8::FunctionCallbackInfo<v8::Value>&); - void profileEndCallback(const v8::FunctionCallbackInfo<v8::Value>&); - void timelineCallback(const v8::FunctionCallbackInfo<v8::Value>&); - void timelineEndCallback(const v8::FunctionCallbackInfo<v8::Value>&); - void timeCallback(const v8::FunctionCallbackInfo<v8::Value>&); - void timeEndCallback(const v8::FunctionCallbackInfo<v8::Value>&); - void timeStampCallback(const v8::FunctionCallbackInfo<v8::Value>&); + void Debug(const v8::debug::ConsoleCallArguments&) override; + void Error(const v8::debug::ConsoleCallArguments&) override; + void Info(const v8::debug::ConsoleCallArguments&) override; + void Log(const v8::debug::ConsoleCallArguments&) override; + void Warn(const v8::debug::ConsoleCallArguments&) override; + void Dir(const v8::debug::ConsoleCallArguments&) override; + void DirXml(const v8::debug::ConsoleCallArguments&) override; + void Table(const v8::debug::ConsoleCallArguments&) override; + void Trace(const v8::debug::ConsoleCallArguments&) override; + void Group(const v8::debug::ConsoleCallArguments&) override; + void GroupCollapsed(const v8::debug::ConsoleCallArguments&) override; + void GroupEnd(const v8::debug::ConsoleCallArguments&) override; + void Clear(const v8::debug::ConsoleCallArguments&) override; + void Count(const v8::debug::ConsoleCallArguments&) override; + void Assert(const v8::debug::ConsoleCallArguments&) override; + void MarkTimeline(const v8::debug::ConsoleCallArguments&) override; + void Profile(const v8::debug::ConsoleCallArguments&) override; + void ProfileEnd(const v8::debug::ConsoleCallArguments&) override; + void Timeline(const v8::debug::ConsoleCallArguments&) override; + void TimelineEnd(const v8::debug::ConsoleCallArguments&) override; + void Time(const v8::debug::ConsoleCallArguments&) override; + void TimeEnd(const v8::debug::ConsoleCallArguments&) override; + void TimeStamp(const v8::debug::ConsoleCallArguments&) override; template <void (V8Console::*func)(const v8::FunctionCallbackInfo<v8::Value>&)> static void call(const v8::FunctionCallbackInfo<v8::Value>& info) { @@ -79,6 +79,13 @@ class V8Console { static_cast<V8Console*>(info.Data().As<v8::External>()->Value()); (console->*func)(info); } + template <void (V8Console::*func)(const v8::debug::ConsoleCallArguments&)> + static void call(const v8::FunctionCallbackInfo<v8::Value>& info) { + V8Console* console = + static_cast<V8Console*>(info.Data().As<v8::External>()->Value()); + v8::debug::ConsoleCallArguments args(info); + (console->*func)(args); + } // TODO(foolip): There is no spec for the Memory Info API, see blink-dev: // https://groups.google.com/a/chromium.org/d/msg/blink-dev/g5YRCGpC9vs/b4OJz71NmPwJ |