| OLD | NEW |
| 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 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 163 static void DebugBreak(Isolate* isolate); | 163 static void DebugBreak(Isolate* isolate); |
| 164 | 164 |
| 165 // Remove scheduled debugger break in given isolate if it has not | 165 // Remove scheduled debugger break in given isolate if it has not |
| 166 // happened yet. | 166 // happened yet. |
| 167 static void CancelDebugBreak(Isolate* isolate); | 167 static void CancelDebugBreak(Isolate* isolate); |
| 168 | 168 |
| 169 // Check if a debugger break is scheduled in the given isolate. | 169 // Check if a debugger break is scheduled in the given isolate. |
| 170 static bool CheckDebugBreak(Isolate* isolate); | 170 static bool CheckDebugBreak(Isolate* isolate); |
| 171 | 171 |
| 172 // Message based interface. The message protocol is JSON. | 172 // Message based interface. The message protocol is JSON. |
| 173 static void SetMessageHandler(Isolate* isolate, MessageHandler handler); | 173 V8_DEPRECATED("No longer supported", |
| 174 static void SetMessageHandler(Isolate* isolate, |
| 175 MessageHandler handler)); |
| 174 | 176 |
| 175 static void SendCommand(Isolate* isolate, | 177 V8_DEPRECATED("No longer supported", |
| 176 const uint16_t* command, int length, | 178 static void SendCommand(Isolate* isolate, |
| 177 ClientData* client_data = NULL); | 179 const uint16_t* command, int length, |
| 180 ClientData* client_data = NULL)); |
| 178 | 181 |
| 179 /** | 182 /** |
| 180 * Run a JavaScript function in the debugger. | 183 * Run a JavaScript function in the debugger. |
| 181 * \param fun the function to call | 184 * \param fun the function to call |
| 182 * \param data passed as second argument to the function | 185 * \param data passed as second argument to the function |
| 183 * With this call the debugger is entered and the function specified is called | 186 * With this call the debugger is entered and the function specified is called |
| 184 * with the execution state as the first argument. This makes it possible to | 187 * with the execution state as the first argument. This makes it possible to |
| 185 * get access to information otherwise not available during normal JavaScript | 188 * get access to information otherwise not available during normal JavaScript |
| 186 * execution e.g. details on stack frames. Receiver of the function call will | 189 * execution e.g. details on stack frames. Receiver of the function call will |
| 187 * be the debugger context global object, however this is a subject to change. | 190 * be the debugger context global object, however this is a subject to change. |
| 188 * The following example shows a JavaScript function which when passed to | 191 * The following example shows a JavaScript function which when passed to |
| 189 * v8::Debug::Call will return the current line of JavaScript execution. | 192 * v8::Debug::Call will return the current line of JavaScript execution. |
| 190 * | 193 * |
| 191 * \code | 194 * \code |
| 192 * function frame_source_line(exec_state) { | 195 * function frame_source_line(exec_state) { |
| 193 * return exec_state.frame(0).sourceLine(); | 196 * return exec_state.frame(0).sourceLine(); |
| 194 * } | 197 * } |
| 195 * \endcode | 198 * \endcode |
| 196 */ | 199 */ |
| 197 // TODO(dcarney): data arg should be a MaybeLocal | 200 // TODO(dcarney): data arg should be a MaybeLocal |
| 198 static MaybeLocal<Value> Call(Local<Context> context, | 201 static MaybeLocal<Value> Call(Local<Context> context, |
| 199 v8::Local<v8::Function> fun, | 202 v8::Local<v8::Function> fun, |
| 200 Local<Value> data = Local<Value>()); | 203 Local<Value> data = Local<Value>()); |
| 201 | 204 |
| 202 /** | 205 /** |
| 203 * Returns a mirror object for the given object. | 206 * Returns a mirror object for the given object. |
| 204 */ | 207 */ |
| 205 static MaybeLocal<Value> GetMirror(Local<Context> context, | 208 static MaybeLocal<Value> GetMirror(Local<Context> context, |
| 206 v8::Local<v8::Value> obj); | 209 v8::Local<v8::Value> obj); |
| (...skipping 22 matching lines...) Expand all Loading... |
| 229 * 2. It should be invoked with the same precautions and from the same context | 232 * 2. It should be invoked with the same precautions and from the same context |
| 230 * as V8 script would be invoked from, because: | 233 * as V8 script would be invoked from, because: |
| 231 * a. with "evaluate" command it can do whatever normal script can do, | 234 * a. with "evaluate" command it can do whatever normal script can do, |
| 232 * including all native calls; | 235 * including all native calls; |
| 233 * b. no other thread should call V8 while this method is running | 236 * b. no other thread should call V8 while this method is running |
| 234 * (v8::Locker may be used here). | 237 * (v8::Locker may be used here). |
| 235 * | 238 * |
| 236 * "Evaluate" debug command behavior currently is not specified in scope | 239 * "Evaluate" debug command behavior currently is not specified in scope |
| 237 * of this method. | 240 * of this method. |
| 238 */ | 241 */ |
| 239 static void ProcessDebugMessages(Isolate* isolate); | 242 V8_DEPRECATED("No longer supported", |
| 243 static void ProcessDebugMessages(Isolate* isolate)); |
| 240 | 244 |
| 241 /** | 245 /** |
| 242 * Debugger is running in its own context which is entered while debugger | 246 * Debugger is running in its own context which is entered while debugger |
| 243 * messages are being dispatched. This is an explicit getter for this | 247 * messages are being dispatched. This is an explicit getter for this |
| 244 * debugger context. Note that the content of the debugger context is subject | 248 * debugger context. Note that the content of the debugger context is subject |
| 245 * to change. The Context exists only when the debugger is active, i.e. at | 249 * to change. The Context exists only when the debugger is active, i.e. at |
| 246 * least one DebugEventListener or MessageHandler is set. | 250 * least one DebugEventListener or MessageHandler is set. |
| 247 */ | 251 */ |
| 248 static Local<Context> GetDebugContext(Isolate* isolate); | 252 static Local<Context> GetDebugContext(Isolate* isolate); |
| 249 | 253 |
| (...skipping 28 matching lines...) Expand all Loading... |
| 278 }; | 282 }; |
| 279 | 283 |
| 280 | 284 |
| 281 } // namespace v8 | 285 } // namespace v8 |
| 282 | 286 |
| 283 | 287 |
| 284 #undef EXPORT | 288 #undef EXPORT |
| 285 | 289 |
| 286 | 290 |
| 287 #endif // V8_V8_DEBUG_H_ | 291 #endif // V8_V8_DEBUG_H_ |
| OLD | NEW |