The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

See also:

set display eval, eval, set auto eval, set auto eval, Data::Dumper::Perltidy, and Data::Printer. EOH

our $SHORT_HELP = 'Show how the evaluation results are displayed'; our $MIN_ABBREV = length('ev');

sub run($$) { my ($self, $args) = @_; my $proc = $self->{proc}; my $key = $self->{subcmd_setting_key}; my $val = $proc->{settings}{$key}; my $msg = sprintf "Eval result display style is %s.", $val; $proc->msg($msg); if ($val eq 'tidy') { $proc->msg("Perlidy options: " . $Data::Dumper::Perltidy::ARGV); } elsif ($val eq 'ddp') { my @args = @{$args}; if (scalar @args > 3 && $args[3] eq 'long') { $proc->msg("Data::Printer options:"); my $opts = Data::Printer::p($Data::Printer::properties); $proc->msg($opts); } } }

unless (caller) { # Demo it. # FIXME: DRY the below code require Devel::Trepan::CmdProcessor; my $cmdproc = Devel::Trepan::CmdProcessor->new(); my $subcmd = Devel::Trepan::CmdProcessor::Command::Show->new($cmdproc, 'show'); my $dispcmd = Devel::Trepan::CmdProcessor::Command::Show::Display->new($subcmd, 'display'); my $cmd = Devel::Trepan::CmdProcessor::Command::Show::Display::Eval->new($dispcmd, 'eval'); # Add common routine foreach my $field (qw(min_abbrev name)) { printf "Field %s is: %s\n", $field, $cmd->{$field}; } $cmd->run(['show', 'display', 'eval']); $cmd->run(['show', 'display', 'eval', 'long']); }

1;