Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(417)

Side by Side Diff: include/v8-debug.h

Issue 1496493002: Pass explicit Isolate parameter to v8::Debug methods that need it (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | src/api.cc » ('j') | src/api.cc » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2008 the V8 project authors. All rights reserved. 1 // Copyright 2008 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef V8_V8_DEBUG_H_ 5 #ifndef V8_V8_DEBUG_H_
6 #define V8_V8_DEBUG_H_ 6 #define V8_V8_DEBUG_H_
7 7
8 #include "v8.h" // NOLINT(build/include) 8 #include "v8.h" // NOLINT(build/include)
9 9
10 /** 10 /**
(...skipping 137 matching lines...) Expand 10 before | Expand all | Expand 10 after
148 * A MessageHandler2 does not take possession of the message data, 148 * A MessageHandler2 does not take possession of the message data,
149 * and must not rely on the data persisting after the handler returns. 149 * and must not rely on the data persisting after the handler returns.
150 */ 150 */
151 typedef void (*MessageHandler)(const Message& message); 151 typedef void (*MessageHandler)(const Message& message);
152 152
153 /** 153 /**
154 * Callback function for the host to ensure debug messages are processed. 154 * Callback function for the host to ensure debug messages are processed.
155 */ 155 */
156 typedef void (*DebugMessageDispatchHandler)(); 156 typedef void (*DebugMessageDispatchHandler)();
157 157
158 static bool SetDebugEventListener(EventCallback that, 158 static bool SetDebugEventListener(Isolate* isolate, EventCallback that,
159 Local<Value> data = Local<Value>()); 159 Local<Value> data = Local<Value>());
160 V8_DEPRECATE_SOON(
161 "Use version with an Isolate",
162 static bool SetDebugEventListener(EventCallback that,
163 Local<Value> data = Local<Value>()));
160 164
161 // Schedule a debugger break to happen when JavaScript code is run 165 // Schedule a debugger break to happen when JavaScript code is run
162 // in the given isolate. 166 // in the given isolate.
163 static void DebugBreak(Isolate* isolate); 167 static void DebugBreak(Isolate* isolate);
164 168
165 // Remove scheduled debugger break in given isolate if it has not 169 // Remove scheduled debugger break in given isolate if it has not
166 // happened yet. 170 // happened yet.
167 static void CancelDebugBreak(Isolate* isolate); 171 static void CancelDebugBreak(Isolate* isolate);
168 172
169 // Check if a debugger break is scheduled in the given isolate. 173 // Check if a debugger break is scheduled in the given isolate.
170 static bool CheckDebugBreak(Isolate* isolate); 174 static bool CheckDebugBreak(Isolate* isolate);
171 175
172 // Message based interface. The message protocol is JSON. 176 // Message based interface. The message protocol is JSON.
173 static void SetMessageHandler(MessageHandler handler); 177 static void SetMessageHandler(Isolate* isolate, MessageHandler handler);
178 V8_DEPRECATE_SOON("Use version with an Isolate",
179 static void SetMessageHandler(MessageHandler handler));
174 180
175 static void SendCommand(Isolate* isolate, 181 static void SendCommand(Isolate* isolate,
176 const uint16_t* command, int length, 182 const uint16_t* command, int length,
177 ClientData* client_data = NULL); 183 ClientData* client_data = NULL);
178 184
179 /** 185 /**
180 * Run a JavaScript function in the debugger. 186 * Run a JavaScript function in the debugger.
181 * \param fun the function to call 187 * \param fun the function to call
182 * \param data passed as second argument to the function 188 * \param data passed as second argument to the function
183 * With this call the debugger is entered and the function specified is called 189 * With this call the debugger is entered and the function specified is called
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
235 * 2. It should be invoked with the same precautions and from the same context 241 * 2. It should be invoked with the same precautions and from the same context
236 * as V8 script would be invoked from, because: 242 * as V8 script would be invoked from, because:
237 * a. with "evaluate" command it can do whatever normal script can do, 243 * a. with "evaluate" command it can do whatever normal script can do,
238 * including all native calls; 244 * including all native calls;
239 * b. no other thread should call V8 while this method is running 245 * b. no other thread should call V8 while this method is running
240 * (v8::Locker may be used here). 246 * (v8::Locker may be used here).
241 * 247 *
242 * "Evaluate" debug command behavior currently is not specified in scope 248 * "Evaluate" debug command behavior currently is not specified in scope
243 * of this method. 249 * of this method.
244 */ 250 */
245 static void ProcessDebugMessages(); 251 static void ProcessDebugMessages(Isolate* isolate);
252 V8_DEPRECATE_SOON("Use version with an Isolate",
253 static void ProcessDebugMessages());
246 254
247 /** 255 /**
248 * Debugger is running in its own context which is entered while debugger 256 * Debugger is running in its own context which is entered while debugger
249 * messages are being dispatched. This is an explicit getter for this 257 * messages are being dispatched. This is an explicit getter for this
250 * debugger context. Note that the content of the debugger context is subject 258 * debugger context. Note that the content of the debugger context is subject
251 * to change. The Context exists only when the debugger is active, i.e. at 259 * to change. The Context exists only when the debugger is active, i.e. at
252 * least one DebugEventListener or MessageHandler is set. 260 * least one DebugEventListener or MessageHandler is set.
253 */ 261 */
254 static Local<Context> GetDebugContext(); 262 static Local<Context> GetDebugContext(Isolate* isolate);
263 V8_DEPRECATE_SOON("Use version with an Isolate",
264 static Local<Context> GetDebugContext());
255 265
256 266
257 /** 267 /**
258 * Enable/disable LiveEdit functionality for the given Isolate 268 * Enable/disable LiveEdit functionality for the given Isolate
259 * (default Isolate if not provided). V8 will abort if LiveEdit is 269 * (default Isolate if not provided). V8 will abort if LiveEdit is
260 * unexpectedly used. LiveEdit is enabled by default. 270 * unexpectedly used. LiveEdit is enabled by default.
261 */ 271 */
262 static void SetLiveEditEnabled(Isolate* isolate, bool enable); 272 static void SetLiveEditEnabled(Isolate* isolate, bool enable);
263 273
264 /** 274 /**
265 * Returns array of internal properties specific to the value type. Result has 275 * Returns array of internal properties specific to the value type. Result has
266 * the following format: [<name>, <value>,...,<name>, <value>]. Result array 276 * the following format: [<name>, <value>,...,<name>, <value>]. Result array
267 * will be allocated in the current context. 277 * will be allocated in the current context.
268 */ 278 */
269 static MaybeLocal<Array> GetInternalProperties(Isolate* isolate, 279 static MaybeLocal<Array> GetInternalProperties(Isolate* isolate,
270 Local<Value> value); 280 Local<Value> value);
271 }; 281 };
272 282
273 283
274 } // namespace v8 284 } // namespace v8
275 285
276 286
277 #undef EXPORT 287 #undef EXPORT
278 288
279 289
280 #endif // V8_V8_DEBUG_H_ 290 #endif // V8_V8_DEBUG_H_
OLDNEW
« no previous file with comments | « no previous file | src/api.cc » ('j') | src/api.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698