---
name: "Attean::API::RepeatableIterator"
section: "3pm"
platform: "linux"
package: "libattean-perl"
version: "0.035-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Attean::API::RepeatableIterator"
---

# Attean::API::RepeatableIterator(3pm)

Role representing iterators that may be reset and iterated again

## NAME

Attean::API::RepeatableIterator - Role representing iterators that may be reset and iterated again

## VERSION

This document describes Attean::API::RepeatableIterator version 0.035

## SYNOPSIS

```
  use v5.14;
  use Attean;
```

## DESCRIPTION

This is a Moo role that are consumed by iterators that can be reset and iterated again.

## ROLES

This role consumes the Attean::API::Iterator role.

## REQUIRED METHODS

Classes consuming this role must provide the following methods:

- "reset"

  Resets the state of the iterator, allowing iteration from the start of the underlying data.

## METHODS

This role provides default implementations of the following methods:

- "elements"

  Returns a list of all elements in the iterator, leaving the iterator state untouched.

- "peek"

  Returns the first element of the iterator, leaving the iterator state untouched.

## 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--2022 Gregory Todd Williams. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
