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

NAME

       Attean::API::Iterator - Typed iterator

VERSION

       This document describes Attean::API::Iterator version 0.026

DESCRIPTION

       The Attean::API::Iterator role defines a common API for typed iterators.  This package also defines
       several type-specific iterator roles:

       •   Attean::API::TripleIterator

       •   Attean::API::QuadIterator

       •   Attean::API::MixedStatementIterator

       •   Attean::API::ResultIterator

       These roles will automatically be applied to iterators during construction when appropriate.

ATTRIBUTES

       The following attributes exist:

       "item_type"
           A string indicating the type of elements returned by the iterator.

REQUIRED METHODS

       The following methods are required by the Attean::API::Iterator role:

       "next"
           Returns the next element from the iterator, or "undef" upon exhaustion.

METHODS

       The Attean::API::Iterator role provides default implementations of the following methods:

       "elements"
           Returns a list of all remaining elements in the iterator.

       "map( \&mapper [, $result_type] )"
           Returns  a  new  Attean::API::Iterator  object  with  each  element mapped using the supplied &mapper
           function. If the iterator elements are of the same type as those in the  referent  iterator,  only  a
           mapping  function  is required.  Otherwise, the supplied Type::Tiny $result_type object must indicate
           the new iterator's type information.

       "grep( \&filter )"
           Returns a new Attean::API::Iterator object that filters elements from the referent iterator based  on
           whether calling "&filter( $element )" for each $element results in a true value.

       "offset( $offset )"
           Returns the Attean::API::Iterator referent after skipping the first $offset elements.

       "limit( $limit )"
           Returns a new Attean::API::Iterator object which returns the first $limit elements of the referent.

       "materialize"
           Returns a new Attean::API::RepeatableIterator object containing all the elements from the referent.

       "debug( [$name] )"
           Print each item as it is consumed (with the string generated by "as_string"), prepended by $name.

BUGS

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

SEE ALSO

       Attean::API::RepeatableIterator

AUTHOR

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

COPYRIGHT

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

perl v5.30.0                                       2020-02-24                         Attean::API::Iterator(3pm)