-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Pattern predicates using TH -- @package is @version 0.2 -- | Generate predicates from constructor names or from quoted patterns. -- -- You must enable the TemplateHaskell extension to use this -- module. module Data.Generics.Is is :: Name -> Q Exp isNot :: Name -> Q Exp isP :: Q Pat -> Q Exp isNotP :: Q Pat -> Q Exp -- | Generate predicates of the form isC -- --
-- >>> $(makePredicates ''E) -- -- >>> isPlus (Plus (Lit 1) (Lit 2)) -- True --makePredicates :: Name -> Q [Dec] -- | Generate predicates of the form isNotC -- --
-- >>> $(makePredicatesNot ''E) -- -- >>> isNotAnd (Showable True) -- True --makePredicatesNot :: Name -> Q [Dec] -- | Generate predicates of both forms, isC and isNotC -- --
-- $(makePredicatesAll ''E) ≡ $(makePredicates ''E) ; $(makePredicatesNot ''E) --makePredicatesAll :: Name -> Q [Dec]