NAME

Iterator::Flex::Manual::Alien - Interfacing with non- Iterator::Flex things.

VERSION

version 0.18

DESCRIPTION

Iterator::Flex provides transparent access to iterators available on CPAN (see Iterator::Flex::Manual::PriorArt), as well as things which are iterable, such as arrays (or objects which act like arrays), or globrefs (or objects which act like them), or objects which provide iterator methods.

For these, "iter" in Iterator::Flex::Common is the family-friendly front end; under the hood "construct_from_iterable" in Iterator::Flex::Factory does the heavy lifting.

There's also Iterator::Flex::ArrayLike, which interfaces to objects which can provide a length and an element accessor.

INTERNALS

UNDER THE HOOD

Other iterators

Interfacing is accomplished by creating a proxy iterator which translates

  1. Invocation

  2. Exhaustion signalling

and forwards other capability invocations to the source iterator.

Invocation

Some iterators are objects which are invoked via a method call, others are code references which can be called directly. Iterator::Flex always works with code references, so in the former case, a closure must be created.

SUPPORT

Bugs

Please report any bugs or feature requests to bug-iterator-flex@rt.cpan.org or through the web interface at: https://rt.cpan.org/Public/Dist/Display.html?Name=Iterator-Flex

Source

Source is available at

https://gitlab.com/djerius/iterator-flex

and may be cloned from

https://gitlab.com/djerius/iterator-flex.git

SEE ALSO

Please see those modules/websites for more information related to this module.

AUTHOR

Diab Jerius <djerius@cpan.org>

COPYRIGHT AND LICENSE

This software is Copyright (c) 2018 by Smithsonian Astrophysical Observatory.

This is free software, licensed under:

The GNU General Public License, Version 3, June 2007