Documentation/Source/eric6.DebugClients.Ruby.Debuggee.html

changeset 3673
e26d7d0c1088
equal deleted inserted replaced
3670:f0cb7579c0b4 3673:e26d7d0c1088
1 <!DOCTYPE html>
2 <html><head>
3 <title>eric6.DebugClients.Ruby.Debuggee</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.DebugClients.Ruby.Debuggee</h1>
23 <p>
24 File implementing the real debugger, which is connected to the IDE frontend.
25 </p>
26 <h3>Global Attributes</h3>
27 <table>
28 <tr><td>None</td></tr>
29 </table>
30 <h3>Classes</h3>
31 <table>
32 <tr>
33 <td><a href="#Client">Client</a></td>
34 <td>Class handling the connection to the IDE.</td>
35 </tr><tr>
36 <td><a href="#Context">Context</a></td>
37 <td>Class defining the current execution context.</td>
38 </tr><tr>
39 <td><a href="#DEBUGGER__">DEBUGGER__</a></td>
40 <td>Class defining a singleton object for the debugger.</td>
41 </tr><tr>
42 <td><a href="#SilentObject">SilentObject</a></td>
43 <td>Class defining an object that ignores all messages.</td>
44 </tr>
45 </table>
46 <h3>Modules</h3>
47 <table>
48 <tr><td>None</td></tr>
49 </table>
50 <h3>Functions</h3>
51 <table>
52 <tr>
53 <td><a href="#context">context</a></td>
54 <td>Method returning the context of a thread.</td>
55 </tr><tr>
56 <td><a href="#debug_thread_info">debug_thread_info</a></td>
57 <td>Method handling the thread related debug commands.</td>
58 </tr><tr>
59 <td><a href="#eventLoop">eventLoop</a></td>
60 <td>Method calling the main event loop.</td>
61 </tr><tr>
62 <td><a href="#eventPoll">eventPoll</a></td>
63 <td>Method calling the main function polling for an event sent by the IDE.</td>
64 </tr><tr>
65 <td><a href="#get_thread">get_thread</a></td>
66 <td>Method returning a thread by number.</td>
67 </tr><tr>
68 <td><a href="#interrupt">interrupt</a></td>
69 <td>Method to stop execution at the next instruction.</td>
70 </tr><tr>
71 <td><a href="#make_thread_list">make_thread_list</a></td>
72 <td>Method to create a thread list.</td>
73 </tr><tr>
74 <td><a href="#thread_list">thread_list</a></td>
75 <td>Method to list the state of a thread.</td>
76 </tr><tr>
77 <td><a href="#thread_list_all">thread_list_all</a></td>
78 <td>Method to list the state of all threads.</td>
79 </tr><tr>
80 <td><a href="#traceRuby?">traceRuby?</a></td>
81 <td>Method to check, if we should trace into the Ruby interpreter libraries.</td>
82 </tr>
83 </table>
84 <hr /><hr />
85 <a NAME="Client" ID="Client"></a>
86 <h2>Client</h2>
87 <p>
88 Class handling the connection to the IDE.
89 </p>
90 <h3>Derived from</h3>
91 None
92 <h3>Class Attributes</h3>
93 <table>
94 <tr><td>None</td></tr>
95 </table>
96 <h3>Class Methods</h3>
97 <table>
98 <tr><td>None</td></tr>
99 </table>
100 <h3>Methods</h3>
101 <table>
102 <tr>
103 <td><a href="#Client.eventLoop">eventLoop</a></td>
104 <td>Method calling the main event loop.</td>
105 </tr><tr>
106 <td><a href="#Client.eventPoll">eventPoll</a></td>
107 <td>Method calling the main function polling for an event sent by the IDE.</td>
108 </tr><tr>
109 <td><a href="#Client.initialize">initialize</a></td>
110 <td>Constructor</td>
111 </tr><tr>
112 <td><a href="#Client.printf">printf</a></td>
113 <td>Method to print something to the IDE.</td>
114 </tr><tr>
115 <td><a href="#Client.printf_clear_breakpoint">printf_clear_breakpoint</a></td>
116 <td>Method to report the deletion of a temporary breakpoint to the IDE.</td>
117 </tr><tr>
118 <td><a href="#Client.printf_clear_watchexpression">printf_clear_watchexpression</a></td>
119 <td>Method to report the deletion of a temporary watch expression to the IDE.</td>
120 </tr><tr>
121 <td><a href="#Client.printf_excn">printf_excn</a></td>
122 <td>Method to report an exception to the IDE.</td>
123 </tr><tr>
124 <td><a href="#Client.printf_exit">printf_exit</a></td>
125 <td>Method to report the exit status to the IDE.</td>
126 </tr><tr>
127 <td><a href="#Client.printf_line">printf_line</a></td>
128 <td>Method to report the current line and the current stack trace to the IDE.</td>
129 </tr><tr>
130 <td><a href="#Client.printf_scriptExcn">printf_scriptExcn</a></td>
131 <td>Method to report a ScriptError to the IDE.</td>
132 </tr><tr>
133 <td><a href="#Client.traceRuby?">traceRuby?</a></td>
134 <td>Method to check, if we should trace into the Ruby interpreter libraries.</td>
135 </tr>
136 </table>
137 <h3>Static Methods</h3>
138 <table>
139 <tr><td>None</td></tr>
140 </table>
141 <a NAME="Client.eventLoop" ID="Client.eventLoop"></a>
142 <h4>Client.eventLoop</h4>
143 <b>eventLoop</b>(<i></i>)
144 <p>
145 Method calling the main event loop.
146 </p><a NAME="Client.eventPoll" ID="Client.eventPoll"></a>
147 <h4>Client.eventPoll</h4>
148 <b>eventPoll</b>(<i></i>)
149 <p>
150 Method calling the main function polling for an event sent by the IDE.
151 </p><a NAME="Client.initialize" ID="Client.initialize"></a>
152 <h4>Client.initialize</h4>
153 <b>initialize</b>(<i></i>)
154 <p>
155 Constructor
156 </p><dl>
157 <dt><i>debugger</i></dt>
158 <dd>
159 reference to the object having the IDE connection.
160 </dd>
161 </dl><a NAME="Client.printf" ID="Client.printf"></a>
162 <h4>Client.printf</h4>
163 <b>printf</b>(<i></i>)
164 <p>
165 Method to print something to the IDE.
166 </p><dl>
167 <dt><i>*args</i></dt>
168 <dd>
169 Arguments to be printed.
170 </dd>
171 </dl><a NAME="Client.printf_clear_breakpoint" ID="Client.printf_clear_breakpoint"></a>
172 <h4>Client.printf_clear_breakpoint</h4>
173 <b>printf_clear_breakpoint</b>(<i>line</i>)
174 <p>
175 Method to report the deletion of a temporary breakpoint to the IDE.
176 </p><dl>
177 <dt><i>file</i></dt>
178 <dd>
179 filename of the breakpoint (String)
180 </dd><dt><i>line</i></dt>
181 <dd>
182 line number of the breakpoint (int)
183 </dd>
184 </dl><a NAME="Client.printf_clear_watchexpression" ID="Client.printf_clear_watchexpression"></a>
185 <h4>Client.printf_clear_watchexpression</h4>
186 <b>printf_clear_watchexpression</b>(<i></i>)
187 <p>
188 Method to report the deletion of a temporary watch expression to the IDE.
189 </p><dl>
190 <dt><i>cond</i></dt>
191 <dd>
192 expression of the watch expression (String)
193 </dd>
194 </dl><a NAME="Client.printf_excn" ID="Client.printf_excn"></a>
195 <h4>Client.printf_excn</h4>
196 <b>printf_excn</b>(<i></i>)
197 <p>
198 Method to report an exception to the IDE.
199 </p><dl>
200 <dt><i>exclist</i></dt>
201 <dd>
202 info about the exception to be reported
203 </dd>
204 </dl><a NAME="Client.printf_exit" ID="Client.printf_exit"></a>
205 <h4>Client.printf_exit</h4>
206 <b>printf_exit</b>(<i></i>)
207 <p>
208 Method to report the exit status to the IDE.
209 </p><dl>
210 <dt><i>status</i></dt>
211 <dd>
212 exit status of the program (int)
213 </dd>
214 </dl><a NAME="Client.printf_line" ID="Client.printf_line"></a>
215 <h4>Client.printf_line</h4>
216 <b>printf_line</b>(<i></i>)
217 <p>
218 Method to report the current line and the current stack trace to the IDE.
219 </p><dl>
220 <dt><i>frames</i></dt>
221 <dd>
222 reference to the array containing the stack trace.
223 </dd>
224 </dl><a NAME="Client.printf_scriptExcn" ID="Client.printf_scriptExcn"></a>
225 <h4>Client.printf_scriptExcn</h4>
226 <b>printf_scriptExcn</b>(<i></i>)
227 <p>
228 Method to report a ScriptError to the IDE.
229 </p><dl>
230 <dt><i>exclist</i></dt>
231 <dd>
232 info about the exception to be reported
233 </dd>
234 </dl><a NAME="Client.traceRuby?" ID="Client.traceRuby?"></a>
235 <h4>Client.traceRuby?</h4>
236 <b>traceRuby?</b>(<i></i>)
237 <p>
238 Method to check, if we should trace into the Ruby interpreter libraries.
239 </p>
240 <div align="right"><a href="#top">Up</a></div>
241 <hr /><hr />
242 <a NAME="Context" ID="Context"></a>
243 <h2>Context</h2>
244 <p>
245 Class defining the current execution context.
246 </p>
247 <h3>Derived from</h3>
248 None
249 <h3>Class Attributes</h3>
250 <table>
251 <tr><td>None</td></tr>
252 </table>
253 <h3>Class Methods</h3>
254 <table>
255 <tr><td>None</td></tr>
256 </table>
257 <h3>Methods</h3>
258 <table>
259 <tr>
260 <td><a href="#Context.clear_suspend">clear_suspend</a></td>
261 <td>Method to clear the suspend state.</td>
262 </tr><tr>
263 <td><a href="#Context.current_binding">current_binding</a></td>
264 <td>Method returning the binding object of the current execution frame.</td>
265 </tr><tr>
266 <td><a href="#Context.current_frame">current_frame</a></td>
267 <td>Method returning the current execution frame.</td>
268 </tr><tr>
269 <td><a href="#Context.eventLoop">eventLoop</a></td>
270 <td>Method calling the main event loop.</td>
271 </tr><tr>
272 <td><a href="#Context.eventPoll">eventPoll</a></td>
273 <td>Method calling the main function polling for an event sent by the IDE.</td>
274 </tr><tr>
275 <td><a href="#Context.get_binding">get_binding</a></td>
276 <td>Method returning the binding object of a specific execution frame.</td>
277 </tr><tr>
278 <td><a href="#Context.get_frame">get_frame</a></td>
279 <td>Method returning a specific execution frame.</td>
280 </tr><tr>
281 <td><a href="#Context.initialize">initialize</a></td>
282 <td>Constructor</td>
283 </tr><tr>
284 <td><a href="#Context.set_suspend">set_suspend</a></td>
285 <td>Method to suspend all threads.</td>
286 </tr><tr>
287 <td><a href="#Context.step_continue">step_continue</a></td>
288 <td>Method to continue execution until next breakpoint or watch expression.</td>
289 </tr><tr>
290 <td><a href="#Context.step_out">step_out</a></td>
291 <td>Method to set the next stop point after the function call returns.</td>
292 </tr><tr>
293 <td><a href="#Context.step_over">step_over</a></td>
294 <td>Method to set the next stop point skipping function calls.</td>
295 </tr><tr>
296 <td><a href="#Context.step_quit">step_quit</a></td>
297 <td>Method to stop debugging.</td>
298 </tr><tr>
299 <td><a href="#Context.stop_next">stop_next</a></td>
300 <td>Method to set the next stop point (i.e.</td>
301 </tr><tr>
302 <td><a href="#Context.suspend_all">suspend_all</a></td>
303 <td>Method to suspend all threads.</td>
304 </tr><tr>
305 <td><a href="#Context.traceRuby?">traceRuby?</a></td>
306 <td>Method to check, if we should trace into the Ruby interpreter libraries.</td>
307 </tr>
308 </table>
309 <h3>Static Methods</h3>
310 <table>
311 <tr><td>None</td></tr>
312 </table>
313 <a NAME="Context.clear_suspend" ID="Context.clear_suspend"></a>
314 <h4>Context.clear_suspend</h4>
315 <b>clear_suspend</b>(<i></i>)
316 <p>
317 Method to clear the suspend state.
318 </p><a NAME="Context.current_binding" ID="Context.current_binding"></a>
319 <h4>Context.current_binding</h4>
320 <b>current_binding</b>(<i></i>)
321 <p>
322 Method returning the binding object of the current execution frame.
323 </p><dl>
324 <dt>Returns:</dt>
325 <dd>
326 binding object of the current execution frame
327 </dd>
328 </dl><a NAME="Context.current_frame" ID="Context.current_frame"></a>
329 <h4>Context.current_frame</h4>
330 <b>current_frame</b>(<i></i>)
331 <p>
332 Method returning the current execution frame.
333 </p><dl>
334 <dt>Returns:</dt>
335 <dd>
336 current execution frame
337 </dd>
338 </dl><a NAME="Context.eventLoop" ID="Context.eventLoop"></a>
339 <h4>Context.eventLoop</h4>
340 <b>eventLoop</b>(<i></i>)
341 <p>
342 Method calling the main event loop.
343 </p><a NAME="Context.eventPoll" ID="Context.eventPoll"></a>
344 <h4>Context.eventPoll</h4>
345 <b>eventPoll</b>(<i></i>)
346 <p>
347 Method calling the main function polling for an event sent by the IDE.
348 </p><a NAME="Context.get_binding" ID="Context.get_binding"></a>
349 <h4>Context.get_binding</h4>
350 <b>get_binding</b>(<i></i>)
351 <p>
352 Method returning the binding object of a specific execution frame.
353 </p><dl>
354 <dt><i>frameno</i></dt>
355 <dd>
356 frame number of the frame (int)
357 </dd>
358 </dl><dl>
359 <dt>Returns:</dt>
360 <dd>
361 the requested binding object
362 </dd>
363 </dl><a NAME="Context.get_frame" ID="Context.get_frame"></a>
364 <h4>Context.get_frame</h4>
365 <b>get_frame</b>(<i></i>)
366 <p>
367 Method returning a specific execution frame.
368 </p><dl>
369 <dt><i>frameno</i></dt>
370 <dd>
371 frame number of the frame to be returned (int)
372 </dd>
373 </dl><dl>
374 <dt>Returns:</dt>
375 <dd>
376 the requested execution frame
377 </dd>
378 </dl><a NAME="Context.initialize" ID="Context.initialize"></a>
379 <h4>Context.initialize</h4>
380 <b>initialize</b>(<i></i>)
381 <p>
382 Constructor
383 </p><a NAME="Context.set_suspend" ID="Context.set_suspend"></a>
384 <h4>Context.set_suspend</h4>
385 <b>set_suspend</b>(<i></i>)
386 <p>
387 Method to suspend all threads.
388 </p><a NAME="Context.step_continue" ID="Context.step_continue"></a>
389 <h4>Context.step_continue</h4>
390 <b>step_continue</b>(<i></i>)
391 <p>
392 Method to continue execution until next breakpoint or watch expression.
393 </p><a NAME="Context.step_out" ID="Context.step_out"></a>
394 <h4>Context.step_out</h4>
395 <b>step_out</b>(<i></i>)
396 <p>
397 Method to set the next stop point after the function call returns.
398 </p><a NAME="Context.step_over" ID="Context.step_over"></a>
399 <h4>Context.step_over</h4>
400 <b>step_over</b>(<i></i>)
401 <p>
402 Method to set the next stop point skipping function calls.
403 </p><dl>
404 <dt><i>counter</i></dt>
405 <dd>
406 defining the stop point (int)
407 </dd>
408 </dl><a NAME="Context.step_quit" ID="Context.step_quit"></a>
409 <h4>Context.step_quit</h4>
410 <b>step_quit</b>(<i></i>)
411 <p>
412 Method to stop debugging.
413 </p><a NAME="Context.stop_next" ID="Context.stop_next"></a>
414 <h4>Context.stop_next</h4>
415 <b>stop_next</b>(<i></i>)
416 <p>
417 Method to set the next stop point (i.e. stop at next line).
418 </p><dl>
419 <dt><i>counter</i></dt>
420 <dd>
421 defining the stop point (int)
422 </dd>
423 </dl><a NAME="Context.suspend_all" ID="Context.suspend_all"></a>
424 <h4>Context.suspend_all</h4>
425 <b>suspend_all</b>(<i></i>)
426 <p>
427 Method to suspend all threads.
428 </p><a NAME="Context.traceRuby?" ID="Context.traceRuby?"></a>
429 <h4>Context.traceRuby?</h4>
430 <b>traceRuby?</b>(<i></i>)
431 <p>
432 Method to check, if we should trace into the Ruby interpreter libraries.
433 </p>
434 <div align="right"><a href="#top">Up</a></div>
435 <hr /><hr />
436 <a NAME="DEBUGGER__" ID="DEBUGGER__"></a>
437 <h2>DEBUGGER__</h2>
438 <p>
439 Class defining a singleton object for the debugger.
440 </p>
441 <h3>Derived from</h3>
442 None
443 <h3>Class Attributes</h3>
444 <table>
445 <tr><td>MUTEX</td></tr><tr><td>SilentClient</td></tr>
446 </table>
447 <h3>Class Methods</h3>
448 <table>
449 <tr><td>None</td></tr>
450 </table>
451 <h3>Methods</h3>
452 <table>
453 <tr>
454 <td><a href="#DEBUGGER__.add_break_point">add_break_point</a></td>
455 <td>Method to add a breakpoint.</td>
456 </tr><tr>
457 <td><a href="#DEBUGGER__.add_watch_point">add_watch_point</a></td>
458 <td>Method to add a watch expression.</td>
459 </tr><tr>
460 <td><a href="#DEBUGGER__.attach">attach</a></td>
461 <td>Method to connect the debugger to the IDE.</td>
462 </tr><tr>
463 <td><a href="#DEBUGGER__.attached?">attached?</a></td>
464 <td>Method returning the attached state.</td>
465 </tr><tr>
466 <td><a href="#DEBUGGER__.break_points">break_points</a></td>
467 <td>Method to return the list of breakpoints</td>
468 </tr><tr>
469 <td><a href="#DEBUGGER__.check_break_points">check_break_points</a></td>
470 <td>Method to check, if the given position contains an active breakpoint.</td>
471 </tr><tr>
472 <td><a href="#DEBUGGER__.check_suspend">check_suspend</a></td>
473 <td>Method to check the suspend state.</td>
474 </tr><tr>
475 <td><a href="#DEBUGGER__.clear_break_point">clear_break_point</a></td>
476 <td>Method to delete a specific breakpoint.</td>
477 </tr><tr>
478 <td><a href="#DEBUGGER__.clear_watch_point">clear_watch_point</a></td>
479 <td>Method to delete a specific watch expression.</td>
480 </tr><tr>
481 <td><a href="#DEBUGGER__.client">client</a></td>
482 <td>Method returning a reference to the client object.</td>
483 </tr><tr>
484 <td><a href="#DEBUGGER__.context">context</a></td>
485 <td>Method returning the context of a thread.</td>
486 </tr><tr>
487 <td><a href="#DEBUGGER__.debug_command">debug_command</a></td>
488 <td>Method to execute the next debug command.</td>
489 </tr><tr>
490 <td><a href="#DEBUGGER__.debug_silent_eval">debug_silent_eval</a></td>
491 <td>Method to eval a string without output.</td>
492 </tr><tr>
493 <td><a href="#DEBUGGER__.delete_break_point">delete_break_point</a></td>
494 <td>Method to delete a breakpoint.</td>
495 </tr><tr>
496 <td><a href="#DEBUGGER__.delete_watch_point">delete_watch_point</a></td>
497 <td>Method to delete a watch expression.</td>
498 </tr><tr>
499 <td><a href="#DEBUGGER__.enable_break_point">enable_break_point</a></td>
500 <td>Method to set the enabled state of a breakpoint.</td>
501 </tr><tr>
502 <td><a href="#DEBUGGER__.enable_watch_point">enable_watch_point</a></td>
503 <td>Method to set the enabled state of a watch expression.</td>
504 </tr><tr>
505 <td><a href="#DEBUGGER__.excn_handle">excn_handle</a></td>
506 <td>Method to handle an exception</td>
507 </tr><tr>
508 <td><a href="#DEBUGGER__.frame_set_pos">frame_set_pos</a></td>
509 <td>Method to set the frame position of the current frame.</td>
510 </tr><tr>
511 <td><a href="#DEBUGGER__.ignore_break_point">ignore_break_point</a></td>
512 <td>Method to set the ignore count of a breakpoint.</td>
513 </tr><tr>
514 <td><a href="#DEBUGGER__.ignore_watch_point">ignore_watch_point</a></td>
515 <td>Method to set the ignore count of a watch expression.</td>
516 </tr><tr>
517 <td><a href="#DEBUGGER__.last_thread">last_thread</a></td>
518 <td>Method returning the last active thread.</td>
519 </tr><tr>
520 <td><a href="#DEBUGGER__.quit">quit</a></td>
521 <td>Method to quit the debugger.</td>
522 </tr><tr>
523 <td><a href="#DEBUGGER__.resume">resume</a></td>
524 <td>Method to resume the program being debugged.</td>
525 </tr><tr>
526 <td><a href="#DEBUGGER__.resume_all">resume_all</a></td>
527 <td>Method to resume all threads.</td>
528 </tr><tr>
529 <td><a href="#DEBUGGER__.set_client">set_client</a></td>
530 <td>Method to set the client handling the connection.</td>
531 </tr><tr>
532 <td><a href="#DEBUGGER__.set_last_thread">set_last_thread</a></td>
533 <td>Method to remember the last thread.</td>
534 </tr><tr>
535 <td><a href="#DEBUGGER__.skip_it?">skip_it?</a></td>
536 <td>Method to filter out debugger files.</td>
537 </tr><tr>
538 <td><a href="#DEBUGGER__.stdout">stdout</a></td>
539 <td>Method returning the stdout object.</td>
540 </tr><tr>
541 <td><a href="#DEBUGGER__.stdout=">stdout=</a></td>
542 <td>Method to set the stdout object.</td>
543 </tr><tr>
544 <td><a href="#DEBUGGER__.suspend">suspend</a></td>
545 <td>Method to suspend the program being debugged.</td>
546 </tr><tr>
547 <td><a href="#DEBUGGER__.thnum">thnum</a></td>
548 <td>Method returning the thread number of the current thread.</td>
549 </tr><tr>
550 <td><a href="#DEBUGGER__.trace_func">trace_func</a></td>
551 <td>Method executed by the tracing facility.</td>
552 </tr><tr>
553 <td><a href="#DEBUGGER__.waiting">waiting</a></td>
554 <td>Method returning the waiting list.</td>
555 </tr>
556 </table>
557 <h3>Static Methods</h3>
558 <table>
559 <tr><td>None</td></tr>
560 </table>
561 <a NAME="DEBUGGER__.add_break_point" ID="DEBUGGER__.add_break_point"></a>
562 <h4>DEBUGGER__.add_break_point</h4>
563 <b>add_break_point</b>(<i>pos, temp = false, cond = nil</i>)
564 <p>
565 Method to add a breakpoint.
566 </p><dl>
567 <dt><i>file</i></dt>
568 <dd>
569 filename for the breakpoint (String)
570 </dd><dt><i>pos</i></dt>
571 <dd>
572 line number for the breakpoint (int)
573 </dd><dt><i>temp</i></dt>
574 <dd>
575 flag indicating a temporary breakpoint (boolean)
576 </dd><dt><i>cond</i></dt>
577 <dd>
578 condition of a conditional breakpoint (String)
579 </dd>
580 </dl><a NAME="DEBUGGER__.add_watch_point" ID="DEBUGGER__.add_watch_point"></a>
581 <h4>DEBUGGER__.add_watch_point</h4>
582 <b>add_watch_point</b>(<i>temp = false</i>)
583 <p>
584 Method to add a watch expression.
585 </p><dl>
586 <dt><i>cond</i></dt>
587 <dd>
588 expression of the watch expression (String)
589 </dd><dt><i>temp</i></dt>
590 <dd>
591 flag indicating a temporary watch expression (boolean)
592 </dd>
593 </dl><a NAME="DEBUGGER__.attach" ID="DEBUGGER__.attach"></a>
594 <h4>DEBUGGER__.attach</h4>
595 <b>attach</b>(<i></i>)
596 <p>
597 Method to connect the debugger to the IDE.
598 </p><dl>
599 <dt><i>debugger</i></dt>
600 <dd>
601 reference to the object handling the
602 communication with the IDE.
603 </dd>
604 </dl><a NAME="DEBUGGER__.attached?" ID="DEBUGGER__.attached?"></a>
605 <h4>DEBUGGER__.attached?</h4>
606 <b>attached?</b>(<i></i>)
607 <p>
608 Method returning the attached state.
609 </p><dl>
610 <dt>Returns:</dt>
611 <dd>
612 flag indicating, whether the debugger is attached to the IDE.
613 </dd>
614 </dl><a NAME="DEBUGGER__.break_points" ID="DEBUGGER__.break_points"></a>
615 <h4>DEBUGGER__.break_points</h4>
616 <b>break_points</b>(<i></i>)
617 <p>
618 Method to return the list of breakpoints
619 </p><dl>
620 <dt>Returns:</dt>
621 <dd>
622 Array containing all breakpoints.
623 </dd>
624 </dl><a NAME="DEBUGGER__.check_break_points" ID="DEBUGGER__.check_break_points"></a>
625 <h4>DEBUGGER__.check_break_points</h4>
626 <b>check_break_points</b>(<i>pos, binding_, id</i>)
627 <p>
628 Method to check, if the given position contains an active breakpoint.
629 </p><dl>
630 <dt><i>file</i></dt>
631 <dd>
632 filename containing the currently executed line (String)
633 </dd><dt><i>pos</i></dt>
634 <dd>
635 line number currently executed (int)
636 </dd><dt><i>binding_</i></dt>
637 <dd>
638 current binding object
639 </dd><dt><i>id</i></dt>
640 <dd>
641 (ignored)
642 </dd>
643 </dl><dl>
644 <dt>Returns:</dt>
645 <dd>
646 flag indicating an active breakpoint (boolean)
647 </dd>
648 </dl><a NAME="DEBUGGER__.check_suspend" ID="DEBUGGER__.check_suspend"></a>
649 <h4>DEBUGGER__.check_suspend</h4>
650 <b>check_suspend</b>(<i></i>)
651 <p>
652 Method to check the suspend state.
653 </p><a NAME="DEBUGGER__.clear_break_point" ID="DEBUGGER__.clear_break_point"></a>
654 <h4>DEBUGGER__.clear_break_point</h4>
655 <b>clear_break_point</b>(<i>pos</i>)
656 <p>
657 Method to delete a specific breakpoint.
658 </p><dl>
659 <dt><i>file</i></dt>
660 <dd>
661 filename containing the breakpoint (String)
662 </dd><dt><i>pos</i></dt>
663 <dd>
664 line number containing the breakpoint (int)
665 </dd>
666 </dl><a NAME="DEBUGGER__.clear_watch_point" ID="DEBUGGER__.clear_watch_point"></a>
667 <h4>DEBUGGER__.clear_watch_point</h4>
668 <b>clear_watch_point</b>(<i></i>)
669 <p>
670 Method to delete a specific watch expression.
671 </p><dl>
672 <dt><i>cond</i></dt>
673 <dd>
674 expression specifying the watch expression (String)
675 </dd>
676 </dl><a NAME="DEBUGGER__.client" ID="DEBUGGER__.client"></a>
677 <h4>DEBUGGER__.client</h4>
678 <b>client</b>(<i></i>)
679 <p>
680 Method returning a reference to the client object.
681 </p><dl>
682 <dt>Returns:</dt>
683 <dd>
684 reference to the client object.
685 </dd>
686 </dl><a NAME="DEBUGGER__.context" ID="DEBUGGER__.context"></a>
687 <h4>DEBUGGER__.context</h4>
688 <b>context</b>(<i></i>)
689 <p>
690 Method returning the context of a thread.
691 </p><dl>
692 <dt><i>th</i></dt>
693 <dd>
694 thread object to get the context for
695 </dd>
696 </dl><dl>
697 <dt>Returns:</dt>
698 <dd>
699 the context for the thread
700 </dd>
701 </dl><a NAME="DEBUGGER__.debug_command" ID="DEBUGGER__.debug_command"></a>
702 <h4>DEBUGGER__.debug_command</h4>
703 <b>debug_command</b>(<i>line, id, binding_</i>)
704 <p>
705 Method to execute the next debug command.
706 </p><a NAME="DEBUGGER__.debug_silent_eval" ID="DEBUGGER__.debug_silent_eval"></a>
707 <h4>DEBUGGER__.debug_silent_eval</h4>
708 <b>debug_silent_eval</b>(<i>binding_</i>)
709 <p>
710 Method to eval a string without output.
711 </p><dl>
712 <dt><i>str</i></dt>
713 <dd>
714 String containing the expression to be evaluated
715 </dd><dt><i>binding_</i></dt>
716 <dd>
717 the binding for the evaluation
718 </dd>
719 </dl><dl>
720 <dt>Returns:</dt>
721 <dd>
722 the result of the evaluation
723 </dd>
724 </dl><a NAME="DEBUGGER__.delete_break_point" ID="DEBUGGER__.delete_break_point"></a>
725 <h4>DEBUGGER__.delete_break_point</h4>
726 <b>delete_break_point</b>(<i>pos</i>)
727 <p>
728 Method to delete a breakpoint.
729 </p><dl>
730 <dt><i>file</i></dt>
731 <dd>
732 filename of the breakpoint (String)
733 </dd><dt><i>pos</i></dt>
734 <dd>
735 line number of the breakpoint (int)
736 </dd>
737 </dl><a NAME="DEBUGGER__.delete_watch_point" ID="DEBUGGER__.delete_watch_point"></a>
738 <h4>DEBUGGER__.delete_watch_point</h4>
739 <b>delete_watch_point</b>(<i></i>)
740 <p>
741 Method to delete a watch expression.
742 </p><dl>
743 <dt><i>cond</i></dt>
744 <dd>
745 expression of the watch expression (String)
746 </dd>
747 </dl><a NAME="DEBUGGER__.enable_break_point" ID="DEBUGGER__.enable_break_point"></a>
748 <h4>DEBUGGER__.enable_break_point</h4>
749 <b>enable_break_point</b>(<i>pos, enable</i>)
750 <p>
751 Method to set the enabled state of a breakpoint.
752 </p><dl>
753 <dt><i>file</i></dt>
754 <dd>
755 filename of the breakpoint (String)
756 </dd><dt><i>pos</i></dt>
757 <dd>
758 line number of the breakpoint (int)
759 </dd><dt><i>enable</i></dt>
760 <dd>
761 flag indicating the new enabled state (boolean)
762 </dd>
763 </dl><a NAME="DEBUGGER__.enable_watch_point" ID="DEBUGGER__.enable_watch_point"></a>
764 <h4>DEBUGGER__.enable_watch_point</h4>
765 <b>enable_watch_point</b>(<i>enable</i>)
766 <p>
767 Method to set the enabled state of a watch expression.
768 </p><dl>
769 <dt><i>cond</i></dt>
770 <dd>
771 expression of the watch expression (String)
772 </dd><dt><i>enable</i></dt>
773 <dd>
774 flag indicating the new enabled state (boolean)
775 </dd>
776 </dl><a NAME="DEBUGGER__.excn_handle" ID="DEBUGGER__.excn_handle"></a>
777 <h4>DEBUGGER__.excn_handle</h4>
778 <b>excn_handle</b>(<i>line, id, binding_</i>)
779 <p>
780 Method to handle an exception
781 </p><dl>
782 <dt><i>file</i></dt>
783 <dd>
784 filename containing the currently executed line (String)
785 </dd><dt><i>pos</i></dt>
786 <dd>
787 line number currently executed (int)
788 </dd><dt><i>id</i></dt>
789 <dd>
790 (ignored)
791 </dd><dt><i>binding_</i></dt>
792 <dd>
793 current binding object
794 </dd>
795 </dl><a NAME="DEBUGGER__.frame_set_pos" ID="DEBUGGER__.frame_set_pos"></a>
796 <h4>DEBUGGER__.frame_set_pos</h4>
797 <b>frame_set_pos</b>(<i>line</i>)
798 <p>
799 Method to set the frame position of the current frame.
800 </p><a NAME="DEBUGGER__.ignore_break_point" ID="DEBUGGER__.ignore_break_point"></a>
801 <h4>DEBUGGER__.ignore_break_point</h4>
802 <b>ignore_break_point</b>(<i>pos, count</i>)
803 <p>
804 Method to set the ignore count of a breakpoint.
805 </p><dl>
806 <dt><i>file</i></dt>
807 <dd>
808 filename of the breakpoint (String)
809 </dd><dt><i>pos</i></dt>
810 <dd>
811 line number of the breakpoint (int)
812 </dd><dt><i>count</i></dt>
813 <dd>
814 ignore count to be set (int)
815 </dd>
816 </dl><a NAME="DEBUGGER__.ignore_watch_point" ID="DEBUGGER__.ignore_watch_point"></a>
817 <h4>DEBUGGER__.ignore_watch_point</h4>
818 <b>ignore_watch_point</b>(<i>count</i>)
819 <p>
820 Method to set the ignore count of a watch expression.
821 </p><dl>
822 <dt><i>cond</i></dt>
823 <dd>
824 expression of the watch expression (String)
825 </dd><dt><i>count</i></dt>
826 <dd>
827 ignore count to be set (int)
828 </dd>
829 </dl><a NAME="DEBUGGER__.last_thread" ID="DEBUGGER__.last_thread"></a>
830 <h4>DEBUGGER__.last_thread</h4>
831 <b>last_thread</b>(<i></i>)
832 <p>
833 Method returning the last active thread.
834 </p><dl>
835 <dt>Returns:</dt>
836 <dd>
837 active thread
838 </dd>
839 </dl><a NAME="DEBUGGER__.quit" ID="DEBUGGER__.quit"></a>
840 <h4>DEBUGGER__.quit</h4>
841 <b>quit</b>(<i></i>)
842 <p>
843 Method to quit the debugger.
844 </p><dl>
845 <dt><i>status</i></dt>
846 <dd>
847 exit status of the program
848 </dd>
849 </dl><a NAME="DEBUGGER__.resume" ID="DEBUGGER__.resume"></a>
850 <h4>DEBUGGER__.resume</h4>
851 <b>resume</b>(<i></i>)
852 <p>
853 Method to resume the program being debugged.
854 </p><a NAME="DEBUGGER__.resume_all" ID="DEBUGGER__.resume_all"></a>
855 <h4>DEBUGGER__.resume_all</h4>
856 <b>resume_all</b>(<i></i>)
857 <p>
858 Method to resume all threads.
859 </p><a NAME="DEBUGGER__.set_client" ID="DEBUGGER__.set_client"></a>
860 <h4>DEBUGGER__.set_client</h4>
861 <b>set_client</b>(<i></i>)
862 <p>
863 Method to set the client handling the connection.
864 </p><dl>
865 <dt><i>debugger</i></dt>
866 <dd>
867 reference to the object handling the connection
868 </dd>
869 </dl><a NAME="DEBUGGER__.set_last_thread" ID="DEBUGGER__.set_last_thread"></a>
870 <h4>DEBUGGER__.set_last_thread</h4>
871 <b>set_last_thread</b>(<i></i>)
872 <p>
873 Method to remember the last thread.
874 </p><dl>
875 <dt><i>th</i></dt>
876 <dd>
877 thread to be remembered.
878 </dd>
879 </dl><a NAME="DEBUGGER__.skip_it?" ID="DEBUGGER__.skip_it?"></a>
880 <h4>DEBUGGER__.skip_it?</h4>
881 <b>skip_it?</b>(<i></i>)
882 <p>
883 Method to filter out debugger files.
884 </p><p>
885 Tracing is turned off for files that are part of the
886 debugger that are called from the application being debugged.
887 </p><dl>
888 <dt><i>file</i></dt>
889 <dd>
890 name of the file to be checked (String)
891 </dd>
892 </dl><dl>
893 <dt>Returns:</dt>
894 <dd>
895 flag indicating, whether the file should be skipped (boolean)
896 </dd>
897 </dl><a NAME="DEBUGGER__.stdout" ID="DEBUGGER__.stdout"></a>
898 <h4>DEBUGGER__.stdout</h4>
899 <b>stdout</b>(<i></i>)
900 <p>
901 Method returning the stdout object.
902 </p><dl>
903 <dt>Returns:</dt>
904 <dd>
905 reference to the stdout object
906 </dd>
907 </dl><a NAME="DEBUGGER__.stdout=" ID="DEBUGGER__.stdout="></a>
908 <h4>DEBUGGER__.stdout=</h4>
909 <b>stdout=</b>(<i></i>)
910 <p>
911 Method to set the stdout object.
912 </p><dl>
913 <dt><i>s</i></dt>
914 <dd>
915 reference to the stdout object
916 </dd>
917 </dl><a NAME="DEBUGGER__.suspend" ID="DEBUGGER__.suspend"></a>
918 <h4>DEBUGGER__.suspend</h4>
919 <b>suspend</b>(<i></i>)
920 <p>
921 Method to suspend the program being debugged.
922 </p><a NAME="DEBUGGER__.thnum" ID="DEBUGGER__.thnum"></a>
923 <h4>DEBUGGER__.thnum</h4>
924 <b>thnum</b>(<i></i>)
925 <p>
926 Method returning the thread number of the current thread.
927 </p><dl>
928 <dt>Returns:</dt>
929 <dd>
930 thread number of the current thread.
931 </dd>
932 </dl><a NAME="DEBUGGER__.trace_func" ID="DEBUGGER__.trace_func"></a>
933 <h4>DEBUGGER__.trace_func</h4>
934 <b>trace_func</b>(<i>file, line, id, binding_, klass</i>)
935 <p>
936 Method executed by the tracing facility.
937 </p><dl>
938 <dt><i>event</i></dt>
939 <dd>
940 the tracing event (String)
941 </dd><dt><i>file</i></dt>
942 <dd>
943 the name of the file being traced (String)
944 </dd><dt><i>line</i></dt>
945 <dd>
946 the line number being traced (int)
947 </dd><dt><i>id</i></dt>
948 <dd>
949 object id
950 </dd><dt><i>binding_</i></dt>
951 <dd>
952 a binding object
953 </dd><dt><i>klass</i></dt>
954 <dd>
955 name of a class
956 </dd>
957 </dl><a NAME="DEBUGGER__.waiting" ID="DEBUGGER__.waiting"></a>
958 <h4>DEBUGGER__.waiting</h4>
959 <b>waiting</b>(<i></i>)
960 <p>
961 Method returning the waiting list.
962 </p><dl>
963 <dt>Returns:</dt>
964 <dd>
965 the waiting list
966 </dd>
967 </dl>
968 <div align="right"><a href="#top">Up</a></div>
969 <hr /><hr />
970 <a NAME="SilentObject" ID="SilentObject"></a>
971 <h2>SilentObject</h2>
972 <p>
973 Class defining an object that ignores all messages.
974 </p>
975 <h3>Derived from</h3>
976 None
977 <h3>Class Attributes</h3>
978 <table>
979 <tr><td>None</td></tr>
980 </table>
981 <h3>Class Methods</h3>
982 <table>
983 <tr><td>None</td></tr>
984 </table>
985 <h3>Methods</h3>
986 <table>
987 <tr>
988 <td><a href="#SilentObject.method_missing">method_missing</a></td>
989 <td>Method invoked for all messages it cannot handle.</td>
990 </tr>
991 </table>
992 <h3>Static Methods</h3>
993 <table>
994 <tr><td>None</td></tr>
995 </table>
996 <a NAME="SilentObject.method_missing" ID="SilentObject.method_missing"></a>
997 <h4>SilentObject.method_missing</h4>
998 <b>method_missing</b>(<i>*a, &b</i>)
999 <p>
1000 Method invoked for all messages it cannot handle.
1001 </p><dl>
1002 <dt><i>msg_id</i></dt>
1003 <dd>
1004 symbol for the method called
1005 </dd><dt><i>*a</i></dt>
1006 <dd>
1007 arguments passed to the missing method
1008 </dd><dt><i>&b</i></dt>
1009 <dd>
1010 unknown
1011 </dd>
1012 </dl>
1013 <div align="right"><a href="#top">Up</a></div>
1014 <hr /><hr />
1015 <a NAME="context" ID="context"></a>
1016 <h2>context</h2>
1017 <b>context</b>(<i>thread=Thread.current</i>)
1018 <p>
1019 Method returning the context of a thread.
1020 </p><dl>
1021 <dt><i>th</i></dt>
1022 <dd>
1023 threat the context is requested for
1024 </dd>
1025 </dl><dl>
1026 <dt>Returns:</dt>
1027 <dd>
1028 context object for the thread
1029 </dd>
1030 </dl>
1031 <div align="right"><a href="#top">Up</a></div>
1032 <hr /><hr />
1033 <a NAME="debug_thread_info" ID="debug_thread_info"></a>
1034 <h2>debug_thread_info</h2>
1035 <b>debug_thread_info</b>(<i>input, binding_</i>)
1036 <p>
1037 Method handling the thread related debug commands.
1038 </p><dl>
1039 <dt><i>input</i></dt>
1040 <dd>
1041 debug command (String)
1042 </dd><dt><i>binding_</i></dt>
1043 <dd>
1044 reference to the binding object
1045 </dd>
1046 </dl>
1047 <div align="right"><a href="#top">Up</a></div>
1048 <hr /><hr />
1049 <a NAME="eventLoop" ID="eventLoop"></a>
1050 <h2>eventLoop</h2>
1051 <b>eventLoop</b>(<i></i>)
1052 <p>
1053 Method calling the main event loop.
1054 </p>
1055 <div align="right"><a href="#top">Up</a></div>
1056 <hr /><hr />
1057 <a NAME="eventPoll" ID="eventPoll"></a>
1058 <h2>eventPoll</h2>
1059 <b>eventPoll</b>(<i></i>)
1060 <p>
1061 Method calling the main function polling for an event sent by the IDE.
1062 </p>
1063 <div align="right"><a href="#top">Up</a></div>
1064 <hr /><hr />
1065 <a NAME="get_thread" ID="get_thread"></a>
1066 <h2>get_thread</h2>
1067 <b>get_thread</b>(<i>num</i>)
1068 <p>
1069 Method returning a thread by number.
1070 </p><dl>
1071 <dt><i>num</i></dt>
1072 <dd>
1073 thread number (int)
1074 </dd>
1075 </dl><dl>
1076 <dt>Returns:</dt>
1077 <dd>
1078 thread with the requested number
1079 </dd>
1080 </dl>
1081 <div align="right"><a href="#top">Up</a></div>
1082 <hr /><hr />
1083 <a NAME="interrupt" ID="interrupt"></a>
1084 <h2>interrupt</h2>
1085 <b>interrupt</b>(<i></i>)
1086 <p>
1087 Method to stop execution at the next instruction.
1088 </p>
1089 <div align="right"><a href="#top">Up</a></div>
1090 <hr /><hr />
1091 <a NAME="make_thread_list" ID="make_thread_list"></a>
1092 <h2>make_thread_list</h2>
1093 <b>make_thread_list</b>(<i></i>)
1094 <p>
1095 Method to create a thread list.
1096 </p>
1097 <div align="right"><a href="#top">Up</a></div>
1098 <hr /><hr />
1099 <a NAME="thread_list" ID="thread_list"></a>
1100 <h2>thread_list</h2>
1101 <b>thread_list</b>(<i>num</i>)
1102 <p>
1103 Method to list the state of a thread.
1104 </p><dl>
1105 <dt><i>num</i></dt>
1106 <dd>
1107 thread number (int)
1108 </dd>
1109 </dl>
1110 <div align="right"><a href="#top">Up</a></div>
1111 <hr /><hr />
1112 <a NAME="thread_list_all" ID="thread_list_all"></a>
1113 <h2>thread_list_all</h2>
1114 <b>thread_list_all</b>(<i></i>)
1115 <p>
1116 Method to list the state of all threads.
1117 </p>
1118 <div align="right"><a href="#top">Up</a></div>
1119 <hr /><hr />
1120 <a NAME="traceRuby?" ID="traceRuby?"></a>
1121 <h2>traceRuby?</h2>
1122 <b>traceRuby?</b>(<i></i>)
1123 <p>
1124 Method to check, if we should trace into the Ruby interpreter libraries.
1125 </p>
1126 <div align="right"><a href="#top">Up</a></div>
1127 <hr />
1128 </body></html>

eric ide

mercurial