camfort-0.804: CamFort - Cambridge Fortran infrastructure

Camfort.Traverse

extendBi :: (Biplate (from a) (to a), RComonad to) => (to a -> a) -> from a -> from a Source #

reduceCollect :: (Data s, Data t, Uniplate t, Biplate t s) => (s -> Maybe a) -> t -> [a] Source #

everywhere :: (Zipper a -> Zipper a) -> Zipper a -> Zipper a Source #

zfmap :: Data a => (a -> a) -> Zipper (d a) -> Zipper (d a) Source #

extendBi' :: (Biplate (from a) (to a), Comonad to) => (to a -> a) -> from a -> from a Source #

class RComonad t where Source #

Minimal complete definition

rextract, rextend

Methods

rextract :: t a -> a Source #

rextend :: (t a -> a) -> t a -> t a Source #

Instances

rextract :: Fortran a -> a Source #

rextend :: (Fortran a -> a) -> Fortran a -> Fortran a Source #

class RFunctor t where Source #

rfmap

rfmap :: (a -> a) -> t a -> t a Source #

class Refill d where Source #

refill

refill :: d a -> a -> d a Source #

refill :: Fortran a -> a -> Fortran a Source #

annotation :: Tagged g => g a -> a Source #