This is a way for an object to have multiple ways of being enumerated via argument to it's each() method. An Enumerator mixes in Enumerable, so the standard APIs such as Enumerable#map(), Enumerable#to_a(), and Enumerable#find_all() can be used on it.
TODO since 1.8, this is part of the standard library, I should rewrite vPim so this can be removed.
Generated with the Darkfish Rdoc Generator 2.