Structs

A wrapper around an existing iterator to extend it with backtracking functionality
A backwalk through a BacktrackingIterator’s history. Yields references to items in the history, and can be used to walk back to a desired point. The current position is before the most-recently-yielded element. To restart a BacktrackingIterator at the current position of the backwalk, use the history_position() method.