Safe Haskell | Safe |
---|---|
Language | Haskell98 |
Documentation
A quasi-zipper, meant for O(1), fixed-memory stepping through a tree structure, but not meant for updates.
enter :: Foldable f => Fix f -> Zipper (Fix f) Source #
Move into the root of the fixed point. The returned zipper builds a data structure with optimal sharing and fixed memory usage. For example, zLeft >=> zRight
(if successful) returns to the same node in memory.
leave :: Zipper a -> a Source #
Walk back up to the root of the fixed point and leave the zipper structure.