File Coverage

lib/Devel/Trepan/CmdProcessor/Command/Set_Subcmd/Different.pm
Criterion Covered Total %
statement 36 40 90.0
branch n/a
condition n/a
subroutine 12 14 85.7
pod n/a
total 48 54 88.8


line stmt bran cond sub pod time code
1             # -*- coding: utf-8 -*-
2             # Copyright (C) 2011, 2014-2015 Rocky Bernstein <rocky@cpan.org>
3 12     12   106 use warnings; no warnings 'redefine'; no warnings 'once';
  12     12   34  
  12     12   474  
  12     2   83  
  12     2   32  
  12     2   389  
  12         76  
  12         34  
  12         330  
  2         20  
  2         1023  
  2         95  
  2         14  
  2         4  
  2         82  
  2         15  
  2         7  
  2         70  
4 12     12   72 use rlib '../../../../..';
  12     2   32  
  12         74  
  2         16  
  2         5  
  2         16  
5              
6             package Devel::Trepan::CmdProcessor::Command::Set::Different;
7              
8 12     12   5253 use Devel::Trepan::CmdProcessor::Command::Subcmd::Core;
  12     2   31  
  12         493  
  2         941  
  2         5  
  2         80  
9              
10             @ISA = qw(Devel::Trepan::CmdProcessor::Command::SetBoolSubcmd);
11             # Values inherited from parent
12 12     12   70 use vars @Devel::Trepan::CmdProcessor::Command::Subcmd::SUBCMD_VARS;
  12     2   29  
  12         3058  
  2         10  
  2         7  
  2         615  
13              
14             =pod
15              
16             =head2 Synopsis:
17              
18             =cut
19             our $HELP = <<'HELP';
20             =pod
21              
22             B<set different> [B<on>|B<off>|B<nostack>]
23              
24             Set to make sure C<next> or C<step> moves to a new position. If "on",
25             "off", or "nostack" is not given, "on" is assumed.
26              
27             A line can contain many possible stopping points. Inside a debugger,
28             it is sometimes desirable to continue but stop only when the position
29             next changes.
30              
31             Setting C<different> to on will cause each C<step> or C<next> command to
32             stop at a different position.
33              
34             Note though that the notion of different does take into account stack
35             nesting.
36              
37             =head2 See also:
38              
39             L<C<step>|Devel::Trepan::CmdProcessor::Command::step>, and
40             L<C<next>|Devel::Trepan::CmdProcessor::Command::Next> which have
41             suffixes C<+> and C<->; the suffixes override this setting.
42              
43             =cut
44             HELP
45              
46             sub complete($$)
47             {
48 0     0     my ($self, $prefix) = @_;
  0     0      
49 0           Devel::Trepan::Complete::complete_token(['on', 'off', 'nostack'],
  0            
50             $prefix);
51             }
52              
53              
54             our $MIN_ABBREV = length('dif');
55             our $SHORT_HELP = "Set to make sure 'next/step' move to a new position.";
56              
57             unless (caller) {
58             # Demo it.
59             require Devel::Trepan::CmdProcessor::Mock;
60             my ($proc, $cmd) =
61             Devel::Trepan::CmdProcessor::Mock::subcmd_setup();
62             Devel::Trepan::CmdProcessor::Mock::subcmd_demo_bool($proc, $cmd);
63             }
64              
65             1;