Reference: each
Author: Ellen Siever, Stephen Spainhour & Nathan Patwardhan
Date: 1999-07-02T01:34:38Z

#

| Chapter 5 Function Reference |

## each

    each %hash

Returns a two-element list consisting of the key and value for the next element of a hash. With successive calls to `each`, you can iterate over the entire hash. Entries are returned in an indeterminate order. When the hash is entirely read, a null list is returned. The next call to `each` after that will start a new iteration. The iterator can be reset either by reading all the elements from the hash, or by calling the `keys` function in scalar context. You must not add elements to the hash while iterating over it, although you are permitted to use `delete`. In a scalar context, `each` returns just the key.

There is a single iterator for each hash, shared by all `each`, `keys`, and `values` function calls in the program. This means that after a `keys` or `values` call, the next `each` call will start again from the beginning.

Reference: dump |  | Reference: endgrent