NAME¶
Attean::ListIterator - Iterator implementation backed by a list/array of values
VERSION¶
This document describes Attean::ListIterator version 0.021
SYNOPSIS¶
use v5.14;
use Attean;
my @values = map { Attean::Literal->new($_) } (1,2,3);
my $iter = Attean::ListIterator->new(
values => \@values,
item_type => 'Attean::API::Term',
);
say $iter->next->value; # 1
say $iter->next->value; # 2
say $iter->next->value; # 3
DESCRIPTION¶
The Attean::ListIterator class represents a typed iterator. It conforms to the
Attean::API::RepeatableIterator role.
The Attean::ListIterator constructor requires two named
arguments:
- values
- An array reference containing the items to iterate over.
- item_type
- A string representing the type of the items that will be returned from the
iterator.
METHODS¶
- "reset"
- Resets the iterator's internal state so that iteration begins again at the
beginning of the values array.
- "next"
- Returns the iterator's next item, or undef upon reaching the end of
iteration.
- "size"
- Returns the number of elements still remaining in the iterator until it is
fully consumed or until "reset" is
called.
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.