NAME
Text::APL::Reader - reader
DESCRIPTION
Reads a template from various sources. Accepts a subroutine for a custom implementation.
Returns a reference to subroutine. When called accepts another reference to subroutine that is called upon receiving a chunk of the template.
For example a reader from a scalar reference is implemented as:
$reader
=
sub
{
my
(
$cb
) =
@_
;
$cb
->(${
$input_string
});
$cb
->();
};
The first call on cb
notifies Text::APL about the template chunk and second without arguments notifies Text::APL about EOF.
The following sources are implemented:
$reader
->(\
$scalar
);
$reader
->(
$filename
);
$reader
->(
$filehandle
);
$reader
->(
sub
{...custom code...});
Custom subroutines are used for non-blocking template reading. See examples/
directory for an example using IO::AIO for non-blocking template reading.
METHODS
build
Build a reader.