logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Attean::CodeIterator - Iterator implementation backed by a generator function

Author

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

Bugs

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

Description

       The Attean::CodeIterator class represents a typed iterator.  It conforms to the Attean::API::Iterator
       role.

       The Attean::CodeIterator constructor requires two named arguments:

       generator
           A code reference that when called will return either the iterator's next item, or undef upon reaching
           the end of iteration.

       item_type
           A Type::Tiny object representing the type of the items that will be returned from the iterator.

Methods

       "next"
           Returns the iterator's next item, or undef upon reaching the end of iteration.

Name

       Attean::CodeIterator - Iterator implementation backed by a generator function

See Also

Synopsis

         use v5.14;
         use Attean;
         my $iter = Attean::CodeIterator->new(
           generator => sub {
             state $value = 0;
             Attean::Literal->new(++$value)
           },
           item_type => 'Attean::API::Term',
         );

         say $iter->next->value; # 1
         say $iter->next->value; # 2
         say $iter->next->value; # 3

Version

       This document describes Attean::CodeIterator version 0.035

See Also