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

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

eric ide

mercurial