Forks-Super
view release on metacpan or search on metacpan
lib/Forks/Super/LazyEval.pm view on Meta::CPAN
sub TIEHASH {
my ($pkg,$command,@other_options) = @_;
my $result = Forks::Super::LazyEval::bg_qx $command, @other_options;
my $self = { result => $result, is_hash => 1 };
bless $self, $pkg;
}
sub array {
my $this = shift;
if (!$this->{array}) {
my $eol = quotemeta($/);
$this->{array} = [ split m{(?<=$eol)}, $this->{result}->_fetch ];
}
$this->{array};
}
sub hash {
my $this = shift;
if (!$this->{hash}) {
my $eol = quotemeta($/);
$this->{hash} = { split m{(?<=$eol)}, $this->{result}->_fetch };
}
$this->{hash};
}
}
1;
=head1 NAME
Forks::Super::LazyEval - deferred processing of output from a background proc
( run in 2.723 seconds using v1.01-cache-2.11-cpan-71847e10f99 )