NAME
Attean::IteratorSequence - Iterator implementation backed by zero or more sub-iterators
VERSION
This document describes Attean::IteratorSequence version 0.027
SYNOPSIS
use v5.14;
use Attean;
my $iter = Attean::IteratorSequence->new(iterators => [$iter1, $iter2]);
DESCRIPTION
The Attean::IteratorSequence class represents a typed iterator that is backed by zero or more sub-iterators. When iterated over, it will return all the elements of all of its sub-iterators, in order, before returning undef. It conforms to the Attean::API::Iterator role.
The Attean::IteratorSequence constructor requires two named arguments:
- iterators
-
An array reference containing zero or more Attean::API::Iterator objects.
- item_type
-
A string 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.
push( $iterator )
-
Adds the new
$iterator
to the end of the array of sub-iterators.After this call,
$iterator
will be owned by the IteratorSequence, so making any method calls on$iterator
after this point may produce unexpected results.
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--2020 Gregory Todd Williams. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.