Cursor (source code)

= Cursor

A sequential-access object with a non-consuming current-value operation and a separate advance operation. Repeated reads of the current value leave its abstract <sequence> unchanged. Converting a consuming <iterator> into a cursor therefore needs a cache or an equivalent saved-current representation.