-- 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]