eric6/Debugger/DebuggerInterfaceNone.py

branch
multi_processing
changeset 7867
aa870fdd40d8
parent 7863
6725d2549801
child 7874
8dcb77600690
equal deleted inserted replaced
7864:431e6816c60c 7867:aa870fdd40d8
13 ClientDefaultCapabilities = 0 13 ClientDefaultCapabilities = 0
14 14
15 ClientTypeAssociations = [] 15 ClientTypeAssociations = []
16 16
17 17
18 # TODO: synchronize debugger interface with Python one
19 class DebuggerInterfaceNone(QObject): 18 class DebuggerInterfaceNone(QObject):
20 """ 19 """
21 Class implementing a dummy debugger interface for the debug server. 20 Class implementing a dummy debugger interface for the debug server.
22 """ 21 """
23 def __init__(self, debugServer, passive): 22 def __init__(self, debugServer, passive):
95 94
96 @param sock reference to the socket object (QTcpSocket) 95 @param sock reference to the socket object (QTcpSocket)
97 @return flag indicating success (boolean) 96 @return flag indicating success (boolean)
98 """ 97 """
99 return False 98 return False
100 99
101 def flush(self): 100 def getDebuggerIds(self):
102 """ 101 """
103 Public slot to flush the queue. 102 Public method to return the IDs of the connected debugger backends.
104 """ 103
105 self.queue = [] 104 @return list of connected debugger backend IDs
105 @rtype list of str
106 """
107 return []
106 108
107 def shutdown(self): 109 def shutdown(self):
108 """ 110 """
109 Public method to cleanly shut down. 111 Public method to cleanly shut down.
110 112
129 @param env environment settings (dictionary) 131 @param env environment settings (dictionary)
130 """ 132 """
131 return 133 return
132 134
133 def remoteLoad(self, fn, argv, wd, traceInterpreter=False, 135 def remoteLoad(self, fn, argv, wd, traceInterpreter=False,
134 autoContinue=True, autoFork=False, forkChild=False): 136 autoContinue=True, autoFork=False, forkChild=False,
137 enableMultiprocess=False):
135 """ 138 """
136 Public method to load a new program to debug. 139 Public method to load a new program to debug.
137 140
138 @param fn the filename to debug (string) 141 @param fn the filename to debug
139 @param argv the commandline arguments to pass to the program (string) 142 @type str
140 @param wd the working directory for the program (string) 143 @param argv the commandline arguments to pass to the program
141 @keyparam traceInterpreter flag indicating if the interpreter library 144 @type str
142 should be traced as well (boolean) 145 @param wd the working directory for the program
143 @keyparam autoContinue flag indicating, that the debugger should not 146 @type str
144 stop at the first executable line (boolean) 147 @param traceInterpreter flag indicating if the interpreter library
145 @keyparam autoFork flag indicating the automatic fork mode (boolean) 148 should be traced as well
146 @keyparam forkChild flag indicating to debug the child after forking 149 @type bool
147 (boolean) 150 @param autoContinue flag indicating, that the debugger should not
151 stop at the first executable line
152 @type bool
153 @param autoFork flag indicating the automatic fork mode
154 @type bool
155 @param forkChild flag indicating to debug the child after forking
156 @type bool
157 @param enableMultiprocess flag indicating to perform multiprocess
158 debugging
159 @type bool
148 """ 160 """
149 return 161 return
150 162
151 def remoteRun(self, fn, argv, wd, autoFork=False, forkChild=False): 163 def remoteRun(self, fn, argv, wd, autoFork=False, forkChild=False):
152 """ 164 """
153 Public method to load a new program to run. 165 Public method to load a new program to run.
154 166
155 @param fn the filename to run (string) 167 @param fn the filename to run
156 @param argv the commandline arguments to pass to the program (string) 168 @type str
157 @param wd the working directory for the program (string) 169 @param argv the commandline arguments to pass to the program
158 @keyparam autoFork flag indicating the automatic fork mode (boolean) 170 @type str
159 @keyparam forkChild flag indicating to debug the child after forking 171 @param wd the working directory for the program
160 (boolean) 172 @type str
173 @param autoFork flag indicating the automatic fork mode
174 @type bool
175 @param forkChild flag indicating to debug the child after forking
176 @type bool
161 """ 177 """
162 return 178 return
163 179
164 def remoteCoverage(self, fn, argv, wd, erase=False): 180 def remoteCoverage(self, fn, argv, wd, erase=False):
165 """ 181 """
166 Public method to load a new program to collect coverage data. 182 Public method to load a new program to collect coverage data.
167 183
168 @param fn the filename to run (string) 184 @param fn the filename to run
169 @param argv the commandline arguments to pass to the program (string) 185 @type str
170 @param wd the working directory for the program (string) 186 @param argv the commandline arguments to pass to the program
171 @keyparam erase flag indicating that coverage info should be 187 @type str
172 cleared first (boolean) 188 @param wd the working directory for the program
189 @type str
190 @param erase flag indicating that coverage info should be
191 cleared first
192 @type bool
173 """ 193 """
174 return 194 return
175 195
176 def remoteProfile(self, fn, argv, wd, erase=False): 196 def remoteProfile(self, fn, argv, wd, erase=False):
177 """ 197 """
178 Public method to load a new program to collect profiling data. 198 Public method to load a new program to collect profiling data.
179 199
180 @param fn the filename to run (string) 200 @param fn the filename to run
181 @param argv the commandline arguments to pass to the program (string) 201 @type str
182 @param wd the working directory for the program (string) 202 @param argv the commandline arguments to pass to the program
183 @keyparam erase flag indicating that timing info should be cleared 203 @type str
184 first (boolean) 204 @param wd the working directory for the program
185 """ 205 @type str
186 return 206 @param erase flag indicating that timing info should be cleared
187 207 first
188 def remoteStatement(self, stmt): 208 @type bool
209 """
210 return
211
212 def remoteStatement(self, debuggerId, stmt):
189 """ 213 """
190 Public method to execute a Python statement. 214 Public method to execute a Python statement.
191 215
192 @param stmt the Python statement to execute (string). It 216 @param debuggerId ID of the debugger backend
193 should not have a trailing newline. 217 @type str
194 """ 218 @param stmt the Python statement to execute.
195 self.debugServer.signalClientStatement(False) 219 @type str
196 return 220 """
197 221 self.debugServer.signalClientStatement(False, "")
198 def remoteStep(self): 222 return
223
224 def remoteStep(self, debuggerId):
199 """ 225 """
200 Public method to single step the debugged program. 226 Public method to single step the debugged program.
201 """ 227
202 return 228 @param debuggerId ID of the debugger backend
203 229 @type str
204 def remoteStepOver(self): 230 """
231 return
232
233 def remoteStepOver(self, debuggerId):
205 """ 234 """
206 Public method to step over the debugged program. 235 Public method to step over the debugged program.
207 """ 236
208 return 237 @param debuggerId ID of the debugger backend
209 238 @type str
210 def remoteStepOut(self): 239 """
240 return
241
242 def remoteStepOut(self, debuggerId):
211 """ 243 """
212 Public method to step out the debugged program. 244 Public method to step out the debugged program.
213 """ 245
214 return 246 @param debuggerId ID of the debugger backend
215 247 @type str
216 def remoteStepQuit(self): 248 """
249 return
250
251 def remoteStepQuit(self, debuggerId):
217 """ 252 """
218 Public method to stop the debugged program. 253 Public method to stop the debugged program.
219 """ 254
220 return 255 @param debuggerId ID of the debugger backend
221 256 @type str
222 def remoteContinue(self, special=False): 257 """
258 return
259
260 def remoteContinue(self, debuggerId, special=False):
223 """ 261 """
224 Public method to continue the debugged program. 262 Public method to continue the debugged program.
225 263
264 @param debuggerId ID of the debugger backend
265 @type str
226 @param special flag indicating a special continue operation 266 @param special flag indicating a special continue operation
227 """ 267 @type bool
228 return 268 """
229 269 return
230 def remoteMoveIP(self, line): 270
271 def remoteMoveIP(self, debuggerId, line):
231 """ 272 """
232 Public method to move the instruction pointer to a different line. 273 Public method to move the instruction pointer to a different line.
233 274
275 @param debuggerId ID of the debugger backend
276 @type str
234 @param line the new line, where execution should be continued 277 @param line the new line, where execution should be continued
235 """ 278 @type int
236 return 279 """
237 280 return
238 def remoteBreakpoint(self, fn, line, setBreakpoint, cond=None, temp=False): 281
282 def remoteBreakpoint(self, debuggerId, fn, line, setBreakpoint, cond=None,
283 temp=False):
239 """ 284 """
240 Public method to set or clear a breakpoint. 285 Public method to set or clear a breakpoint.
241 286
242 @param fn filename the breakpoint belongs to (string) 287 @param debuggerId ID of the debugger backend
243 @param line linenumber of the breakpoint (int) 288 @type str
244 @param setBreakpoint flag indicating setting or resetting a 289 @param fn filename the breakpoint belongs to
245 breakpoint (boolean) 290 @type str
246 @param cond condition of the breakpoint (string) 291 @param line linenumber of the breakpoint
247 @param temp flag indicating a temporary breakpoint (boolean) 292 @type int
248 """ 293 @param setBreakpoint flag indicating setting or resetting a breakpoint
249 return 294 @type bool
250 295 @param cond condition of the breakpoint
251 def remoteBreakpointEnable(self, fn, line, enable): 296 @type str
297 @param temp flag indicating a temporary breakpoint
298 @type bool
299 """
300 return
301
302 def remoteBreakpointEnable(self, debuggerId, fn, line, enable):
252 """ 303 """
253 Public method to enable or disable a breakpoint. 304 Public method to enable or disable a breakpoint.
254 305
255 @param fn filename the breakpoint belongs to (string) 306 @param debuggerId ID of the debugger backend
256 @param line linenumber of the breakpoint (int) 307 @type str
308 @param fn filename the breakpoint belongs to
309 @type str
310 @param line linenumber of the breakpoint
311 @type int
257 @param enable flag indicating enabling or disabling a breakpoint 312 @param enable flag indicating enabling or disabling a breakpoint
258 (boolean) 313 @type bool
259 """ 314 """
260 return 315 return
261 316
262 def remoteBreakpointIgnore(self, fn, line, count): 317 def remoteBreakpointIgnore(self, debuggerId, fn, line, count):
263 """ 318 """
264 Public method to ignore a breakpoint the next couple of occurrences. 319 Public method to ignore a breakpoint the next couple of occurrences.
265 320
266 @param fn filename the breakpoint belongs to (string) 321 @param debuggerId ID of the debugger backend
267 @param line linenumber of the breakpoint (int) 322 @type str
268 @param count number of occurrences to ignore (int) 323 @param fn filename the breakpoint belongs to
269 """ 324 @type str
270 return 325 @param line linenumber of the breakpoint
271 326 @type int
272 def remoteWatchpoint(self, cond, setWatch, temp=False): 327 @param count number of occurrences to ignore
328 @type int
329 """
330 return
331
332 def remoteWatchpoint(self, debuggerId, cond, setWatch, temp=False):
273 """ 333 """
274 Public method to set or clear a watch expression. 334 Public method to set or clear a watch expression.
275 335
276 @param cond expression of the watch expression (string) 336 @param debuggerId ID of the debugger backend
337 @type str
338 @param cond expression of the watch expression
339 @type str
277 @param setWatch flag indicating setting or resetting a watch expression 340 @param setWatch flag indicating setting or resetting a watch expression
278 (boolean) 341 @type bool
279 @param temp flag indicating a temporary watch expression (boolean) 342 @param temp flag indicating a temporary watch expression
280 """ 343 @type bool
281 return 344 """
282 345 return
283 def remoteWatchpointEnable(self, cond, enable): 346
347 def remoteWatchpointEnable(self, debuggerId, cond, enable):
284 """ 348 """
285 Public method to enable or disable a watch expression. 349 Public method to enable or disable a watch expression.
286 350
287 @param cond expression of the watch expression (string) 351 @param debuggerId ID of the debugger backend
288 @param enable flag indicating enabling or disabling a watch 352 @type str
289 expression (boolean) 353 @param cond expression of the watch expression
290 """ 354 @type str
291 return 355 @param enable flag indicating enabling or disabling a watch expression
292 356 @type bool
293 def remoteWatchpointIgnore(self, cond, count): 357 """
358 return
359
360 def remoteWatchpointIgnore(self, debuggerId, cond, count):
294 """ 361 """
295 Public method to ignore a watch expression the next couple of 362 Public method to ignore a watch expression the next couple of
296 occurrences. 363 occurrences.
297 364
298 @param cond expression of the watch expression (string) 365 @param debuggerId ID of the debugger backend
299 @param count number of occurrences to ignore (int) 366 @type str
300 """ 367 @param cond expression of the watch expression
301 return 368 @type str
302 369 @param count number of occurrences to ignore
303 def remoteRawInput(self, s): 370 @type int
371 """
372 return
373
374 def remoteRawInput(self, debuggerId, inputString):
304 """ 375 """
305 Public method to send the raw input to the debugged program. 376 Public method to send the raw input to the debugged program.
306 377
307 @param s the raw input (string) 378 @param debuggerId ID of the debugger backend
308 """ 379 @type str
309 return 380 @param inputString the raw input
310 381 @type str
311 def remoteThreadList(self): 382 """
383 return
384
385 def remoteThreadList(self, debuggerId):
312 """ 386 """
313 Public method to request the list of threads from the client. 387 Public method to request the list of threads from the client.
314 """ 388
315 return 389 @param debuggerId ID of the debugger backend
316 390 @type str
317 def remoteSetThread(self, tid): 391 """
392 return
393
394 def remoteSetThread(self, debuggerId, tid):
318 """ 395 """
319 Public method to request to set the given thread as current thread. 396 Public method to request to set the given thread as current thread.
320 397
321 @param tid id of the thread (integer) 398 @param debuggerId ID of the debugger backend
322 """ 399 @type str
323 return 400 @param tid id of the thread
324 401 @type int
325 def remoteClientVariables(self, scope, filterList, framenr=0, maxSize=0): 402 """
403 return
404
405 def remoteClientStack(self, debuggerId):
406 """
407 Public method to request the stack of the main thread.
408
409 @param debuggerId ID of the debugger backend
410 @type str
411 """
412 return
413
414 def remoteClientVariables(self, debuggerId, scope, filterList, framenr=0,
415 maxSize=0):
326 """ 416 """
327 Public method to request the variables of the debugged program. 417 Public method to request the variables of the debugged program.
328 418
419 @param debuggerId ID of the debugger backend
420 @type str
329 @param scope the scope of the variables (0 = local, 1 = global) 421 @param scope the scope of the variables (0 = local, 1 = global)
330 @type int 422 @type int
331 @param filterList list of variable types to filter out 423 @param filterList list of variable types to filter out
332 @type list of str 424 @type list of str
333 @param framenr framenumber of the variables to retrieve 425 @param framenr framenumber of the variables to retrieve
337 be given (@@TOO_BIG_TO_SHOW@@). 429 be given (@@TOO_BIG_TO_SHOW@@).
338 @type int 430 @type int
339 """ 431 """
340 return 432 return
341 433
342 def remoteClientVariable(self, scope, filterList, var, framenr=0, 434 def remoteClientVariable(self, debuggerId, scope, filterList, var,
343 maxSize=0): 435 framenr=0, maxSize=0):
344 """ 436 """
345 Public method to request the variables of the debugged program. 437 Public method to request the variables of the debugged program.
346 438
439 @param debuggerId ID of the debugger backend
440 @type str
347 @param scope the scope of the variables (0 = local, 1 = global) 441 @param scope the scope of the variables (0 = local, 1 = global)
348 @type int 442 @type int
349 @param filterList list of variable types to filter out 443 @param filterList list of variable types to filter out
350 @type list of str 444 @type list of str
351 @param var list encoded name of variable to retrieve 445 @param var list encoded name of variable to retrieve
352 @type list of str 446 @type list of str
353 @param framenr framenumber of the variables to retrieve (int) 447 @param framenr framenumber of the variables to retrieve
354 @type int 448 @type int
355 @param maxSize maximum size the formatted value of a variable will 449 @param maxSize maximum size the formatted value of a variable will
356 be shown. If it is bigger than that, a 'too big' indication will 450 be shown. If it is bigger than that, a 'too big' indication will
357 be given (@@TOO_BIG_TO_SHOW@@). 451 be given (@@TOO_BIG_TO_SHOW@@).
358 @type int 452 @type int
359 """ 453 """
360 return 454 return
361 455
362 def remoteClientSetFilter(self, scope, filterStr): 456 def remoteClientDisassembly(self, debuggerId):
457 """
458 Public method to ask the client for the latest traceback disassembly.
459
460 @param debuggerId ID of the debugger backend
461 @type str
462 """
463 return
464
465 def remoteClientSetFilter(self, debuggerId, scope, filterStr):
363 """ 466 """
364 Public method to set a variables filter list. 467 Public method to set a variables filter list.
365 468
469 @param debuggerId ID of the debugger backend
470 @type str
366 @param scope the scope of the variables (0 = local, 1 = global) 471 @param scope the scope of the variables (0 = local, 1 = global)
472 @type int
367 @param filterStr regexp string for variable names to filter out 473 @param filterStr regexp string for variable names to filter out
368 (string) 474 @type str
369 """ 475 """
370 return 476 return
371 477
372 def setCallTraceEnabled(self, on): 478 def setCallTraceEnabled(self, debuggerId, on):
373 """ 479 """
374 Public method to set the call trace state. 480 Public method to set the call trace state.
375 481
376 @param on flag indicating to enable the call trace function (boolean) 482 @param debuggerId ID of the debugger backend
377 """ 483 @type str
378 return 484 @param on flag indicating to enable the call trace function
379 485 @type bool
380 def remoteEval(self, arg): 486 """
381 """ 487 return
382 Public method to evaluate arg in the current context of the debugged 488
383 program. 489 def remoteNoDebugList(self, debuggerId, noDebugList):
384 490 """
385 @param arg the arguments to evaluate (string) 491 Public method to set a list of programs not to be debugged.
492
493 The programs given in the list will not be run under the control
494 of the multi process debugger.
495
496 @param debuggerId ID of the debugger backend
497 @type str
498 @param noDebugList list of Python programs not to be debugged
499 @type list of str
386 """ 500 """
387 return 501 return
388 502
389 def remoteBanner(self): 503 def remoteBanner(self):
390 """ 504 """
391 Public slot to get the banner info of the remote client. 505 Public slot to get the banner info of the remote client.
392 """ 506 """
393 return 507 return
394 508
395 def remoteCapabilities(self): 509 def remoteCapabilities(self, debuggerId):
396 """ 510 """
397 Public slot to get the debug clients capabilities. 511 Public slot to get the debug clients capabilities.
398 """ 512
399 return 513 @param debuggerId ID of the debugger backend
400 514 @type str
401 def remoteCompletion(self, text): 515 """
516 return
517
518 def remoteCompletion(self, debuggerId, text):
402 """ 519 """
403 Public slot to get the a list of possible commandline completions 520 Public slot to get the a list of possible commandline completions
404 from the remote client. 521 from the remote client.
405 522
406 @param text the text to be completed (string) 523 @param debuggerId ID of the debugger backend
524 @type str
525 @param text the text to be completed
526 @type str
407 """ 527 """
408 return 528 return
409 529
410 def remoteUTDiscover(self, syspath, workdir, discoveryStart): 530 def remoteUTDiscover(self, syspath, workdir, discoveryStart):
411 """ 531 """

eric ide

mercurial