This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Add more commands to the lookup table.
authorShlomi Fish <shlomif@shlomifish.org>
Sun, 14 Oct 2012 10:56:53 +0000 (12:56 +0200)
committerRicardo Signes <rjbs@cpan.org>
Mon, 12 Nov 2012 14:18:40 +0000 (09:18 -0500)
lib/perl5db.pl

index c9844fd..ed34703 100644 (file)
@@ -2423,7 +2423,15 @@ sub _DB__at_end_of_every_command {
 # 's' is subroutine.
 my %cmd_lookup =
 (
-    'q' => { t => 'm', v => '_handle_q_command' },
+    '.' => { t => 's', v => \&_DB__handle_dot_command, },
+    'f' => { t => 's', v => \&_DB__handle_f_command, },
+    'm' => { t => 's', v => \&_DB__handle_m_command, },
+    'q' => { t => 'm', v => '_handle_q_command', },
+    'S' => { t => 'm', v => '_handle_S_command', },
+    't' => { t => 'm', v => '_handle_t_command', },
+    'x' => { t => 'm', v => '_handle_x_command', },
+    (map { $_ => { t => 'm', v => '_handle_V_command_and_X_command', }, }
+        ('X', 'V')),
 );
 
 sub DB {
@@ -2763,16 +2771,12 @@ If level is specified, set C<$trace_to_depth>.
 
 =cut
 
-                $obj->_handle_t_command;
-
 =head4 C<S> - list subroutines matching/not matching a pattern
 
 Walks through C<%sub>, checking to see whether or not to print the name.
 
 =cut
 
-                $obj->_handle_S_command;
-
 =head4 C<X> - list variables in current package
 
 Since the C<V> command actually processes this, just change this to the
@@ -2784,8 +2788,6 @@ Uses C<dumpvar.pl> to dump out the current values for selected variables.
 
 =cut
 
-                $obj->_handle_V_command_and_X_command;
-
 =head4 C<x> - evaluate and print an expression
 
 Hands the expression off to C<DB::eval>, setting it up to print the value
@@ -2793,22 +2795,16 @@ via C<dumpvar.pl> instead of just printing it directly.
 
 =cut
 
-                $obj->_handle_x_command;
-
 =head4 C<m> - print methods
 
 Just uses C<DB::methods> to determine what methods are available.
 
 =cut
 
-                _DB__handle_m_command($obj);
-
 =head4 C<f> - switch files
 
 =cut
 
-                _DB__handle_f_command($obj);
-
 =head4 C<.> - return to last-executed line.
 
 We set C<$incr> to -1 to indicate that the debugger shouldn't move ahead,
@@ -2816,8 +2812,6 @@ and then we look up the line in the magical C<%dbline> hash.
 
 =cut
 
-                _DB__handle_dot_command($obj);
-
 =head4 C<-> - back one window
 
 We change C<$start> to be one window back; if we go back past the first line,