This module defines Uniplate
/ Biplate
instances for every type with a
Data
instance. Using GHC, Data can be derived automatically with:
data Expr = Var Int | Neg Expr | Add Expr Expr deriving (Data,Typeable)
All the Uniplate operations defined in Data.Generics.Uniplate.Operations can be used.
For faster performance (5x faster, but requires writing instances) switch to
Data.Generics.Uniplate.Direct. If you get instance conflicts
when using both Data
and Direct
, switch to Data.Generics.Uniplate.DataOnly.