uniplate-1.2.0.3: Uniform type generic traversals.ContentsIndex
Data.Generics.Biplate
Contents
The Class
The Operations
Queries
Transformations
Others
Description

Requires multi-parameter type classes, so is no longer Haskell 98. These operations are easier to use and construct than the equivalent Data.Generics.UniplateStrOn methods, but perform the same operation.

It is recommended that instead of importing this module, you import one of the following modules, to construct instances:

Synopsis
module Data.Generics.UniplateStrOn
class Uniplate to => Biplate from to where
biplate :: BiplateType from to
biplateList :: Biplate from to => from -> ([to], [to] -> from)
universeBi :: Biplate from to => from -> [to]
childrenBi :: Biplate from to => from -> [to]
transformBi :: Biplate from to => (to -> to) -> from -> from
transformBiM :: (Monad m, Biplate from to) => (to -> m to) -> from -> m from
rewriteBi :: Biplate from to => (to -> Maybe to) -> from -> from
rewriteBiM :: (Monad m, Biplate from to) => (to -> m (Maybe to)) -> from -> m from
descendBi :: Biplate from to => (to -> to) -> from -> from
descendBiM :: (Monad m, Biplate from to) => (to -> m to) -> from -> m from
contextsBi :: Biplate from to => from -> [(to, to -> from)]
holesBi :: Biplate from to => from -> [(to, to -> from)]
Documentation
module Data.Generics.UniplateStrOn
The Class
class Uniplate to => Biplate from to where
Children are defined as the top-most items of type to starting at the root.
Methods
biplate :: BiplateType from to
show/hide Instances
(Data a, Data b, Uniplate b, Typeable a, Typeable b) => Biplate a b
(Typeable a, Typeable b, Uniplate b, PlateAll a b) => Biplate a b
biplateList :: Biplate from to => from -> ([to], [to] -> from)
Compatibility method, for direct users of the biplate function
The Operations
Queries
universeBi :: Biplate from to => from -> [to]
childrenBi :: Biplate from to => from -> [to]
Transformations
transformBi :: Biplate from to => (to -> to) -> from -> from
transformBiM :: (Monad m, Biplate from to) => (to -> m to) -> from -> m from
rewriteBi :: Biplate from to => (to -> Maybe to) -> from -> from
rewriteBiM :: (Monad m, Biplate from to) => (to -> m (Maybe to)) -> from -> m from
descendBi :: Biplate from to => (to -> to) -> from -> from
descendBiM :: (Monad m, Biplate from to) => (to -> m to) -> from -> m from
Others
contextsBi :: Biplate from to => from -> [(to, to -> from)]
holesBi :: Biplate from to => from -> [(to, to -> from)]
Produced by Haddock version 0.8