NAME
TAP::Parser::Source::Perl - Stream Perl output
VERSION
Version 3.03
DESCRIPTION
Takes a filename and hopefully returns a stream from it. The filename should be the name of a Perl program.
Note that this is a subclass of TAP::Parser::Source. See that module for more methods.
SYNOPSIS
use TAP::Parser::Source::Perl;
my $perl = TAP::Parser::Source::Perl->new;
my $stream = $perl->source_file($filename)->get_stream;
METHODS
Class Methods
new
my $perl = TAP::Parser::Source::Perl->new;
Returns a new TAP::Parser::Source::Perl
object.
Instance Methods
source_file
my $perl = $source->source;
$perl->source_file($filename);
Getter/setter for the source filename. Will croak
if the $filename
does not appear to be a file.
switches
my $switches = $perl->switches;
my @switches = $perl->switches;
$perl->switches( \@switches );
Getter/setter for the additional switches to pass to the perl executable. One common switch would be to set an include directory:
$perl->switches( ['-Ilib'] );
get_stream
my $stream = $source->get_stream;
Returns a stream of the output generated by executing source_file
.
shebang
Get the shebang line for a script file.
my $shebang = TAP::Parser::Source::Perl->shebang( $some_script );
May be called as a class method
get_taint
Decode any taint switches from a Perl shebang line.
# $taint will be 't'
my $taint = TAP::Parser::Source::Perl->get_taint( '#!/usr/bin/perl -t' );
# $untaint will be undefined
my $untaint = TAP::Parser::Source::Perl->get_taint( '#!/usr/bin/perl' );