eric6/Documentation/Source/eric6.Debugger.DebuggerInterfacePython.html

changeset 6942
2602857055c5
parent 6904
3f35037a08d4
child 7273
391d6b7b1eff
equal deleted inserted replaced
6941:f99d60d6b59b 6942:2602857055c5
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.__writeJsonCommandToSocket">__writeJsonCommandToSocket</a></td>
95 <td>Private method to write a JSON command to the socket.</td>
96 </tr><tr>
97 <td><a href="#DebuggerInterfacePython.flush">flush</a></td>
98 <td>Public slot to flush the queue.</td>
99 </tr><tr>
100 <td><a href="#DebuggerInterfacePython.getClientCapabilities">getClientCapabilities</a></td>
101 <td>Public method to retrieve the debug clients capabilities.</td>
102 </tr><tr>
103 <td><a href="#DebuggerInterfacePython.isConnected">isConnected</a></td>
104 <td>Public method to test, if a debug client has connected.</td>
105 </tr><tr>
106 <td><a href="#DebuggerInterfacePython.newConnection">newConnection</a></td>
107 <td>Public slot to handle a new connection.</td>
108 </tr><tr>
109 <td><a href="#DebuggerInterfacePython.remoteBanner">remoteBanner</a></td>
110 <td>Public slot to get the banner info of the remote client.</td>
111 </tr><tr>
112 <td><a href="#DebuggerInterfacePython.remoteBreakpoint">remoteBreakpoint</a></td>
113 <td>Public method to set or clear a breakpoint.</td>
114 </tr><tr>
115 <td><a href="#DebuggerInterfacePython.remoteBreakpointEnable">remoteBreakpointEnable</a></td>
116 <td>Public method to enable or disable a breakpoint.</td>
117 </tr><tr>
118 <td><a href="#DebuggerInterfacePython.remoteBreakpointIgnore">remoteBreakpointIgnore</a></td>
119 <td>Public method to ignore a breakpoint the next couple of occurrences.</td>
120 </tr><tr>
121 <td><a href="#DebuggerInterfacePython.remoteCapabilities">remoteCapabilities</a></td>
122 <td>Public slot to get the debug clients capabilities.</td>
123 </tr><tr>
124 <td><a href="#DebuggerInterfacePython.remoteClientSetFilter">remoteClientSetFilter</a></td>
125 <td>Public method to set a variables filter list.</td>
126 </tr><tr>
127 <td><a href="#DebuggerInterfacePython.remoteClientVariable">remoteClientVariable</a></td>
128 <td>Public method to request the variables of the debugged program.</td>
129 </tr><tr>
130 <td><a href="#DebuggerInterfacePython.remoteClientVariables">remoteClientVariables</a></td>
131 <td>Public method to request the variables of the debugged program.</td>
132 </tr><tr>
133 <td><a href="#DebuggerInterfacePython.remoteCompletion">remoteCompletion</a></td>
134 <td>Public slot to get the a list of possible commandline completions from the remote client.</td>
135 </tr><tr>
136 <td><a href="#DebuggerInterfacePython.remoteContinue">remoteContinue</a></td>
137 <td>Public method to continue the debugged program.</td>
138 </tr><tr>
139 <td><a href="#DebuggerInterfacePython.remoteCoverage">remoteCoverage</a></td>
140 <td>Public method to load a new program to collect coverage data.</td>
141 </tr><tr>
142 <td><a href="#DebuggerInterfacePython.remoteEnvironment">remoteEnvironment</a></td>
143 <td>Public method to set the environment for a program to debug, run, ...</td>
144 </tr><tr>
145 <td><a href="#DebuggerInterfacePython.remoteLoad">remoteLoad</a></td>
146 <td>Public method to load a new program to debug.</td>
147 </tr><tr>
148 <td><a href="#DebuggerInterfacePython.remoteMoveIP">remoteMoveIP</a></td>
149 <td>Public method to move the instruction pointer to a different line.</td>
150 </tr><tr>
151 <td><a href="#DebuggerInterfacePython.remoteProfile">remoteProfile</a></td>
152 <td>Public method to load a new program to collect profiling data.</td>
153 </tr><tr>
154 <td><a href="#DebuggerInterfacePython.remoteRawInput">remoteRawInput</a></td>
155 <td>Public method to send the raw input to the debugged program.</td>
156 </tr><tr>
157 <td><a href="#DebuggerInterfacePython.remoteRun">remoteRun</a></td>
158 <td>Public method to load a new program to run.</td>
159 </tr><tr>
160 <td><a href="#DebuggerInterfacePython.remoteSetThread">remoteSetThread</a></td>
161 <td>Public method to request to set the given thread as current thread.</td>
162 </tr><tr>
163 <td><a href="#DebuggerInterfacePython.remoteStatement">remoteStatement</a></td>
164 <td>Public method to execute a Python statement.</td>
165 </tr><tr>
166 <td><a href="#DebuggerInterfacePython.remoteStep">remoteStep</a></td>
167 <td>Public method to single step the debugged program.</td>
168 </tr><tr>
169 <td><a href="#DebuggerInterfacePython.remoteStepOut">remoteStepOut</a></td>
170 <td>Public method to step out the debugged program.</td>
171 </tr><tr>
172 <td><a href="#DebuggerInterfacePython.remoteStepOver">remoteStepOver</a></td>
173 <td>Public method to step over the debugged program.</td>
174 </tr><tr>
175 <td><a href="#DebuggerInterfacePython.remoteStepQuit">remoteStepQuit</a></td>
176 <td>Public method to stop the debugged program.</td>
177 </tr><tr>
178 <td><a href="#DebuggerInterfacePython.remoteThreadList">remoteThreadList</a></td>
179 <td>Public method to request the list of threads from the client.</td>
180 </tr><tr>
181 <td><a href="#DebuggerInterfacePython.remoteUTDiscover">remoteUTDiscover</a></td>
182 <td>Public method to perform a test case discovery.</td>
183 </tr><tr>
184 <td><a href="#DebuggerInterfacePython.remoteUTPrepare">remoteUTPrepare</a></td>
185 <td>Public method to prepare a new unittest run.</td>
186 </tr><tr>
187 <td><a href="#DebuggerInterfacePython.remoteUTRun">remoteUTRun</a></td>
188 <td>Public method to start a unittest run.</td>
189 </tr><tr>
190 <td><a href="#DebuggerInterfacePython.remoteUTStop">remoteUTStop</a></td>
191 <td>Public method to stop a unittest run.</td>
192 </tr><tr>
193 <td><a href="#DebuggerInterfacePython.remoteWatchpoint">remoteWatchpoint</a></td>
194 <td>Public method to set or clear a watch expression.</td>
195 </tr><tr>
196 <td><a href="#DebuggerInterfacePython.remoteWatchpointEnable">remoteWatchpointEnable</a></td>
197 <td>Public method to enable or disable a watch expression.</td>
198 </tr><tr>
199 <td><a href="#DebuggerInterfacePython.remoteWatchpointIgnore">remoteWatchpointIgnore</a></td>
200 <td>Public method to ignore a watch expression the next couple of occurrences.</td>
201 </tr><tr>
202 <td><a href="#DebuggerInterfacePython.setCallTraceEnabled">setCallTraceEnabled</a></td>
203 <td>Public method to set the call trace state.</td>
204 </tr><tr>
205 <td><a href="#DebuggerInterfacePython.shutdown">shutdown</a></td>
206 <td>Public method to cleanly shut down.</td>
207 </tr><tr>
208 <td><a href="#DebuggerInterfacePython.startRemote">startRemote</a></td>
209 <td>Public method to start a remote Python interpreter.</td>
210 </tr><tr>
211 <td><a href="#DebuggerInterfacePython.startRemoteForProject">startRemoteForProject</a></td>
212 <td>Public method to start a remote Python interpreter for a project.</td>
213 </tr>
214 </table>
215 <h3>Static Methods</h3>
216 <table>
217 <tr><td>None</td></tr>
218 </table>
219 <a NAME="DebuggerInterfacePython.__init__" ID="DebuggerInterfacePython.__init__"></a>
220 <h4>DebuggerInterfacePython (Constructor)</h4>
221 <b>DebuggerInterfacePython</b>(<i>debugServer, passive, pythonVariant</i>)
222 <p>
223 Constructor
224 </p><dl>
225 <dt><i>debugServer</i> (DebugServer)</dt>
226 <dd>
227 reference to the debug server
228 </dd><dt><i>passive</i> (bool)</dt>
229 <dd>
230 flag indicating passive connection mode
231 </dd><dt><i>pythonVariant</i> (str (one of Python2 or Python3))</dt>
232 <dd>
233 Python variant to instantiate for
234 </dd>
235 </dl><a NAME="DebuggerInterfacePython.__askForkTo" ID="DebuggerInterfacePython.__askForkTo"></a>
236 <h4>DebuggerInterfacePython.__askForkTo</h4>
237 <b>__askForkTo</b>(<i></i>)
238 <p>
239 Private method to ask the user which branch of a fork to follow.
240 </p><a NAME="DebuggerInterfacePython.__handleJsonCommand" ID="DebuggerInterfacePython.__handleJsonCommand"></a>
241 <h4>DebuggerInterfacePython.__handleJsonCommand</h4>
242 <b>__handleJsonCommand</b>(<i>jsonStr</i>)
243 <p>
244 Private method to handle a command or response serialized as a
245 JSON string.
246 </p><dl>
247 <dt><i>jsonStr</i> (str)</dt>
248 <dd>
249 string containing the command or response received
250 from the debug backend
251 </dd>
252 </dl><a NAME="DebuggerInterfacePython.__identityTranslation" ID="DebuggerInterfacePython.__identityTranslation"></a>
253 <h4>DebuggerInterfacePython.__identityTranslation</h4>
254 <b>__identityTranslation</b>(<i>fn, remote2local=True</i>)
255 <p>
256 Private method to perform the identity path translation.
257 </p><dl>
258 <dt><i>fn</i></dt>
259 <dd>
260 filename to be translated (string)
261 </dd><dt><i>remote2local</i></dt>
262 <dd>
263 flag indicating the direction of translation
264 (False = local to remote, True = remote to local [default])
265 </dd>
266 </dl><dl>
267 <dt>Returns:</dt>
268 <dd>
269 translated filename (string)
270 </dd>
271 </dl><a NAME="DebuggerInterfacePython.__parseClientLine" ID="DebuggerInterfacePython.__parseClientLine"></a>
272 <h4>DebuggerInterfacePython.__parseClientLine</h4>
273 <b>__parseClientLine</b>(<i></i>)
274 <p>
275 Private method to handle data from the client.
276 </p><a NAME="DebuggerInterfacePython.__remoteTranslation" ID="DebuggerInterfacePython.__remoteTranslation"></a>
277 <h4>DebuggerInterfacePython.__remoteTranslation</h4>
278 <b>__remoteTranslation</b>(<i>fn, remote2local=True</i>)
279 <p>
280 Private method to perform the path translation.
281 </p><dl>
282 <dt><i>fn</i></dt>
283 <dd>
284 filename to be translated (string)
285 </dd><dt><i>remote2local</i></dt>
286 <dd>
287 flag indicating the direction of translation
288 (False = local to remote, True = remote to local [default])
289 </dd>
290 </dl><dl>
291 <dt>Returns:</dt>
292 <dd>
293 translated filename (string)
294 </dd>
295 </dl><a NAME="DebuggerInterfacePython.__sendJsonCommand" ID="DebuggerInterfacePython.__sendJsonCommand"></a>
296 <h4>DebuggerInterfacePython.__sendJsonCommand</h4>
297 <b>__sendJsonCommand</b>(<i>command, params</i>)
298 <p>
299 Private method to send a single command to the client.
300 </p><dl>
301 <dt><i>command</i> (str)</dt>
302 <dd>
303 command name to be sent
304 </dd><dt><i>params</i> (dict)</dt>
305 <dd>
306 dictionary of named parameters for the command
307 </dd>
308 </dl><a NAME="DebuggerInterfacePython.__startProcess" ID="DebuggerInterfacePython.__startProcess"></a>
309 <h4>DebuggerInterfacePython.__startProcess</h4>
310 <b>__startProcess</b>(<i>program, arguments, environment=None, workingDir=None</i>)
311 <p>
312 Private method to start the debugger client process.
313 </p><dl>
314 <dt><i>program</i> (str)</dt>
315 <dd>
316 name of the executable to start
317 </dd><dt><i>arguments</i> (list of str)</dt>
318 <dd>
319 arguments to be passed to the program
320 </dd><dt><i>environment</i> (dict of str)</dt>
321 <dd>
322 dictionary of environment settings to pass
323 </dd><dt><i>workingDir</i> (str)</dt>
324 <dd>
325 directory to start the debugger client in
326 </dd>
327 </dl><dl>
328 <dt>Returns:</dt>
329 <dd>
330 the process object
331 </dd>
332 </dl><dl>
333 <dt>Return Type:</dt>
334 <dd>
335 QProcess or None
336 </dd>
337 </dl><a NAME="DebuggerInterfacePython.__writeJsonCommandToSocket" ID="DebuggerInterfacePython.__writeJsonCommandToSocket"></a>
338 <h4>DebuggerInterfacePython.__writeJsonCommandToSocket</h4>
339 <b>__writeJsonCommandToSocket</b>(<i>cmd</i>)
340 <p>
341 Private method to write a JSON command to the socket.
342 </p><dl>
343 <dt><i>cmd</i> (str)</dt>
344 <dd>
345 JSON command to be sent
346 </dd>
347 </dl><a NAME="DebuggerInterfacePython.flush" ID="DebuggerInterfacePython.flush"></a>
348 <h4>DebuggerInterfacePython.flush</h4>
349 <b>flush</b>(<i></i>)
350 <p>
351 Public slot to flush the queue.
352 </p><a NAME="DebuggerInterfacePython.getClientCapabilities" ID="DebuggerInterfacePython.getClientCapabilities"></a>
353 <h4>DebuggerInterfacePython.getClientCapabilities</h4>
354 <b>getClientCapabilities</b>(<i></i>)
355 <p>
356 Public method to retrieve the debug clients capabilities.
357 </p><dl>
358 <dt>Returns:</dt>
359 <dd>
360 debug client capabilities (integer)
361 </dd>
362 </dl><a NAME="DebuggerInterfacePython.isConnected" ID="DebuggerInterfacePython.isConnected"></a>
363 <h4>DebuggerInterfacePython.isConnected</h4>
364 <b>isConnected</b>(<i></i>)
365 <p>
366 Public method to test, if a debug client has connected.
367 </p><dl>
368 <dt>Returns:</dt>
369 <dd>
370 flag indicating the connection status (boolean)
371 </dd>
372 </dl><a NAME="DebuggerInterfacePython.newConnection" ID="DebuggerInterfacePython.newConnection"></a>
373 <h4>DebuggerInterfacePython.newConnection</h4>
374 <b>newConnection</b>(<i>sock</i>)
375 <p>
376 Public slot to handle a new connection.
377 </p><dl>
378 <dt><i>sock</i></dt>
379 <dd>
380 reference to the socket object (QTcpSocket)
381 </dd>
382 </dl><dl>
383 <dt>Returns:</dt>
384 <dd>
385 flag indicating success (boolean)
386 </dd>
387 </dl><a NAME="DebuggerInterfacePython.remoteBanner" ID="DebuggerInterfacePython.remoteBanner"></a>
388 <h4>DebuggerInterfacePython.remoteBanner</h4>
389 <b>remoteBanner</b>(<i></i>)
390 <p>
391 Public slot to get the banner info of the remote client.
392 </p><a NAME="DebuggerInterfacePython.remoteBreakpoint" ID="DebuggerInterfacePython.remoteBreakpoint"></a>
393 <h4>DebuggerInterfacePython.remoteBreakpoint</h4>
394 <b>remoteBreakpoint</b>(<i>fn, line, setBreakpoint, cond=None, temp=False</i>)
395 <p>
396 Public method to set or clear 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>setBreakpoint</i></dt>
405 <dd>
406 flag indicating setting or resetting a
407 breakpoint (boolean)
408 </dd><dt><i>cond</i></dt>
409 <dd>
410 condition of the breakpoint (string)
411 </dd><dt><i>temp</i></dt>
412 <dd>
413 flag indicating a temporary breakpoint (boolean)
414 </dd>
415 </dl><a NAME="DebuggerInterfacePython.remoteBreakpointEnable" ID="DebuggerInterfacePython.remoteBreakpointEnable"></a>
416 <h4>DebuggerInterfacePython.remoteBreakpointEnable</h4>
417 <b>remoteBreakpointEnable</b>(<i>fn, line, enable</i>)
418 <p>
419 Public method to enable or disable a breakpoint.
420 </p><dl>
421 <dt><i>fn</i></dt>
422 <dd>
423 filename the breakpoint belongs to (string)
424 </dd><dt><i>line</i></dt>
425 <dd>
426 linenumber of the breakpoint (int)
427 </dd><dt><i>enable</i></dt>
428 <dd>
429 flag indicating enabling or disabling a breakpoint
430 (boolean)
431 </dd>
432 </dl><a NAME="DebuggerInterfacePython.remoteBreakpointIgnore" ID="DebuggerInterfacePython.remoteBreakpointIgnore"></a>
433 <h4>DebuggerInterfacePython.remoteBreakpointIgnore</h4>
434 <b>remoteBreakpointIgnore</b>(<i>fn, line, count</i>)
435 <p>
436 Public method to ignore a breakpoint the next couple of occurrences.
437 </p><dl>
438 <dt><i>fn</i></dt>
439 <dd>
440 filename the breakpoint belongs to (string)
441 </dd><dt><i>line</i></dt>
442 <dd>
443 linenumber of the breakpoint (int)
444 </dd><dt><i>count</i></dt>
445 <dd>
446 number of occurrences to ignore (int)
447 </dd>
448 </dl><a NAME="DebuggerInterfacePython.remoteCapabilities" ID="DebuggerInterfacePython.remoteCapabilities"></a>
449 <h4>DebuggerInterfacePython.remoteCapabilities</h4>
450 <b>remoteCapabilities</b>(<i></i>)
451 <p>
452 Public slot to get the debug clients capabilities.
453 </p><a NAME="DebuggerInterfacePython.remoteClientSetFilter" ID="DebuggerInterfacePython.remoteClientSetFilter"></a>
454 <h4>DebuggerInterfacePython.remoteClientSetFilter</h4>
455 <b>remoteClientSetFilter</b>(<i>scope, filterStr</i>)
456 <p>
457 Public method to set a variables filter list.
458 </p><dl>
459 <dt><i>scope</i></dt>
460 <dd>
461 the scope of the variables (0 = local, 1 = global)
462 </dd><dt><i>filterStr</i></dt>
463 <dd>
464 regexp string for variable names to filter out
465 (string)
466 </dd>
467 </dl><a NAME="DebuggerInterfacePython.remoteClientVariable" ID="DebuggerInterfacePython.remoteClientVariable"></a>
468 <h4>DebuggerInterfacePython.remoteClientVariable</h4>
469 <b>remoteClientVariable</b>(<i>scope, filterList, var, framenr=0, maxSize=0</i>)
470 <p>
471 Public method to request the variables of the debugged program.
472 </p><dl>
473 <dt><i>scope</i> (int)</dt>
474 <dd>
475 the scope of the variables (0 = local, 1 = global)
476 </dd><dt><i>filterList</i> (list of int)</dt>
477 <dd>
478 list of variable types to filter out
479 </dd><dt><i>var</i> (list of str)</dt>
480 <dd>
481 list encoded name of variable to retrieve
482 </dd><dt><i>framenr</i> (int)</dt>
483 <dd>
484 framenumber of the variables to retrieve
485 </dd><dt><i>maxSize</i> (int)</dt>
486 <dd>
487 maximum size the formatted value of a variable will
488 be shown. If it is bigger than that, a 'too big' indication will
489 be given (@@TOO_BIG_TO_SHOW@@).
490 </dd>
491 </dl><a NAME="DebuggerInterfacePython.remoteClientVariables" ID="DebuggerInterfacePython.remoteClientVariables"></a>
492 <h4>DebuggerInterfacePython.remoteClientVariables</h4>
493 <b>remoteClientVariables</b>(<i>scope, filterList, framenr=0, maxSize=0</i>)
494 <p>
495 Public method to request the variables of the debugged program.
496 </p><dl>
497 <dt><i>scope</i> (int)</dt>
498 <dd>
499 the scope of the variables (0 = local, 1 = global)
500 </dd><dt><i>filterList</i> (list of int)</dt>
501 <dd>
502 list of variable types to filter out
503 </dd><dt><i>framenr</i> (int)</dt>
504 <dd>
505 framenumber of the variables to retrieve
506 </dd><dt><i>maxSize</i> (int)</dt>
507 <dd>
508 maximum size the formatted value of a variable will
509 be shown. If it is bigger than that, a 'too big' indication will
510 be given (@@TOO_BIG_TO_SHOW@@).
511 </dd>
512 </dl><a NAME="DebuggerInterfacePython.remoteCompletion" ID="DebuggerInterfacePython.remoteCompletion"></a>
513 <h4>DebuggerInterfacePython.remoteCompletion</h4>
514 <b>remoteCompletion</b>(<i>text</i>)
515 <p>
516 Public slot to get the a list of possible commandline completions
517 from the remote client.
518 </p><dl>
519 <dt><i>text</i></dt>
520 <dd>
521 the text to be completed (string)
522 </dd>
523 </dl><a NAME="DebuggerInterfacePython.remoteContinue" ID="DebuggerInterfacePython.remoteContinue"></a>
524 <h4>DebuggerInterfacePython.remoteContinue</h4>
525 <b>remoteContinue</b>(<i>special=False</i>)
526 <p>
527 Public method to continue the debugged program.
528 </p><dl>
529 <dt><i>special</i></dt>
530 <dd>
531 flag indicating a special continue operation
532 </dd>
533 </dl><a NAME="DebuggerInterfacePython.remoteCoverage" ID="DebuggerInterfacePython.remoteCoverage"></a>
534 <h4>DebuggerInterfacePython.remoteCoverage</h4>
535 <b>remoteCoverage</b>(<i>fn, argv, wd, erase=False</i>)
536 <p>
537 Public method to load a new program to collect coverage data.
538 </p><dl>
539 <dt><i>fn</i></dt>
540 <dd>
541 the filename to run (string)
542 </dd><dt><i>argv</i></dt>
543 <dd>
544 the commandline arguments to pass to the program (string)
545 </dd><dt><i>wd</i></dt>
546 <dd>
547 the working directory for the program (string)
548 </dd><dt><i>erase=</i></dt>
549 <dd>
550 flag indicating that coverage info should be
551 cleared first (boolean)
552 </dd>
553 </dl><a NAME="DebuggerInterfacePython.remoteEnvironment" ID="DebuggerInterfacePython.remoteEnvironment"></a>
554 <h4>DebuggerInterfacePython.remoteEnvironment</h4>
555 <b>remoteEnvironment</b>(<i>env</i>)
556 <p>
557 Public method to set the environment for a program to debug, run, ...
558 </p><dl>
559 <dt><i>env</i></dt>
560 <dd>
561 environment settings (dictionary)
562 </dd>
563 </dl><a NAME="DebuggerInterfacePython.remoteLoad" ID="DebuggerInterfacePython.remoteLoad"></a>
564 <h4>DebuggerInterfacePython.remoteLoad</h4>
565 <b>remoteLoad</b>(<i>fn, argv, wd, traceInterpreter=False, autoContinue=True, autoFork=False, forkChild=False</i>)
566 <p>
567 Public method to load a new program to debug.
568 </p><dl>
569 <dt><i>fn</i></dt>
570 <dd>
571 the filename to debug (string)
572 </dd><dt><i>argv</i></dt>
573 <dd>
574 the commandline arguments to pass to the program (string)
575 </dd><dt><i>wd</i></dt>
576 <dd>
577 the working directory for the program (string)
578 </dd><dt><i>traceInterpreter=</i></dt>
579 <dd>
580 flag indicating if the interpreter library
581 should be traced as well (boolean)
582 </dd><dt><i>autoContinue=</i></dt>
583 <dd>
584 flag indicating, that the debugger should not
585 stop at the first executable line (boolean)
586 </dd><dt><i>autoFork=</i></dt>
587 <dd>
588 flag indicating the automatic fork mode (boolean)
589 </dd><dt><i>forkChild=</i></dt>
590 <dd>
591 flag indicating to debug the child after forking
592 (boolean)
593 </dd>
594 </dl><a NAME="DebuggerInterfacePython.remoteMoveIP" ID="DebuggerInterfacePython.remoteMoveIP"></a>
595 <h4>DebuggerInterfacePython.remoteMoveIP</h4>
596 <b>remoteMoveIP</b>(<i>line</i>)
597 <p>
598 Public method to move the instruction pointer to a different line.
599 </p><dl>
600 <dt><i>line</i></dt>
601 <dd>
602 the new line, where execution should be continued
603 </dd>
604 </dl><a NAME="DebuggerInterfacePython.remoteProfile" ID="DebuggerInterfacePython.remoteProfile"></a>
605 <h4>DebuggerInterfacePython.remoteProfile</h4>
606 <b>remoteProfile</b>(<i>fn, argv, wd, erase=False</i>)
607 <p>
608 Public method to load a new program to collect profiling data.
609 </p><dl>
610 <dt><i>fn</i></dt>
611 <dd>
612 the filename to run (string)
613 </dd><dt><i>argv</i></dt>
614 <dd>
615 the commandline arguments to pass to the program (string)
616 </dd><dt><i>wd</i></dt>
617 <dd>
618 the working directory for the program (string)
619 </dd><dt><i>erase=</i></dt>
620 <dd>
621 flag indicating that timing info should be cleared
622 first (boolean)
623 </dd>
624 </dl><a NAME="DebuggerInterfacePython.remoteRawInput" ID="DebuggerInterfacePython.remoteRawInput"></a>
625 <h4>DebuggerInterfacePython.remoteRawInput</h4>
626 <b>remoteRawInput</b>(<i>s</i>)
627 <p>
628 Public method to send the raw input to the debugged program.
629 </p><dl>
630 <dt><i>s</i></dt>
631 <dd>
632 the raw input (string)
633 </dd>
634 </dl><a NAME="DebuggerInterfacePython.remoteRun" ID="DebuggerInterfacePython.remoteRun"></a>
635 <h4>DebuggerInterfacePython.remoteRun</h4>
636 <b>remoteRun</b>(<i>fn, argv, wd, autoFork=False, forkChild=False</i>)
637 <p>
638 Public method to load a new program to run.
639 </p><dl>
640 <dt><i>fn</i></dt>
641 <dd>
642 the filename to run (string)
643 </dd><dt><i>argv</i></dt>
644 <dd>
645 the commandline arguments to pass to the program (string)
646 </dd><dt><i>wd</i></dt>
647 <dd>
648 the working directory for the program (string)
649 </dd><dt><i>autoFork=</i></dt>
650 <dd>
651 flag indicating the automatic fork mode (boolean)
652 </dd><dt><i>forkChild=</i></dt>
653 <dd>
654 flag indicating to debug the child after forking
655 (boolean)
656 </dd>
657 </dl><a NAME="DebuggerInterfacePython.remoteSetThread" ID="DebuggerInterfacePython.remoteSetThread"></a>
658 <h4>DebuggerInterfacePython.remoteSetThread</h4>
659 <b>remoteSetThread</b>(<i>tid</i>)
660 <p>
661 Public method to request to set the given thread as current thread.
662 </p><dl>
663 <dt><i>tid</i></dt>
664 <dd>
665 id of the thread (integer)
666 </dd>
667 </dl><a NAME="DebuggerInterfacePython.remoteStatement" ID="DebuggerInterfacePython.remoteStatement"></a>
668 <h4>DebuggerInterfacePython.remoteStatement</h4>
669 <b>remoteStatement</b>(<i>stmt</i>)
670 <p>
671 Public method to execute a Python statement.
672 </p><dl>
673 <dt><i>stmt</i></dt>
674 <dd>
675 the Python statement to execute (string). It
676 should not have a trailing newline.
677 </dd>
678 </dl><a NAME="DebuggerInterfacePython.remoteStep" ID="DebuggerInterfacePython.remoteStep"></a>
679 <h4>DebuggerInterfacePython.remoteStep</h4>
680 <b>remoteStep</b>(<i></i>)
681 <p>
682 Public method to single step the debugged program.
683 </p><a NAME="DebuggerInterfacePython.remoteStepOut" ID="DebuggerInterfacePython.remoteStepOut"></a>
684 <h4>DebuggerInterfacePython.remoteStepOut</h4>
685 <b>remoteStepOut</b>(<i></i>)
686 <p>
687 Public method to step out the debugged program.
688 </p><a NAME="DebuggerInterfacePython.remoteStepOver" ID="DebuggerInterfacePython.remoteStepOver"></a>
689 <h4>DebuggerInterfacePython.remoteStepOver</h4>
690 <b>remoteStepOver</b>(<i></i>)
691 <p>
692 Public method to step over the debugged program.
693 </p><a NAME="DebuggerInterfacePython.remoteStepQuit" ID="DebuggerInterfacePython.remoteStepQuit"></a>
694 <h4>DebuggerInterfacePython.remoteStepQuit</h4>
695 <b>remoteStepQuit</b>(<i></i>)
696 <p>
697 Public method to stop the debugged program.
698 </p><a NAME="DebuggerInterfacePython.remoteThreadList" ID="DebuggerInterfacePython.remoteThreadList"></a>
699 <h4>DebuggerInterfacePython.remoteThreadList</h4>
700 <b>remoteThreadList</b>(<i></i>)
701 <p>
702 Public method to request the list of threads from the client.
703 </p><a NAME="DebuggerInterfacePython.remoteUTDiscover" ID="DebuggerInterfacePython.remoteUTDiscover"></a>
704 <h4>DebuggerInterfacePython.remoteUTDiscover</h4>
705 <b>remoteUTDiscover</b>(<i>syspath, workdir, discoveryStart</i>)
706 <p>
707 Public method to perform a test case discovery.
708 </p><dl>
709 <dt><i>syspath</i> (list of str)</dt>
710 <dd>
711 list of directories to be added to sys.path on the
712 remote side
713 </dd><dt><i>workdir</i> (str)</dt>
714 <dd>
715 path name of the working directory
716 </dd><dt><i>discoveryStart</i> (str)</dt>
717 <dd>
718 directory to start auto-discovery at
719 </dd>
720 </dl><a NAME="DebuggerInterfacePython.remoteUTPrepare" ID="DebuggerInterfacePython.remoteUTPrepare"></a>
721 <h4>DebuggerInterfacePython.remoteUTPrepare</h4>
722 <b>remoteUTPrepare</b>(<i>fn, tn, tfn, failed, cov, covname, coverase, syspath, workdir, discover, discoveryStart, testCases, debug</i>)
723 <p>
724 Public method to prepare a new unittest run.
725 </p><dl>
726 <dt><i>fn</i> (str)</dt>
727 <dd>
728 name of file to load
729 </dd><dt><i>tn</i> (str)</dt>
730 <dd>
731 name of test to load
732 </dd><dt><i>tfn</i> (str)</dt>
733 <dd>
734 test function name to load tests from
735 </dd><dt><i>failed</i> (list of str)</dt>
736 <dd>
737 list of failed test, if only failed test should be run
738 </dd><dt><i>cov</i> (bool)</dt>
739 <dd>
740 flag indicating collection of coverage data is requested
741 </dd><dt><i>covname</i> (str)</dt>
742 <dd>
743 name of file to be used to assemble the coverage caches
744 filename
745 </dd><dt><i>coverase</i> (bool)</dt>
746 <dd>
747 flag indicating erasure of coverage data is requested
748 </dd><dt><i>syspath</i> (list of str)</dt>
749 <dd>
750 list of directories to be added to sys.path on the
751 remote side
752 </dd><dt><i>workdir</i> (str)</dt>
753 <dd>
754 path name of the working directory
755 </dd><dt><i>discover</i> (bool)</dt>
756 <dd>
757 flag indicating to discover the tests automatically
758 </dd><dt><i>discoveryStart</i> (str)</dt>
759 <dd>
760 directory to start auto-discovery at
761 </dd><dt><i>testCases</i> (list of str)</dt>
762 <dd>
763 list of test cases to be loaded
764 </dd><dt><i>debug</i> (bool)</dt>
765 <dd>
766 flag indicating to run unittest with debugging
767 </dd>
768 </dl><a NAME="DebuggerInterfacePython.remoteUTRun" ID="DebuggerInterfacePython.remoteUTRun"></a>
769 <h4>DebuggerInterfacePython.remoteUTRun</h4>
770 <b>remoteUTRun</b>(<i>debug, failfast</i>)
771 <p>
772 Public method to start a unittest run.
773 </p><dl>
774 <dt><i>debug</i> (bool)</dt>
775 <dd>
776 flag indicating to run unittest with debugging
777 </dd><dt><i>failfast</i> (bool)</dt>
778 <dd>
779 flag indicating to stop at the first error
780 </dd>
781 </dl><a NAME="DebuggerInterfacePython.remoteUTStop" ID="DebuggerInterfacePython.remoteUTStop"></a>
782 <h4>DebuggerInterfacePython.remoteUTStop</h4>
783 <b>remoteUTStop</b>(<i></i>)
784 <p>
785 Public method to stop a unittest run.
786 </p><a NAME="DebuggerInterfacePython.remoteWatchpoint" ID="DebuggerInterfacePython.remoteWatchpoint"></a>
787 <h4>DebuggerInterfacePython.remoteWatchpoint</h4>
788 <b>remoteWatchpoint</b>(<i>cond, setWatch, temp=False</i>)
789 <p>
790 Public method to set or clear a watch expression.
791 </p><dl>
792 <dt><i>cond</i></dt>
793 <dd>
794 expression of the watch expression (string)
795 </dd><dt><i>setWatch</i></dt>
796 <dd>
797 flag indicating setting or resetting a watch expression
798 (boolean)
799 </dd><dt><i>temp</i></dt>
800 <dd>
801 flag indicating a temporary watch expression (boolean)
802 </dd>
803 </dl><a NAME="DebuggerInterfacePython.remoteWatchpointEnable" ID="DebuggerInterfacePython.remoteWatchpointEnable"></a>
804 <h4>DebuggerInterfacePython.remoteWatchpointEnable</h4>
805 <b>remoteWatchpointEnable</b>(<i>cond, enable</i>)
806 <p>
807 Public method to enable or disable a watch expression.
808 </p><dl>
809 <dt><i>cond</i></dt>
810 <dd>
811 expression of the watch expression (string)
812 </dd><dt><i>enable</i></dt>
813 <dd>
814 flag indicating enabling or disabling a watch expression
815 (boolean)
816 </dd>
817 </dl><a NAME="DebuggerInterfacePython.remoteWatchpointIgnore" ID="DebuggerInterfacePython.remoteWatchpointIgnore"></a>
818 <h4>DebuggerInterfacePython.remoteWatchpointIgnore</h4>
819 <b>remoteWatchpointIgnore</b>(<i>cond, count</i>)
820 <p>
821 Public method to ignore a watch expression the next couple of
822 occurrences.
823 </p><dl>
824 <dt><i>cond</i></dt>
825 <dd>
826 expression of the watch expression (string)
827 </dd><dt><i>count</i></dt>
828 <dd>
829 number of occurrences to ignore (int)
830 </dd>
831 </dl><a NAME="DebuggerInterfacePython.setCallTraceEnabled" ID="DebuggerInterfacePython.setCallTraceEnabled"></a>
832 <h4>DebuggerInterfacePython.setCallTraceEnabled</h4>
833 <b>setCallTraceEnabled</b>(<i>on</i>)
834 <p>
835 Public method to set the call trace state.
836 </p><dl>
837 <dt><i>on</i></dt>
838 <dd>
839 flag indicating to enable the call trace function (boolean)
840 </dd>
841 </dl><a NAME="DebuggerInterfacePython.shutdown" ID="DebuggerInterfacePython.shutdown"></a>
842 <h4>DebuggerInterfacePython.shutdown</h4>
843 <b>shutdown</b>(<i></i>)
844 <p>
845 Public method to cleanly shut down.
846 </p><p>
847 It closes our socket and shuts down
848 the debug client. (Needed on Win OS)
849 </p><a NAME="DebuggerInterfacePython.startRemote" ID="DebuggerInterfacePython.startRemote"></a>
850 <h4>DebuggerInterfacePython.startRemote</h4>
851 <b>startRemote</b>(<i>port, runInConsole, venvName, originalPathString, workingDir=None</i>)
852 <p>
853 Public method to start a remote Python interpreter.
854 </p><dl>
855 <dt><i>port</i> (int)</dt>
856 <dd>
857 port number the debug server is listening on
858 </dd><dt><i>runInConsole</i> (bool)</dt>
859 <dd>
860 flag indicating to start the debugger in a
861 console window
862 </dd><dt><i>venvName</i> (str)</dt>
863 <dd>
864 name of the virtual environment to be used
865 </dd><dt><i>originalPathString</i> (str)</dt>
866 <dd>
867 original PATH environment variable
868 </dd><dt><i>workingDir</i> (str)</dt>
869 <dd>
870 directory to start the debugger client in
871 </dd>
872 </dl><dl>
873 <dt>Returns:</dt>
874 <dd>
875 client process object, a flag to indicate a network connection
876 and the name of the interpreter in case of a local execution
877 </dd>
878 </dl><dl>
879 <dt>Return Type:</dt>
880 <dd>
881 tuple of (QProcess, bool, str)
882 </dd>
883 </dl><a NAME="DebuggerInterfacePython.startRemoteForProject" ID="DebuggerInterfacePython.startRemoteForProject"></a>
884 <h4>DebuggerInterfacePython.startRemoteForProject</h4>
885 <b>startRemoteForProject</b>(<i>port, runInConsole, venvName, originalPathString, workingDir=None</i>)
886 <p>
887 Public method to start a remote Python interpreter for a project.
888 </p><dl>
889 <dt><i>port</i> (int)</dt>
890 <dd>
891 port number the debug server is listening on
892 </dd><dt><i>runInConsole</i> (bool)</dt>
893 <dd>
894 flag indicating to start the debugger in a
895 console window
896 </dd><dt><i>venvName</i> (str)</dt>
897 <dd>
898 name of the virtual environment to be used
899 </dd><dt><i>originalPathString</i> (str)</dt>
900 <dd>
901 original PATH environment variable
902 </dd><dt><i>workingDir</i> (str)</dt>
903 <dd>
904 directory to start the debugger client in
905 </dd>
906 </dl><dl>
907 <dt>Returns:</dt>
908 <dd>
909 client process object, a flag to indicate a network connection
910 and the name of the interpreter in case of a local execution
911 </dd>
912 </dl><dl>
913 <dt>Return Type:</dt>
914 <dd>
915 tuple of (QProcess, bool, str)
916 </dd>
917 </dl>
918 <div align="right"><a href="#top">Up</a></div>
919 <hr /><hr />
920 <a NAME="createDebuggerInterfacePython2" ID="createDebuggerInterfacePython2"></a>
921 <h2>createDebuggerInterfacePython2</h2>
922 <b>createDebuggerInterfacePython2</b>(<i>debugServer, passive</i>)
923 <p>
924 Module function to create a debugger interface instance.
925 </p><p>
926
927 </p><dl>
928 <dt><i>debugServer</i> (DebugServer)</dt>
929 <dd>
930 reference to the debug server
931 </dd><dt><i>passive</i> (bool)</dt>
932 <dd>
933 flag indicating passive connection mode
934 </dd>
935 </dl><dl>
936 <dt>Returns:</dt>
937 <dd>
938 instantiated debugger interface
939 </dd>
940 </dl><dl>
941 <dt>Return Type:</dt>
942 <dd>
943 DebuggerInterfacePython
944 </dd>
945 </dl>
946 <div align="right"><a href="#top">Up</a></div>
947 <hr /><hr />
948 <a NAME="createDebuggerInterfacePython3" ID="createDebuggerInterfacePython3"></a>
949 <h2>createDebuggerInterfacePython3</h2>
950 <b>createDebuggerInterfacePython3</b>(<i>debugServer, passive</i>)
951 <p>
952 Module function to create a debugger interface instance.
953 </p><p>
954
955 </p><dl>
956 <dt><i>debugServer</i> (DebugServer)</dt>
957 <dd>
958 reference to the debug server
959 </dd><dt><i>passive</i> (bool)</dt>
960 <dd>
961 flag indicating passive connection mode
962 </dd>
963 </dl><dl>
964 <dt>Returns:</dt>
965 <dd>
966 instantiated debugger interface
967 </dd>
968 </dl><dl>
969 <dt>Return Type:</dt>
970 <dd>
971 DebuggerInterfacePython
972 </dd>
973 </dl>
974 <div align="right"><a href="#top">Up</a></div>
975 <hr /><hr />
976 <a NAME="getRegistryData" ID="getRegistryData"></a>
977 <h2>getRegistryData</h2>
978 <b>getRegistryData</b>(<i></i>)
979 <p>
980 Module function to get characterizing data for the supported debugger
981 interfaces.
982 </p><dl>
983 <dt>Returns:</dt>
984 <dd>
985 list of tuples containing the client type, the client capabilities,
986 the client file type associations and a reference to the creation
987 function
988 </dd>
989 </dl><dl>
990 <dt>Return Type:</dt>
991 <dd>
992 list of tuple of (str, int, list of str, function)
993 </dd>
994 </dl>
995 <div align="right"><a href="#top">Up</a></div>
996 <hr />
997 </body></html>

eric ide

mercurial