zipper -is:module

Create a zipper, focused on the top-left value.
Construct a Zipper that can explore anything, and start it at the Top.
Not on Stackage, so not searched. Generic zipper for families of recursive datatypes
Zipper structure, whose root type is the first type argument, and whose focus type is the second type argument.
This is the type of a Zipper. It visually resembles a "breadcrumb trail" as used in website navigation. Each breadcrumb in the trail represents a level you can move up to. This type operator associates to the left, so you can use a type like
Top :>> (String,Double) :>> String :>> Char
to represent a Zipper from (String,Double) down to Char that has an intermediate crumb for the String containing the Char. You can construct a Zipper into *any* data structure with zipper. You can repackage up the contents of a Zipper with rezip.
>>> rezip $ zipper 42
The combinators in this module provide lot of things you can do to the Zipper while you have it open. Note that a value of type h :> s :> a doesn't actually contain a value of type h :> s -- as we descend into a level, the previous level is unpacked and stored in Coil form. Only one value of type _ :> _ exists at any particular time for any particular Zipper.
A generic zipper with a root object of type root.
Create a zipper with a different focus type from the outer type. Will return Nothing if there are no instances of the focus type within the original value.
Traversal based zippers Traversal based zippers.
Zipper utils that weren't in Control.Comonad.Store.Zipper Adds some utility functions for and reexports Control.Comonad.Store.Zipper
Like zipper but lifted to MonadThrow.
Return the peek of the next element if it exists.
Return the peek of the previous element if it exists.
Return a list of elements within r hops either side of the zipper target.
Exception thrown when trying to make an empty zipper.
Not on Stackage, so not searched. An implementationg of Attribute Grammars using Functional Zippers