Bat-Interpreter
view release on metacpan or search on metacpan
lib/Bat/Interpreter/Delegate/Executor/PartialDryRunner.pm view on Meta::CPAN
package Bat::Interpreter::Delegate::Executor::PartialDryRunner;
use utf8;
use Moo;
use Types::Standard qw(ArrayRef);
use namespace::autoclean;
with 'Bat::Interpreter::Role::Executor';
our $VERSION = '0.025'; # VERSION
has 'commands_executed' => ( is => 'ro',
isa => ArrayRef,
default => sub { [] },
);
sub add_command {
push @{ shift->commands_executed }, @_;
}
sub execute_command {
my $self = shift();
my $command = shift();
$self->add_command($command);
return 0;
}
sub execute_for_command {
my $self = shift();
my $command = shift();
my $output = `$command`;
chomp $output;
return $output;
}
1;
__END__
=pod
=encoding utf-8
=head1 NAME
Bat::Interpreter::Delegate::Executor::PartialDryRunner
=head1 VERSION
version 0.025
=head1 SYNOPSIS
use Bat::Interpreter;
use Bat::Interpreter::Delegate::Executor::PartialDryRunner;
my $partial_dry_runner = Bat::Interpreter::Delegate::Executor::PartialDryRunner->new;
my $interpreter = Bat::Interpreter->new(executor => $partial_dry_runner);
$interpreter->run('my.cmd');
print Dumper($partial_dry_runner->commands_executed);
=head1 DESCRIPTION
This executor tries to get all the commands that are going to be executed, that is, it's like every
( run in 0.443 second using v1.01-cache-2.11-cpan-39bf76dae61 )