ruby/lib/irb/cmd
Stan Lo 7f8f62c93b [ruby/irb] Support seamless integration with ruby/debug
(https://github.com/ruby/irb/pull/575)

* Support native integration with ruby/debug

* Prevent using multi-irb and activating debugger at the same time

Multi-irb makes a few assumptions:

- IRB will manage all threads that host sub-irb sessions
- All IRB sessions will be run on the threads created by IRB itself

However, when using the debugger these assumptions are broken:

- `debug` will freeze ALL threads when it suspends the session (e.g. when
  hitting a breakpoint, or performing step-debugging).
- Since the irb-debug integration runs IRB as the debugger's interface,
  it will be run on the debugger's thread, which is not managed by IRB.

So we should prevent the 2 features from being used at the same time.
To do that, we check if the other feature is already activated when
executing the commands that would activate the other feature.

d8fb3246be
2023-08-13 18:30:34 +00:00
..
backtrace.rb [ruby/irb] Add "show_cmds" command to list all commands' 2022-12-08 19:10:23 +00:00
break.rb [ruby/irb] Add "show_cmds" command to list all commands' 2022-12-08 19:10:23 +00:00
catch.rb [ruby/irb] Add "show_cmds" command to list all commands' 2022-12-08 19:10:23 +00:00
chws.rb [ruby/irb] Add workspace category 2023-08-01 12:51:30 +00:00
continue.rb [ruby/irb] Add "show_cmds" command to list all commands' 2022-12-08 19:10:23 +00:00
debug.rb [ruby/irb] Support seamless integration with ruby/debug 2023-08-13 18:30:34 +00:00
delete.rb [ruby/irb] Add "show_cmds" command to list all commands' 2022-12-08 19:10:23 +00:00
edit.rb [ruby/irb] Decouple edit and show_source commands 2023-07-31 19:57:36 +00:00
finish.rb [ruby/irb] Add "show_cmds" command to list all commands' 2022-12-08 19:10:23 +00:00
help.rb [ruby/irb] Print deprecation warning for help command 2023-05-18 03:28:31 +00:00
info.rb [ruby/irb] Add "show_cmds" command to list all commands' 2022-12-08 19:10:23 +00:00
irb_info.rb [ruby/irb] Simplify irb_info command 2023-06-05 19:02:43 +00:00
load.rb [ruby/irb] Formatting to header styles 2023-01-11 22:29:10 +00:00
ls.rb [ruby/irb] Page ls's output (https://github.com/ruby/irb/pull/657) 2023-07-26 08:32:02 +00:00
measure.rb [ruby/irb] Add "show_cmds" command to list all commands' 2022-12-08 19:10:23 +00:00
next.rb [ruby/irb] Add "show_cmds" command to list all commands' 2022-12-08 19:10:23 +00:00
nop.rb [ruby/irb] Refactor ExtendCommand::Nop 2023-06-05 19:12:16 +00:00
pushws.rb [ruby/irb] Add workspace category 2023-08-01 12:51:30 +00:00
show_cmds.rb [ruby/irb] Page ls's output (https://github.com/ruby/irb/pull/657) 2023-07-26 08:32:02 +00:00
show_doc.rb [ruby/irb] Print deprecation warning for help command 2023-05-18 03:28:31 +00:00
show_source.rb [ruby/irb] Decouple edit and show_source commands 2023-07-31 19:57:36 +00:00
step.rb [ruby/irb] Fix step command (https://github.com/ruby/irb/pull/477) 2022-12-09 23:39:17 +00:00
subirb.rb [ruby/irb] Support seamless integration with ruby/debug 2023-08-13 18:30:34 +00:00
whereami.rb [ruby/irb] Add "show_cmds" command to list all commands' 2022-12-08 19:10:23 +00:00