derive-2.6.3: A program and library to derive instances for data types

Safe Haskell | None
Language | Haskell2010

Language.Haskell.TH.Data

Description

The core module of the Data.Derive system. This module contains the data types used for communication between the extractors and the derivors.

# Documentation

type DataDef = Dec Source #

type CtorDef = Con Source #

dataName :: DataDef -> String Source #

qualifiedDataName :: DataDef -> Name Source #

dataArity :: DataDef -> Int Source #

dataArgs :: DataDef -> [Name] Source #

dataCtors :: DataDef -> [CtorDef] Source #

ctorName :: CtorDef -> String Source #

qualifiedCtorName :: CtorDef -> Name Source #

ctorArity :: CtorDef -> Int Source #

ctorStrictTypes :: CtorDef -> [StrictType] Source #

ctorTypes :: CtorDef -> [Type] Source #

ctorFields :: CtorDef -> [String] Source #

dropModule :: String -> String Source #

dropNumber :: String -> String Source #

normData :: DataDef -> DataDef Source #

unqualifiedName :: Name -> String Source #

typeApp :: Type -> (Type, [Type]) Source #

eqConT :: String -> Type -> Bool Source #

isTupleT :: Type -> Bool Source #