PerlIO-via-SeqIO
view release on metacpan or search on metacpan
lib/PerlIO/via/SeqIO.pm view on Meta::CPAN
my ($self,$fh) = @_;
if (!$self->{inited}) {
# if the secret dup is here, use it
$fh = $PerlIO::via::SeqIO::__seqio_DUP || $fh;
$self->{fileno} = fileno($fh); # nec to kick fileno hooks
$self->{eot} = 0;
for ($self->{mode}) {
m/r/ && do {
$self->{source} =
Bio::SeqIO->new( -fh=>$fh, -format=>$self->{format} );
$self->{format} ||= (split m/::/,ref($self->{source}))[-1];
last;
};
m/w|a/ && do {
$self->set_write_format($self->{format});
last;
};
do { #huh?
croak "failed(INIT): Don't understand mode '".$self->{mode}."'";
};
}
lib/PerlIO/via/SeqIO.pm view on Meta::CPAN
}
return $self->{via_o};
}
# use AUTOLOAD to perform handle operations on the
# subhandle, but delegate the work back to the
# via class (is this Laziness, or laziness?)
sub AUTOLOAD {
my ($self,@args) = @_;
my $func = lc ((split m/::/, $AUTOLOAD)[-1]);
# specials
$func = uc $func if $func =~ /destroy/;
for ($func) {
# delegate these back to the via object:
m/readline/ && do {
return wantarray ?
($self->via_o->_readline($self->sub_fh)) :
$self->via_o->_readline($self->sub_fh);
};
( run in 0.628 second using v1.01-cache-2.11-cpan-71847e10f99 )