-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/


-- | Template Haskell code to generate instances of classes in some package
--   
--   Template Haskell code to generate instances of classes in some
--   package, such as <a>GEq</a> and <a>GCompare</a>.
@package dependent-sum-template
@version 0.2.0.0

module Data.GADT.Show.TH
class DeriveGShow t
deriveGShow :: DeriveGShow t => t -> Q [Dec]
instance Data.GADT.Show.TH.DeriveGShow Language.Haskell.TH.Syntax.Name
instance Data.GADT.Show.TH.DeriveGShow Language.Haskell.TH.Syntax.Dec
instance Data.GADT.Show.TH.DeriveGShow t => Data.GADT.Show.TH.DeriveGShow [t]
instance Data.GADT.Show.TH.DeriveGShow t => Data.GADT.Show.TH.DeriveGShow (Language.Haskell.TH.Syntax.Q t)

module Data.GADT.Compare.TH
class DeriveGEQ t
deriveGEq :: DeriveGEQ t => t -> Q [Dec]
class DeriveGCompare t
deriveGCompare :: DeriveGCompare t => t -> Q [Dec]
data GComparing a b t
runGComparing :: forall {k} {a :: k} {b :: k}. GComparing a b (GOrdering a b) -> GOrdering a b
geq' :: GCompare t => t a -> t b -> GComparing x y (a :~: b)
compare' :: forall {k} {a} {a :: k} {b :: k}. Ord a => a -> a -> GComparing a b ()
instance Data.GADT.Compare.TH.DeriveGCompare Language.Haskell.TH.Syntax.Name
instance Data.GADT.Compare.TH.DeriveGCompare Language.Haskell.TH.Syntax.Dec
instance Data.GADT.Compare.TH.DeriveGCompare t => Data.GADT.Compare.TH.DeriveGCompare [t]
instance Data.GADT.Compare.TH.DeriveGCompare t => Data.GADT.Compare.TH.DeriveGCompare (Language.Haskell.TH.Syntax.Q t)
instance Data.GADT.Compare.TH.DeriveGEQ Language.Haskell.TH.Syntax.Name
instance Data.GADT.Compare.TH.DeriveGEQ Language.Haskell.TH.Syntax.Dec
instance Data.GADT.Compare.TH.DeriveGEQ t => Data.GADT.Compare.TH.DeriveGEQ [t]
instance Data.GADT.Compare.TH.DeriveGEQ t => Data.GADT.Compare.TH.DeriveGEQ (Language.Haskell.TH.Syntax.Q t)
