Commit 4f60ee6b authored by yurys@chromium.org's avatar yurys@chromium.org

Remove deprecated methods from debugger API

Deleting SetDebugEventListener and SetMessageHandler from v8::Debug. this methods were deprecated in 3.20
https://code.google.com/p/v8/source/browse/branches/3.20/include/v8-debug.h but in fact they have been superseded by SetDebugEventListener2 and SetMessageHandler2 long ago.

BUG=None
R=bmeurer@chromium.org, loislo@chromium.org

Review URL: https://codereview.chromium.org/23576002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16379 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
parent eb64758d
...@@ -150,21 +150,6 @@ class V8_EXPORT Debug { ...@@ -150,21 +150,6 @@ class V8_EXPORT Debug {
virtual ~EventDetails() {} virtual ~EventDetails() {}
}; };
/**
* Debug event callback function.
*
* \param event the type of the debug event that triggered the callback
* (enum DebugEvent)
* \param exec_state execution state (JavaScript object)
* \param event_data event specific data (JavaScript object)
* \param data value passed by the user to SetDebugEventListener
*/
typedef void (*EventCallback)(DebugEvent event,
Handle<Object> exec_state,
Handle<Object> event_data,
Handle<Value> data);
/** /**
* Debug event callback function. * Debug event callback function.
* *
...@@ -175,27 +160,12 @@ class V8_EXPORT Debug { ...@@ -175,27 +160,12 @@ class V8_EXPORT Debug {
*/ */
typedef void (*EventCallback2)(const EventDetails& event_details); typedef void (*EventCallback2)(const EventDetails& event_details);
/**
* Debug message callback function.
*
* \param message the debug message handler message object
* \param length length of the message
* \param client_data the data value passed when registering the message handler
* A MessageHandler does not take possession of the message string,
* and must not rely on the data persisting after the handler returns.
*
* This message handler is deprecated. Use MessageHandler2 instead.
*/
typedef void (*MessageHandler)(const uint16_t* message, int length,
ClientData* client_data);
/** /**
* Debug message callback function. * Debug message callback function.
* *
* \param message the debug message handler message object * \param message the debug message handler message object
* *
* A MessageHandler does not take possession of the message data, * A MessageHandler2 does not take possession of the message data,
* and must not rely on the data persisting after the handler returns. * and must not rely on the data persisting after the handler returns.
*/ */
typedef void (*MessageHandler2)(const Message& message); typedef void (*MessageHandler2)(const Message& message);
...@@ -210,10 +180,6 @@ class V8_EXPORT Debug { ...@@ -210,10 +180,6 @@ class V8_EXPORT Debug {
*/ */
typedef void (*DebugMessageDispatchHandler)(); typedef void (*DebugMessageDispatchHandler)();
// Set a C debug event listener.
V8_DEPRECATED(static bool SetDebugEventListener(
EventCallback that,
Handle<Value> data = Handle<Value>()));
static bool SetDebugEventListener2(EventCallback2 that, static bool SetDebugEventListener2(EventCallback2 that,
Handle<Value> data = Handle<Value>()); Handle<Value> data = Handle<Value>());
...@@ -234,16 +200,12 @@ class V8_EXPORT Debug { ...@@ -234,16 +200,12 @@ class V8_EXPORT Debug {
// Break execution of JavaScript in the given isolate (this method // Break execution of JavaScript in the given isolate (this method
// can be invoked from a non-VM thread) for further client command // can be invoked from a non-VM thread) for further client command
// execution on a VM thread. Client data is then passed in // execution on a VM thread. Client data is then passed in
// EventDetails to EventCallback at the moment when the VM actually // EventDetails to EventCallback2 at the moment when the VM actually
// stops. If no isolate is provided the default isolate is used. // stops. If no isolate is provided the default isolate is used.
static void DebugBreakForCommand(ClientData* data = NULL, static void DebugBreakForCommand(ClientData* data = NULL,
Isolate* isolate = NULL); Isolate* isolate = NULL);
// Message based interface. The message protocol is JSON. NOTE the message // Message based interface. The message protocol is JSON.
// handler thread is not supported any more parameter must be false.
V8_DEPRECATED(static void SetMessageHandler(
MessageHandler handler,
bool message_handler_thread = false));
static void SetMessageHandler2(MessageHandler2 handler); static void SetMessageHandler2(MessageHandler2 handler);
// If no isolate is provided the default isolate is // If no isolate is provided the default isolate is
......
...@@ -7009,37 +7009,6 @@ Local<Value> Exception::Error(v8::Handle<v8::String> raw_message) { ...@@ -7009,37 +7009,6 @@ Local<Value> Exception::Error(v8::Handle<v8::String> raw_message) {
#ifdef ENABLE_DEBUGGER_SUPPORT #ifdef ENABLE_DEBUGGER_SUPPORT
static void EventCallbackWrapper(const v8::Debug::EventDetails& event_details) {
i::Isolate* isolate = i::Isolate::Current();
if (isolate->debug_event_callback() != NULL) {
isolate->debug_event_callback()(event_details.GetEvent(),
event_details.GetExecutionState(),
event_details.GetEventData(),
event_details.GetCallbackData());
}
}
bool Debug::SetDebugEventListener(EventCallback that, Handle<Value> data) {
i::Isolate* isolate = i::Isolate::Current();
EnsureInitializedForIsolate(isolate, "v8::Debug::SetDebugEventListener()");
ON_BAILOUT(isolate, "v8::Debug::SetDebugEventListener()", return false);
ENTER_V8(isolate);
isolate->set_debug_event_callback(that);
i::HandleScope scope(isolate);
i::Handle<i::Object> foreign = isolate->factory()->undefined_value();
if (that != NULL) {
foreign =
isolate->factory()->NewForeign(FUNCTION_ADDR(EventCallbackWrapper));
}
isolate->debugger()->SetEventListener(foreign,
Utils::OpenHandle(*data, true));
return true;
}
bool Debug::SetDebugEventListener2(EventCallback2 that, Handle<Value> data) { bool Debug::SetDebugEventListener2(EventCallback2 that, Handle<Value> data) {
i::Isolate* isolate = i::Isolate::Current(); i::Isolate* isolate = i::Isolate::Current();
EnsureInitializedForIsolate(isolate, "v8::Debug::SetDebugEventListener2()"); EnsureInitializedForIsolate(isolate, "v8::Debug::SetDebugEventListener2()");
...@@ -7099,35 +7068,6 @@ void Debug::DebugBreakForCommand(ClientData* data, Isolate* isolate) { ...@@ -7099,35 +7068,6 @@ void Debug::DebugBreakForCommand(ClientData* data, Isolate* isolate) {
} }
static void MessageHandlerWrapper(const v8::Debug::Message& message) {
i::Isolate* isolate = i::Isolate::Current();
if (isolate->message_handler()) {
v8::String::Value json(message.GetJSON());
(isolate->message_handler())(*json, json.length(), message.GetClientData());
}
}
void Debug::SetMessageHandler(v8::Debug::MessageHandler handler,
bool message_handler_thread) {
i::Isolate* isolate = i::Isolate::Current();
EnsureInitializedForIsolate(isolate, "v8::Debug::SetMessageHandler");
ENTER_V8(isolate);
// Message handler thread not supported any more. Parameter temporally left in
// the API for client compatibility reasons.
CHECK(!message_handler_thread);
// TODO(sgjesse) support the old message handler API through a simple wrapper.
isolate->set_message_handler(handler);
if (handler != NULL) {
isolate->debugger()->SetMessageHandler(MessageHandlerWrapper);
} else {
isolate->debugger()->SetMessageHandler(NULL);
}
}
void Debug::SetMessageHandler2(v8::Debug::MessageHandler2 handler) { void Debug::SetMessageHandler2(v8::Debug::MessageHandler2 handler) {
i::Isolate* isolate = i::Isolate::Current(); i::Isolate* isolate = i::Isolate::Current();
EnsureInitializedForIsolate(isolate, "v8::Debug::SetMessageHandler"); EnsureInitializedForIsolate(isolate, "v8::Debug::SetMessageHandler");
......
...@@ -320,7 +320,6 @@ class SystemThreadManager { ...@@ -320,7 +320,6 @@ class SystemThreadManager {
#ifdef ENABLE_DEBUGGER_SUPPORT #ifdef ENABLE_DEBUGGER_SUPPORT
#define ISOLATE_DEBUGGER_INIT_LIST(V) \ #define ISOLATE_DEBUGGER_INIT_LIST(V) \
V(v8::Debug::EventCallback, debug_event_callback, NULL) \
V(DebuggerAgent*, debugger_agent_instance, NULL) V(DebuggerAgent*, debugger_agent_instance, NULL)
#else #else
...@@ -360,7 +359,6 @@ typedef List<HeapObject*, PreallocatedStorageAllocationPolicy> DebugObjectCache; ...@@ -360,7 +359,6 @@ typedef List<HeapObject*, PreallocatedStorageAllocationPolicy> DebugObjectCache;
V(byte*, assembler_spare_buffer, NULL) \ V(byte*, assembler_spare_buffer, NULL) \
V(FatalErrorCallback, exception_behavior, NULL) \ V(FatalErrorCallback, exception_behavior, NULL) \
V(AllowCodeGenerationFromStringsCallback, allow_code_gen_callback, NULL) \ V(AllowCodeGenerationFromStringsCallback, allow_code_gen_callback, NULL) \
V(v8::Debug::MessageHandler, message_handler, NULL) \
/* To distinguish the function templates, so that we can find them in the */ \ /* To distinguish the function templates, so that we can find them in the */ \
/* function cache of the native context. */ \ /* function cache of the native context. */ \
V(int, next_serial_number, 0) \ V(int, next_serial_number, 0) \
......
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment