4 More Discussions You Might Find Interesting
1. What is on Your Mind?
As strolling along this thread, what is on my mind I am still quite upset about the security guidelines set by the developers of Debian or any distro based upon Debian. For a while I have been really blissed using squeeze. No trouble at all with almost nothing, but using wheezy trouble came up with... (9 Replies)
Discussion started by: 1in10
9 Replies
2. Debian
hi guys,
I need to create a sandbox environment on my Debian based LAMP server for PHP/MySql development. Anyone who could point me in the right direction or share their insight? (1 Reply)
Discussion started by: ziggy911
1 Replies
3. Android
I'm about to make the switch over to Android OS for my mobile phone. I'm thinking my first Android phone might be something like a Samsung Galaxy S or an HTC Desire HD, or I might wait for one of the new Android tablets coming out later this year (like the Samsung 7" tablet on Android).
Was... (10 Replies)
Discussion started by: Neo
10 Replies
4. UNIX for Advanced & Expert Users
Are you a developer for Solaris products? If so, check this out: http://sdc.sun.com/solaris8/
The media kit that comes includes the entire media pack (Solaris 8) for both Intel and Sparc architectures, and a cool spill-proof coffe mug (for those all-nighters you're going to pull playing with... (1 Reply)
Discussion started by: LivinFree
1 Replies
LEARN ABOUT SUSE
tap::parser::source::perl
TAP::Parser::Source::Perl(3pm) Perl Programmers Reference Guide TAP::Parser::Source::Perl(3pm)
NAME
TAP::Parser::Source::Perl - Stream Perl output
VERSION
Version 3.17
SYNOPSIS
use TAP::Parser::Source::Perl;
my $perl = TAP::Parser::Source::Perl->new;
my $stream = $perl->source( [ $filename, @args ] )->get_stream;
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.
METHODS
Class Methods
"new"
my $perl = TAP::Parser::Source::Perl->new;
Returns a new "TAP::Parser::Source::Perl" object.
Instance Methods
"source"
Getter/setter the name of the test program and any arguments it requires.
my ($filename, @args) = @{ $perl->source };
$perl->source( [ $filename, @args ] );
"croak"s if $filename could not be found.
"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($parser);
Returns a stream of the output generated by executing "source". Must be passed an object that implements a "make_iterator" method.
Typically this is a TAP::Parser instance.
"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' );
SUBCLASSING
Please see "SUBCLASSING" in TAP::Parser for a subclassing overview.
Example
package MyPerlSource;
use strict;
use vars '@ISA';
use Carp qw( croak );
use TAP::Parser::Source::Perl;
@ISA = qw( TAP::Parser::Source::Perl );
sub source {
my ($self, $args) = @_;
if ($args) {
$self->{file} = $args->[0];
return $self->SUPER::source($args);
}
return $self->SUPER::source;
}
# use the version of perl from the shebang line in the test file
sub _get_perl {
my $self = shift;
if (my $shebang = $self->shebang( $self->{file} )) {
$shebang =~ /^#!(.*perl.*?)(?:(?:s)|(?:$))/;
return $1 if $1;
}
return $self->SUPER::_get_perl(@_);
}
SEE ALSO
TAP::Object, TAP::Parser, TAP::Parser::Source,
perl v5.12.1 2010-04-26 TAP::Parser::Source::Perl(3pm)