Documentation/Source/eric6.Debugger.DebuggerInterfacePython.html

changeset 5850
7fae79975686
parent 5662
2c99fa1072b6
child 5899
0516f6548ca6
equal deleted inserted replaced
5849:512001065055 5850:7fae79975686
1 <!DOCTYPE html>
2 <html><head>
3 <title>eric6.Debugger.DebuggerInterfacePython</title>
4 <meta charset="UTF-8">
5 <style>
6 body {
7 background: #EDECE6;
8 margin: 0em 1em 10em 1em;
9 color: black;
10 }
11
12 h1 { color: white; background: #85774A; }
13 h2 { color: white; background: #85774A; }
14 h3 { color: white; background: #9D936E; }
15 h4 { color: white; background: #9D936E; }
16
17 a { color: #BA6D36; }
18
19 </style>
20 </head>
21 <body><a NAME="top" ID="top"></a>
22 <h1>eric6.Debugger.DebuggerInterfacePython</h1>
23 <p>
24 Module implementing the Python3 debugger interface for the debug server.
25 </p>
26 <h3>Global Attributes</h3>
27 <table>
28 <tr><td>ClientDefaultCapabilities</td></tr>
29 </table>
30 <h3>Classes</h3>
31 <table>
32 <tr>
33 <td><a href="#DebuggerInterfacePython">DebuggerInterfacePython</a></td>
34 <td>Class implementing the debugger interface for the debug server for Python 2 and Python 3.</td>
35 </tr>
36 </table>
37 <h3>Functions</h3>
38 <table>
39 <tr>
40 <td><a href="#createDebuggerInterfacePython2">createDebuggerInterfacePython2</a></td>
41 <td>Module function to create a debugger interface instance.</td>
42 </tr><tr>
43 <td><a href="#createDebuggerInterfacePython3">createDebuggerInterfacePython3</a></td>
44 <td>Module function to create a debugger interface instance.</td>
45 </tr><tr>
46 <td><a href="#getRegistryData">getRegistryData</a></td>
47 <td>Module function to get characterizing data for the supported debugger interfaces.</td>
48 </tr>
49 </table>
50 <hr /><hr />
51 <a NAME="DebuggerInterfacePython" ID="DebuggerInterfacePython"></a>
52 <h2>DebuggerInterfacePython</h2>
53 <p>
54 Class implementing the debugger interface for the debug server for Python 2
55 and Python 3.
56 </p>
57 <h3>Derived from</h3>
58 QObject
59 <h3>Class Attributes</h3>
60 <table>
61 <tr><td>None</td></tr>
62 </table>
63 <h3>Class Methods</h3>
64 <table>
65 <tr><td>None</td></tr>
66 </table>
67 <h3>Methods</h3>
68 <table>
69 <tr>
70 <td><a href="#DebuggerInterfacePython.__init__">DebuggerInterfacePython</a></td>
71 <td>Constructor</td>
72 </tr><tr>
73 <td><a href="#DebuggerInterfacePython.__askForkTo">__askForkTo</a></td>
74 <td>Private method to ask the user which branch of a fork to follow.</td>
75 </tr><tr>
76 <td><a href="#DebuggerInterfacePython.__handleJsonCommand">__handleJsonCommand</a></td>
77 <td>Private method to handle a command or response serialized as a JSON string.</td>
78 </tr><tr>
79 <td><a href="#DebuggerInterfacePython.__identityTranslation">__identityTranslation</a></td>
80 <td>Private method to perform the identity path translation.</td>
81 </tr><tr>
82 <td><a href="#DebuggerInterfacePython.__parseClientLine">__parseClientLine</a></td>
83 <td>Private method to handle data from the client.</td>
84 </tr><tr>
85 <td><a href="#DebuggerInterfacePython.__remoteTranslation">__remoteTranslation</a></td>
86 <td>Private method to perform the path translation.</td>
87 </tr><tr>
88 <td><a href="#DebuggerInterfacePython.__sendJsonCommand">__sendJsonCommand</a></td>
89 <td>Private method to send a single command to the client.</td>
90 </tr><tr>
91 <td><a href="#DebuggerInterfacePython.__startProcess">__startProcess</a></td>
92 <td>Private method to start the debugger client process.</td>
93 </tr><tr>
94 <td><a href="#DebuggerInterfacePython.flush">flush</a></td>
95 <td>Public slot to flush the queue.</td>
96 </tr><tr>
97 <td><a href="#DebuggerInterfacePython.getClientCapabilities">getClientCapabilities</a></td>
98 <td>Public method to retrieve the debug clients capabilities.</td>
99 </tr><tr>
100 <td><a href="#DebuggerInterfacePython.isConnected">isConnected</a></td>
101 <td>Public method to test, if a debug client has connected.</td>
102 </tr><tr>
103 <td><a href="#DebuggerInterfacePython.newConnection">newConnection</a></td>
104 <td>Public slot to handle a new connection.</td>
105 </tr><tr>
106 <td><a href="#DebuggerInterfacePython.remoteBanner">remoteBanner</a></td>
107 <td>Public slot to get the banner info of the remote client.</td>
108 </tr><tr>
109 <td><a href="#DebuggerInterfacePython.remoteBreakpoint">remoteBreakpoint</a></td>
110 <td>Public method to set or clear a breakpoint.</td>
111 </tr><tr>
112 <td><a href="#DebuggerInterfacePython.remoteBreakpointEnable">remoteBreakpointEnable</a></td>
113 <td>Public method to enable or disable a breakpoint.</td>
114 </tr><tr>
115 <td><a href="#DebuggerInterfacePython.remoteBreakpointIgnore">remoteBreakpointIgnore</a></td>
116 <td>Public method to ignore a breakpoint the next couple of occurrences.</td>
117 </tr><tr>
118 <td><a href="#DebuggerInterfacePython.remoteCapabilities">remoteCapabilities</a></td>
119 <td>Public slot to get the debug clients capabilities.</td>
120 </tr><tr>
121 <td><a href="#DebuggerInterfacePython.remoteClientSetFilter">remoteClientSetFilter</a></td>
122 <td>Public method to set a variables filter list.</td>
123 </tr><tr>
124 <td><a href="#DebuggerInterfacePython.remoteClientVariable">remoteClientVariable</a></td>
125 <td>Public method to request the variables of the debugged program.</td>
126 </tr><tr>
127 <td><a href="#DebuggerInterfacePython.remoteClientVariables">remoteClientVariables</a></td>
128 <td>Public method to request the variables of the debugged program.</td>
129 </tr><tr>
130 <td><a href="#DebuggerInterfacePython.remoteCompletion">remoteCompletion</a></td>
131 <td>Public slot to get the a list of possible commandline completions from the remote client.</td>
132 </tr><tr>
133 <td><a href="#DebuggerInterfacePython.remoteContinue">remoteContinue</a></td>
134 <td>Public method to continue the debugged program.</td>
135 </tr><tr>
136 <td><a href="#DebuggerInterfacePython.remoteCoverage">remoteCoverage</a></td>
137 <td>Public method to load a new program to collect coverage data.</td>
138 </tr><tr>
139 <td><a href="#DebuggerInterfacePython.remoteEnvironment">remoteEnvironment</a></td>
140 <td>Public method to set the environment for a program to debug, run, ...</td>
141 </tr><tr>
142 <td><a href="#DebuggerInterfacePython.remoteLoad">remoteLoad</a></td>
143 <td>Public method to load a new program to debug.</td>
144 </tr><tr>
145 <td><a href="#DebuggerInterfacePython.remoteMoveIP">remoteMoveIP</a></td>
146 <td>Public method to move the instruction pointer to a different line.</td>
147 </tr><tr>
148 <td><a href="#DebuggerInterfacePython.remoteProfile">remoteProfile</a></td>
149 <td>Public method to load a new program to collect profiling data.</td>
150 </tr><tr>
151 <td><a href="#DebuggerInterfacePython.remoteRawInput">remoteRawInput</a></td>
152 <td>Public method to send the raw input to the debugged program.</td>
153 </tr><tr>
154 <td><a href="#DebuggerInterfacePython.remoteRun">remoteRun</a></td>
155 <td>Public method to load a new program to run.</td>
156 </tr><tr>
157 <td><a href="#DebuggerInterfacePython.remoteSetThread">remoteSetThread</a></td>
158 <td>Public method to request to set the given thread as current thread.</td>
159 </tr><tr>
160 <td><a href="#DebuggerInterfacePython.remoteStatement">remoteStatement</a></td>
161 <td>Public method to execute a Python statement.</td>
162 </tr><tr>
163 <td><a href="#DebuggerInterfacePython.remoteStep">remoteStep</a></td>
164 <td>Public method to single step the debugged program.</td>
165 </tr><tr>
166 <td><a href="#DebuggerInterfacePython.remoteStepOut">remoteStepOut</a></td>
167 <td>Public method to step out the debugged program.</td>
168 </tr><tr>
169 <td><a href="#DebuggerInterfacePython.remoteStepOver">remoteStepOver</a></td>
170 <td>Public method to step over the debugged program.</td>
171 </tr><tr>
172 <td><a href="#DebuggerInterfacePython.remoteStepQuit">remoteStepQuit</a></td>
173 <td>Public method to stop the debugged program.</td>
174 </tr><tr>
175 <td><a href="#DebuggerInterfacePython.remoteThreadList">remoteThreadList</a></td>
176 <td>Public method to request the list of threads from the client.</td>
177 </tr><tr>
178 <td><a href="#DebuggerInterfacePython.remoteUTPrepare">remoteUTPrepare</a></td>
179 <td>Public method to prepare a new unittest run.</td>
180 </tr><tr>
181 <td><a href="#DebuggerInterfacePython.remoteUTRun">remoteUTRun</a></td>
182 <td>Public method to start a unittest run.</td>
183 </tr><tr>
184 <td><a href="#DebuggerInterfacePython.remoteUTStop">remoteUTStop</a></td>
185 <td>Public method to stop a unittest run.</td>
186 </tr><tr>
187 <td><a href="#DebuggerInterfacePython.remoteWatchpoint">remoteWatchpoint</a></td>
188 <td>Public method to set or clear a watch expression.</td>
189 </tr><tr>
190 <td><a href="#DebuggerInterfacePython.remoteWatchpointEnable">remoteWatchpointEnable</a></td>
191 <td>Public method to enable or disable a watch expression.</td>
192 </tr><tr>
193 <td><a href="#DebuggerInterfacePython.remoteWatchpointIgnore">remoteWatchpointIgnore</a></td>
194 <td>Public method to ignore a watch expression the next couple of occurrences.</td>
195 </tr><tr>
196 <td><a href="#DebuggerInterfacePython.setCallTraceEnabled">setCallTraceEnabled</a></td>
197 <td>Public method to set the call trace state.</td>
198 </tr><tr>
199 <td><a href="#DebuggerInterfacePython.shutdown">shutdown</a></td>
200 <td>Public method to cleanly shut down.</td>
201 </tr><tr>
202 <td><a href="#DebuggerInterfacePython.startRemote">startRemote</a></td>
203 <td>Public method to start a remote Python interpreter.</td>
204 </tr><tr>
205 <td><a href="#DebuggerInterfacePython.startRemoteForProject">startRemoteForProject</a></td>
206 <td>Public method to start a remote Python interpreter for a project.</td>
207 </tr>
208 </table>
209 <h3>Static Methods</h3>
210 <table>
211 <tr><td>None</td></tr>
212 </table>
213 <a NAME="DebuggerInterfacePython.__init__" ID="DebuggerInterfacePython.__init__"></a>
214 <h4>DebuggerInterfacePython (Constructor)</h4>
215 <b>DebuggerInterfacePython</b>(<i>debugServer, passive, pythonVariant</i>)
216 <p>
217 Constructor
218 </p><dl>
219 <dt><i>debugServer</i> (DebugServer)</dt>
220 <dd>
221 reference to the debug server
222 </dd><dt><i>passive</i> (bool)</dt>
223 <dd>
224 flag indicating passive connection mode
225 </dd><dt><i>pythonVariant</i> (str (one of Python2 or Python3))</dt>
226 <dd>
227 Python variant to instantiate for
228 </dd>
229 </dl><a NAME="DebuggerInterfacePython.__askForkTo" ID="DebuggerInterfacePython.__askForkTo"></a>
230 <h4>DebuggerInterfacePython.__askForkTo</h4>
231 <b>__askForkTo</b>(<i></i>)
232 <p>
233 Private method to ask the user which branch of a fork to follow.
234 </p><a NAME="DebuggerInterfacePython.__handleJsonCommand" ID="DebuggerInterfacePython.__handleJsonCommand"></a>
235 <h4>DebuggerInterfacePython.__handleJsonCommand</h4>
236 <b>__handleJsonCommand</b>(<i>jsonStr</i>)
237 <p>
238 Private method to handle a command or response serialized as a
239 JSON string.
240 </p><dl>
241 <dt><i>jsonStr</i> (str)</dt>
242 <dd>
243 string containing the command or response received
244 from the debug backend
245 </dd>
246 </dl><a NAME="DebuggerInterfacePython.__identityTranslation" ID="DebuggerInterfacePython.__identityTranslation"></a>
247 <h4>DebuggerInterfacePython.__identityTranslation</h4>
248 <b>__identityTranslation</b>(<i>fn, remote2local=True</i>)
249 <p>
250 Private method to perform the identity path translation.
251 </p><dl>
252 <dt><i>fn</i></dt>
253 <dd>
254 filename to be translated (string)
255 </dd><dt><i>remote2local</i></dt>
256 <dd>
257 flag indicating the direction of translation
258 (False = local to remote, True = remote to local [default])
259 </dd>
260 </dl><dl>
261 <dt>Returns:</dt>
262 <dd>
263 translated filename (string)
264 </dd>
265 </dl><a NAME="DebuggerInterfacePython.__parseClientLine" ID="DebuggerInterfacePython.__parseClientLine"></a>
266 <h4>DebuggerInterfacePython.__parseClientLine</h4>
267 <b>__parseClientLine</b>(<i></i>)
268 <p>
269 Private method to handle data from the client.
270 </p><a NAME="DebuggerInterfacePython.__remoteTranslation" ID="DebuggerInterfacePython.__remoteTranslation"></a>
271 <h4>DebuggerInterfacePython.__remoteTranslation</h4>
272 <b>__remoteTranslation</b>(<i>fn, remote2local=True</i>)
273 <p>
274 Private method to perform the path translation.
275 </p><dl>
276 <dt><i>fn</i></dt>
277 <dd>
278 filename to be translated (string)
279 </dd><dt><i>remote2local</i></dt>
280 <dd>
281 flag indicating the direction of translation
282 (False = local to remote, True = remote to local [default])
283 </dd>
284 </dl><dl>
285 <dt>Returns:</dt>
286 <dd>
287 translated filename (string)
288 </dd>
289 </dl><a NAME="DebuggerInterfacePython.__sendJsonCommand" ID="DebuggerInterfacePython.__sendJsonCommand"></a>
290 <h4>DebuggerInterfacePython.__sendJsonCommand</h4>
291 <b>__sendJsonCommand</b>(<i>command, params</i>)
292 <p>
293 Private method to send a single command to the client.
294 </p><dl>
295 <dt><i>command</i> (str)</dt>
296 <dd>
297 command name to be sent
298 </dd><dt><i>params</i> (dict)</dt>
299 <dd>
300 dictionary of named parameters for the command
301 </dd>
302 </dl><a NAME="DebuggerInterfacePython.__startProcess" ID="DebuggerInterfacePython.__startProcess"></a>
303 <h4>DebuggerInterfacePython.__startProcess</h4>
304 <b>__startProcess</b>(<i>program, arguments, environment=None</i>)
305 <p>
306 Private method to start the debugger client process.
307 </p><dl>
308 <dt><i>program</i></dt>
309 <dd>
310 name of the executable to start (string)
311 </dd><dt><i>arguments</i></dt>
312 <dd>
313 arguments to be passed to the program (list of string)
314 </dd><dt><i>environment</i></dt>
315 <dd>
316 dictionary of environment settings to pass
317 (dict of string)
318 </dd>
319 </dl><dl>
320 <dt>Returns:</dt>
321 <dd>
322 the process object (QProcess) or None
323 </dd>
324 </dl><a NAME="DebuggerInterfacePython.flush" ID="DebuggerInterfacePython.flush"></a>
325 <h4>DebuggerInterfacePython.flush</h4>
326 <b>flush</b>(<i></i>)
327 <p>
328 Public slot to flush the queue.
329 </p><a NAME="DebuggerInterfacePython.getClientCapabilities" ID="DebuggerInterfacePython.getClientCapabilities"></a>
330 <h4>DebuggerInterfacePython.getClientCapabilities</h4>
331 <b>getClientCapabilities</b>(<i></i>)
332 <p>
333 Public method to retrieve the debug clients capabilities.
334 </p><dl>
335 <dt>Returns:</dt>
336 <dd>
337 debug client capabilities (integer)
338 </dd>
339 </dl><a NAME="DebuggerInterfacePython.isConnected" ID="DebuggerInterfacePython.isConnected"></a>
340 <h4>DebuggerInterfacePython.isConnected</h4>
341 <b>isConnected</b>(<i></i>)
342 <p>
343 Public method to test, if a debug client has connected.
344 </p><dl>
345 <dt>Returns:</dt>
346 <dd>
347 flag indicating the connection status (boolean)
348 </dd>
349 </dl><a NAME="DebuggerInterfacePython.newConnection" ID="DebuggerInterfacePython.newConnection"></a>
350 <h4>DebuggerInterfacePython.newConnection</h4>
351 <b>newConnection</b>(<i>sock</i>)
352 <p>
353 Public slot to handle a new connection.
354 </p><dl>
355 <dt><i>sock</i></dt>
356 <dd>
357 reference to the socket object (QTcpSocket)
358 </dd>
359 </dl><dl>
360 <dt>Returns:</dt>
361 <dd>
362 flag indicating success (boolean)
363 </dd>
364 </dl><a NAME="DebuggerInterfacePython.remoteBanner" ID="DebuggerInterfacePython.remoteBanner"></a>
365 <h4>DebuggerInterfacePython.remoteBanner</h4>
366 <b>remoteBanner</b>(<i></i>)
367 <p>
368 Public slot to get the banner info of the remote client.
369 </p><a NAME="DebuggerInterfacePython.remoteBreakpoint" ID="DebuggerInterfacePython.remoteBreakpoint"></a>
370 <h4>DebuggerInterfacePython.remoteBreakpoint</h4>
371 <b>remoteBreakpoint</b>(<i>fn, line, setBreakpoint, cond=None, temp=False</i>)
372 <p>
373 Public method to set or clear a breakpoint.
374 </p><dl>
375 <dt><i>fn</i></dt>
376 <dd>
377 filename the breakpoint belongs to (string)
378 </dd><dt><i>line</i></dt>
379 <dd>
380 linenumber of the breakpoint (int)
381 </dd><dt><i>setBreakpoint</i></dt>
382 <dd>
383 flag indicating setting or resetting a
384 breakpoint (boolean)
385 </dd><dt><i>cond</i></dt>
386 <dd>
387 condition of the breakpoint (string)
388 </dd><dt><i>temp</i></dt>
389 <dd>
390 flag indicating a temporary breakpoint (boolean)
391 </dd>
392 </dl><a NAME="DebuggerInterfacePython.remoteBreakpointEnable" ID="DebuggerInterfacePython.remoteBreakpointEnable"></a>
393 <h4>DebuggerInterfacePython.remoteBreakpointEnable</h4>
394 <b>remoteBreakpointEnable</b>(<i>fn, line, enable</i>)
395 <p>
396 Public method to enable or disable a breakpoint.
397 </p><dl>
398 <dt><i>fn</i></dt>
399 <dd>
400 filename the breakpoint belongs to (string)
401 </dd><dt><i>line</i></dt>
402 <dd>
403 linenumber of the breakpoint (int)
404 </dd><dt><i>enable</i></dt>
405 <dd>
406 flag indicating enabling or disabling a breakpoint
407 (boolean)
408 </dd>
409 </dl><a NAME="DebuggerInterfacePython.remoteBreakpointIgnore" ID="DebuggerInterfacePython.remoteBreakpointIgnore"></a>
410 <h4>DebuggerInterfacePython.remoteBreakpointIgnore</h4>
411 <b>remoteBreakpointIgnore</b>(<i>fn, line, count</i>)
412 <p>
413 Public method to ignore a breakpoint the next couple of occurrences.
414 </p><dl>
415 <dt><i>fn</i></dt>
416 <dd>
417 filename the breakpoint belongs to (string)
418 </dd><dt><i>line</i></dt>
419 <dd>
420 linenumber of the breakpoint (int)
421 </dd><dt><i>count</i></dt>
422 <dd>
423 number of occurrences to ignore (int)
424 </dd>
425 </dl><a NAME="DebuggerInterfacePython.remoteCapabilities" ID="DebuggerInterfacePython.remoteCapabilities"></a>
426 <h4>DebuggerInterfacePython.remoteCapabilities</h4>
427 <b>remoteCapabilities</b>(<i></i>)
428 <p>
429 Public slot to get the debug clients capabilities.
430 </p><a NAME="DebuggerInterfacePython.remoteClientSetFilter" ID="DebuggerInterfacePython.remoteClientSetFilter"></a>
431 <h4>DebuggerInterfacePython.remoteClientSetFilter</h4>
432 <b>remoteClientSetFilter</b>(<i>scope, filterStr</i>)
433 <p>
434 Public method to set a variables filter list.
435 </p><dl>
436 <dt><i>scope</i></dt>
437 <dd>
438 the scope of the variables (0 = local, 1 = global)
439 </dd><dt><i>filterStr</i></dt>
440 <dd>
441 regexp string for variable names to filter out
442 (string)
443 </dd>
444 </dl><a NAME="DebuggerInterfacePython.remoteClientVariable" ID="DebuggerInterfacePython.remoteClientVariable"></a>
445 <h4>DebuggerInterfacePython.remoteClientVariable</h4>
446 <b>remoteClientVariable</b>(<i>scope, filterList, var, framenr=0</i>)
447 <p>
448 Public method to request the variables of the debugged program.
449 </p><dl>
450 <dt><i>scope</i></dt>
451 <dd>
452 the scope of the variables (0 = local, 1 = global)
453 </dd><dt><i>filterList</i></dt>
454 <dd>
455 list of variable types to filter out (list of int)
456 </dd><dt><i>var</i></dt>
457 <dd>
458 list encoded name of variable to retrieve (string)
459 </dd><dt><i>framenr</i></dt>
460 <dd>
461 framenumber of the variables to retrieve (int)
462 </dd>
463 </dl><a NAME="DebuggerInterfacePython.remoteClientVariables" ID="DebuggerInterfacePython.remoteClientVariables"></a>
464 <h4>DebuggerInterfacePython.remoteClientVariables</h4>
465 <b>remoteClientVariables</b>(<i>scope, filterList, framenr=0</i>)
466 <p>
467 Public method to request the variables of the debugged program.
468 </p><dl>
469 <dt><i>scope</i></dt>
470 <dd>
471 the scope of the variables (0 = local, 1 = global)
472 </dd><dt><i>filterList</i></dt>
473 <dd>
474 list of variable types to filter out (list of int)
475 </dd><dt><i>framenr</i></dt>
476 <dd>
477 framenumber of the variables to retrieve (int)
478 </dd>
479 </dl><a NAME="DebuggerInterfacePython.remoteCompletion" ID="DebuggerInterfacePython.remoteCompletion"></a>
480 <h4>DebuggerInterfacePython.remoteCompletion</h4>
481 <b>remoteCompletion</b>(<i>text</i>)
482 <p>
483 Public slot to get the a list of possible commandline completions
484 from the remote client.
485 </p><dl>
486 <dt><i>text</i></dt>
487 <dd>
488 the text to be completed (string)
489 </dd>
490 </dl><a NAME="DebuggerInterfacePython.remoteContinue" ID="DebuggerInterfacePython.remoteContinue"></a>
491 <h4>DebuggerInterfacePython.remoteContinue</h4>
492 <b>remoteContinue</b>(<i>special=False</i>)
493 <p>
494 Public method to continue the debugged program.
495 </p><dl>
496 <dt><i>special</i></dt>
497 <dd>
498 flag indicating a special continue operation
499 </dd>
500 </dl><a NAME="DebuggerInterfacePython.remoteCoverage" ID="DebuggerInterfacePython.remoteCoverage"></a>
501 <h4>DebuggerInterfacePython.remoteCoverage</h4>
502 <b>remoteCoverage</b>(<i>fn, argv, wd, erase=False</i>)
503 <p>
504 Public method to load a new program to collect coverage data.
505 </p><dl>
506 <dt><i>fn</i></dt>
507 <dd>
508 the filename to run (string)
509 </dd><dt><i>argv</i></dt>
510 <dd>
511 the commandline arguments to pass to the program (string)
512 </dd><dt><i>wd</i></dt>
513 <dd>
514 the working directory for the program (string)
515 </dd><dt><i>erase=</i></dt>
516 <dd>
517 flag indicating that coverage info should be
518 cleared first (boolean)
519 </dd>
520 </dl><a NAME="DebuggerInterfacePython.remoteEnvironment" ID="DebuggerInterfacePython.remoteEnvironment"></a>
521 <h4>DebuggerInterfacePython.remoteEnvironment</h4>
522 <b>remoteEnvironment</b>(<i>env</i>)
523 <p>
524 Public method to set the environment for a program to debug, run, ...
525 </p><dl>
526 <dt><i>env</i></dt>
527 <dd>
528 environment settings (dictionary)
529 </dd>
530 </dl><a NAME="DebuggerInterfacePython.remoteLoad" ID="DebuggerInterfacePython.remoteLoad"></a>
531 <h4>DebuggerInterfacePython.remoteLoad</h4>
532 <b>remoteLoad</b>(<i>fn, argv, wd, traceInterpreter=False, autoContinue=True, autoFork=False, forkChild=False</i>)
533 <p>
534 Public method to load a new program to debug.
535 </p><dl>
536 <dt><i>fn</i></dt>
537 <dd>
538 the filename to debug (string)
539 </dd><dt><i>argv</i></dt>
540 <dd>
541 the commandline arguments to pass to the program (string)
542 </dd><dt><i>wd</i></dt>
543 <dd>
544 the working directory for the program (string)
545 </dd><dt><i>traceInterpreter=</i></dt>
546 <dd>
547 flag indicating if the interpreter library
548 should be traced as well (boolean)
549 </dd><dt><i>autoContinue=</i></dt>
550 <dd>
551 flag indicating, that the debugger should not
552 stop at the first executable line (boolean)
553 </dd><dt><i>autoFork=</i></dt>
554 <dd>
555 flag indicating the automatic fork mode (boolean)
556 </dd><dt><i>forkChild=</i></dt>
557 <dd>
558 flag indicating to debug the child after forking
559 (boolean)
560 </dd>
561 </dl><a NAME="DebuggerInterfacePython.remoteMoveIP" ID="DebuggerInterfacePython.remoteMoveIP"></a>
562 <h4>DebuggerInterfacePython.remoteMoveIP</h4>
563 <b>remoteMoveIP</b>(<i>line</i>)
564 <p>
565 Public method to move the instruction pointer to a different line.
566 </p><dl>
567 <dt><i>line</i></dt>
568 <dd>
569 the new line, where execution should be continued
570 </dd>
571 </dl><a NAME="DebuggerInterfacePython.remoteProfile" ID="DebuggerInterfacePython.remoteProfile"></a>
572 <h4>DebuggerInterfacePython.remoteProfile</h4>
573 <b>remoteProfile</b>(<i>fn, argv, wd, erase=False</i>)
574 <p>
575 Public method to load a new program to collect profiling data.
576 </p><dl>
577 <dt><i>fn</i></dt>
578 <dd>
579 the filename to run (string)
580 </dd><dt><i>argv</i></dt>
581 <dd>
582 the commandline arguments to pass to the program (string)
583 </dd><dt><i>wd</i></dt>
584 <dd>
585 the working directory for the program (string)
586 </dd><dt><i>erase=</i></dt>
587 <dd>
588 flag indicating that timing info should be cleared
589 first (boolean)
590 </dd>
591 </dl><a NAME="DebuggerInterfacePython.remoteRawInput" ID="DebuggerInterfacePython.remoteRawInput"></a>
592 <h4>DebuggerInterfacePython.remoteRawInput</h4>
593 <b>remoteRawInput</b>(<i>s</i>)
594 <p>
595 Public method to send the raw input to the debugged program.
596 </p><dl>
597 <dt><i>s</i></dt>
598 <dd>
599 the raw input (string)
600 </dd>
601 </dl><a NAME="DebuggerInterfacePython.remoteRun" ID="DebuggerInterfacePython.remoteRun"></a>
602 <h4>DebuggerInterfacePython.remoteRun</h4>
603 <b>remoteRun</b>(<i>fn, argv, wd, autoFork=False, forkChild=False</i>)
604 <p>
605 Public method to load a new program to run.
606 </p><dl>
607 <dt><i>fn</i></dt>
608 <dd>
609 the filename to run (string)
610 </dd><dt><i>argv</i></dt>
611 <dd>
612 the commandline arguments to pass to the program (string)
613 </dd><dt><i>wd</i></dt>
614 <dd>
615 the working directory for the program (string)
616 </dd><dt><i>autoFork=</i></dt>
617 <dd>
618 flag indicating the automatic fork mode (boolean)
619 </dd><dt><i>forkChild=</i></dt>
620 <dd>
621 flag indicating to debug the child after forking
622 (boolean)
623 </dd>
624 </dl><a NAME="DebuggerInterfacePython.remoteSetThread" ID="DebuggerInterfacePython.remoteSetThread"></a>
625 <h4>DebuggerInterfacePython.remoteSetThread</h4>
626 <b>remoteSetThread</b>(<i>tid</i>)
627 <p>
628 Public method to request to set the given thread as current thread.
629 </p><dl>
630 <dt><i>tid</i></dt>
631 <dd>
632 id of the thread (integer)
633 </dd>
634 </dl><a NAME="DebuggerInterfacePython.remoteStatement" ID="DebuggerInterfacePython.remoteStatement"></a>
635 <h4>DebuggerInterfacePython.remoteStatement</h4>
636 <b>remoteStatement</b>(<i>stmt</i>)
637 <p>
638 Public method to execute a Python statement.
639 </p><dl>
640 <dt><i>stmt</i></dt>
641 <dd>
642 the Python statement to execute (string). It
643 should not have a trailing newline.
644 </dd>
645 </dl><a NAME="DebuggerInterfacePython.remoteStep" ID="DebuggerInterfacePython.remoteStep"></a>
646 <h4>DebuggerInterfacePython.remoteStep</h4>
647 <b>remoteStep</b>(<i></i>)
648 <p>
649 Public method to single step the debugged program.
650 </p><a NAME="DebuggerInterfacePython.remoteStepOut" ID="DebuggerInterfacePython.remoteStepOut"></a>
651 <h4>DebuggerInterfacePython.remoteStepOut</h4>
652 <b>remoteStepOut</b>(<i></i>)
653 <p>
654 Public method to step out the debugged program.
655 </p><a NAME="DebuggerInterfacePython.remoteStepOver" ID="DebuggerInterfacePython.remoteStepOver"></a>
656 <h4>DebuggerInterfacePython.remoteStepOver</h4>
657 <b>remoteStepOver</b>(<i></i>)
658 <p>
659 Public method to step over the debugged program.
660 </p><a NAME="DebuggerInterfacePython.remoteStepQuit" ID="DebuggerInterfacePython.remoteStepQuit"></a>
661 <h4>DebuggerInterfacePython.remoteStepQuit</h4>
662 <b>remoteStepQuit</b>(<i></i>)
663 <p>
664 Public method to stop the debugged program.
665 </p><a NAME="DebuggerInterfacePython.remoteThreadList" ID="DebuggerInterfacePython.remoteThreadList"></a>
666 <h4>DebuggerInterfacePython.remoteThreadList</h4>
667 <b>remoteThreadList</b>(<i></i>)
668 <p>
669 Public method to request the list of threads from the client.
670 </p><a NAME="DebuggerInterfacePython.remoteUTPrepare" ID="DebuggerInterfacePython.remoteUTPrepare"></a>
671 <h4>DebuggerInterfacePython.remoteUTPrepare</h4>
672 <b>remoteUTPrepare</b>(<i>fn, tn, tfn, failed, cov, covname, coverase</i>)
673 <p>
674 Public method to prepare a new unittest run.
675 </p><dl>
676 <dt><i>fn</i></dt>
677 <dd>
678 the filename to load (string)
679 </dd><dt><i>tn</i></dt>
680 <dd>
681 the testname to load (string)
682 </dd><dt><i>tfn</i></dt>
683 <dd>
684 the test function name to load tests from (string)
685 </dd><dt><i>failed</i></dt>
686 <dd>
687 list of failed test, if only failed test should be run
688 (list of strings)
689 </dd><dt><i>cov</i></dt>
690 <dd>
691 flag indicating collection of coverage data is requested
692 (boolean)
693 </dd><dt><i>covname</i></dt>
694 <dd>
695 filename to be used to assemble the coverage caches
696 filename (string)
697 </dd><dt><i>coverase</i></dt>
698 <dd>
699 flag indicating erasure of coverage data is requested
700 (boolean)
701 </dd>
702 </dl><a NAME="DebuggerInterfacePython.remoteUTRun" ID="DebuggerInterfacePython.remoteUTRun"></a>
703 <h4>DebuggerInterfacePython.remoteUTRun</h4>
704 <b>remoteUTRun</b>(<i></i>)
705 <p>
706 Public method to start a unittest run.
707 </p><a NAME="DebuggerInterfacePython.remoteUTStop" ID="DebuggerInterfacePython.remoteUTStop"></a>
708 <h4>DebuggerInterfacePython.remoteUTStop</h4>
709 <b>remoteUTStop</b>(<i></i>)
710 <p>
711 Public method to stop a unittest run.
712 </p><a NAME="DebuggerInterfacePython.remoteWatchpoint" ID="DebuggerInterfacePython.remoteWatchpoint"></a>
713 <h4>DebuggerInterfacePython.remoteWatchpoint</h4>
714 <b>remoteWatchpoint</b>(<i>cond, setWatch, temp=False</i>)
715 <p>
716 Public method to set or clear a watch expression.
717 </p><dl>
718 <dt><i>cond</i></dt>
719 <dd>
720 expression of the watch expression (string)
721 </dd><dt><i>setWatch</i></dt>
722 <dd>
723 flag indicating setting or resetting a watch expression
724 (boolean)
725 </dd><dt><i>temp</i></dt>
726 <dd>
727 flag indicating a temporary watch expression (boolean)
728 </dd>
729 </dl><a NAME="DebuggerInterfacePython.remoteWatchpointEnable" ID="DebuggerInterfacePython.remoteWatchpointEnable"></a>
730 <h4>DebuggerInterfacePython.remoteWatchpointEnable</h4>
731 <b>remoteWatchpointEnable</b>(<i>cond, enable</i>)
732 <p>
733 Public method to enable or disable a watch expression.
734 </p><dl>
735 <dt><i>cond</i></dt>
736 <dd>
737 expression of the watch expression (string)
738 </dd><dt><i>enable</i></dt>
739 <dd>
740 flag indicating enabling or disabling a watch expression
741 (boolean)
742 </dd>
743 </dl><a NAME="DebuggerInterfacePython.remoteWatchpointIgnore" ID="DebuggerInterfacePython.remoteWatchpointIgnore"></a>
744 <h4>DebuggerInterfacePython.remoteWatchpointIgnore</h4>
745 <b>remoteWatchpointIgnore</b>(<i>cond, count</i>)
746 <p>
747 Public method to ignore a watch expression the next couple of
748 occurrences.
749 </p><dl>
750 <dt><i>cond</i></dt>
751 <dd>
752 expression of the watch expression (string)
753 </dd><dt><i>count</i></dt>
754 <dd>
755 number of occurrences to ignore (int)
756 </dd>
757 </dl><a NAME="DebuggerInterfacePython.setCallTraceEnabled" ID="DebuggerInterfacePython.setCallTraceEnabled"></a>
758 <h4>DebuggerInterfacePython.setCallTraceEnabled</h4>
759 <b>setCallTraceEnabled</b>(<i>on</i>)
760 <p>
761 Public method to set the call trace state.
762 </p><dl>
763 <dt><i>on</i></dt>
764 <dd>
765 flag indicating to enable the call trace function (boolean)
766 </dd>
767 </dl><a NAME="DebuggerInterfacePython.shutdown" ID="DebuggerInterfacePython.shutdown"></a>
768 <h4>DebuggerInterfacePython.shutdown</h4>
769 <b>shutdown</b>(<i></i>)
770 <p>
771 Public method to cleanly shut down.
772 </p><p>
773 It closes our socket and shuts down
774 the debug client. (Needed on Win OS)
775 </p><a NAME="DebuggerInterfacePython.startRemote" ID="DebuggerInterfacePython.startRemote"></a>
776 <h4>DebuggerInterfacePython.startRemote</h4>
777 <b>startRemote</b>(<i>port, runInConsole</i>)
778 <p>
779 Public method to start a remote Python interpreter.
780 </p><dl>
781 <dt><i>port</i></dt>
782 <dd>
783 portnumber the debug server is listening on (integer)
784 </dd><dt><i>runInConsole</i></dt>
785 <dd>
786 flag indicating to start the debugger in a
787 console window (boolean)
788 </dd>
789 </dl><dl>
790 <dt>Returns:</dt>
791 <dd>
792 client process object (QProcess), a flag to indicate
793 a network connection (boolean) and the name of the interpreter
794 in case of a local execution (string)
795 </dd>
796 </dl><a NAME="DebuggerInterfacePython.startRemoteForProject" ID="DebuggerInterfacePython.startRemoteForProject"></a>
797 <h4>DebuggerInterfacePython.startRemoteForProject</h4>
798 <b>startRemoteForProject</b>(<i>port, runInConsole</i>)
799 <p>
800 Public method to start a remote Python interpreter for a project.
801 </p><dl>
802 <dt><i>port</i></dt>
803 <dd>
804 portnumber the debug server is listening on (integer)
805 </dd><dt><i>runInConsole</i></dt>
806 <dd>
807 flag indicating to start the debugger in a
808 console window (boolean)
809 </dd>
810 </dl><dl>
811 <dt>Returns:</dt>
812 <dd>
813 client process object (QProcess), a flag to indicate
814 a network connection (boolean) and the name of the interpreter
815 in case of a local execution (string)
816 </dd>
817 </dl>
818 <div align="right"><a href="#top">Up</a></div>
819 <hr /><hr />
820 <a NAME="createDebuggerInterfacePython2" ID="createDebuggerInterfacePython2"></a>
821 <h2>createDebuggerInterfacePython2</h2>
822 <b>createDebuggerInterfacePython2</b>(<i>debugServer, passive</i>)
823 <p>
824 Module function to create a debugger interface instance.
825 </p><p>
826
827 </p><dl>
828 <dt><i>debugServer</i> (DebugServer)</dt>
829 <dd>
830 reference to the debug server
831 </dd><dt><i>passive</i> (bool)</dt>
832 <dd>
833 flag indicating passive connection mode
834 </dd>
835 </dl><dl>
836 <dt>Returns:</dt>
837 <dd>
838 instantiated debugger interface
839 </dd>
840 </dl><dl>
841 <dt>Return Type:</dt>
842 <dd>
843 DebuggerInterfacePython
844 </dd>
845 </dl>
846 <div align="right"><a href="#top">Up</a></div>
847 <hr /><hr />
848 <a NAME="createDebuggerInterfacePython3" ID="createDebuggerInterfacePython3"></a>
849 <h2>createDebuggerInterfacePython3</h2>
850 <b>createDebuggerInterfacePython3</b>(<i>debugServer, passive</i>)
851 <p>
852 Module function to create a debugger interface instance.
853 </p><p>
854
855 </p><dl>
856 <dt><i>debugServer</i> (DebugServer)</dt>
857 <dd>
858 reference to the debug server
859 </dd><dt><i>passive</i> (bool)</dt>
860 <dd>
861 flag indicating passive connection mode
862 </dd>
863 </dl><dl>
864 <dt>Returns:</dt>
865 <dd>
866 instantiated debugger interface
867 </dd>
868 </dl><dl>
869 <dt>Return Type:</dt>
870 <dd>
871 DebuggerInterfacePython
872 </dd>
873 </dl>
874 <div align="right"><a href="#top">Up</a></div>
875 <hr /><hr />
876 <a NAME="getRegistryData" ID="getRegistryData"></a>
877 <h2>getRegistryData</h2>
878 <b>getRegistryData</b>(<i></i>)
879 <p>
880 Module function to get characterizing data for the supported debugger
881 interfaces.
882 </p><dl>
883 <dt>Returns:</dt>
884 <dd>
885 list of tuples containing the client type, the client capabilities,
886 the client file type associations and a reference to the creation
887 function
888 </dd>
889 </dl><dl>
890 <dt>Return Type:</dt>
891 <dd>
892 list of tuple of (str, int, list of str, function)
893 </dd>
894 </dl>
895 <div align="right"><a href="#top">Up</a></div>
896 <hr />
897 </body></html>

eric ide

mercurial