Safe Haskell | Safe-Inferred |
---|
Documentation
type ZipperMonad phi r a b = StateT (ZipperState phi r a) Maybe bSource
type ZipperState phi r a = ([Any phi], Loc phi r a)Source
rightMonad :: (EqS phi, El phi a) => ZipperMonad phi I0 a (Any phi)Source
navigate :: (Fam phi, EqS phi, El phi a, Zipper phi (PF phi)) => phi a -> a -> ZipperMonad phi I0 a b -> Maybe aSource
updateMonad :: (EqS phi, El phi a) => (forall xi. phi xi -> xi -> Maybe xi) -> ZipperMonad phi I0 a (Any phi)Source