The HH\KeyedTraversable<Tk,Tv> interface

This page is a quick reference for people already familiar with the class. If this is new to you, we strongly recommend reading the introductory guides first:

Represents an entity that can be iterated over using foreach, allowing a key.

The iteration variables will have a type of Tk for the key and Tv for the value.

In addition to Hack collections, PHP arrays and anything that implement KeyedIterator are KeyedTraversable.

In general, if you are implementing your own Hack class, you will want to implement KeyedIterable instead of KeyedTraversable since KeyedTraversable is more of a bridge for PHP arrays to work well with Hack collections.

Interface synopsis

interface KeyedTraversable implements Traversable {...}