Provided by: libattean-perl_0.021-1_all bug

NAME

       Attean::API::AtOnceParser - Role for parsers that natively parse all input before
       returning any data

VERSION

       This document describes Attean::API::AtOnceParser version 0.021

DESCRIPTION

       The Attean::API::AtOnceParser role defines parsers that must parse all input data before
       any objects are constructed and returned or passed to callback functions. This role adds
       methods that builds on this functionality to allow parsing data using different
       approaches.

ROLES

       This role consumes the Attean::API::Parser role.

REQUIRED METHODS

       Classes consuming this role must provide the following methods:

       "parse_list_from_io( $fh )"
           Returns a list of all objects that result from parsing the data read from the
           IO::Handle object $fh.

       "parse_list_from_bytes( $data )"
           Returns a list of all objects that result from parsing the data read from the UTF-8
           encoded byte string $data.

METHODS

       This role provides default implementations of the following methods:

       "parse_iter_from_io( $fh )"
           Returns an Attean::API::Iterator that result from parsing the data read from the
           IO::Handle object $fh.

       "parse_iter_from_bytes( $data )"
           Returns an Attean::API::Iterator that result from parsing the data read from the UTF-8
           encoded byte string $data.

       "parse_cb_from_io( $fh )"
           Calls the "$parser->handler" function once for each object that result from parsing
           the data read from the IO::Handle object $fh.

       "parse_cb_from_bytes( $data )"
           Calls the "$parser->handler" function once for each object that result from parsing
           the data read from the UTF-8 encoded byte string $data.

BUGS

       Please report any bugs or feature requests to through the GitHub web interface at
       <https://github.com/kasei/attean/issues>.

SEE ALSO

AUTHOR

       Gregory Todd Williams  "<gwilliams@cpan.org>"

COPYRIGHT

       Copyright (c) 2014--2018 Gregory Todd Williams.  This program is free software; you can
       redistribute it and/or modify it under the same terms as Perl itself.