This protocol specifies an interface for an enumerator that allows simple iteration over a collection.
This protocol is implemented by objects returned by the following getEnumerator methods:
An enumerator remains valid even if the contents of the collection changes.