| |||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||
Description | |||||||||||||||||||||||||||||||||||||||||||||
The core module of the Data.Derive system. This module contains the data types used for communication between the extractors and the derivors. | |||||||||||||||||||||||||||||||||||||||||||||
Synopsis | |||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||
Documentation | |||||||||||||||||||||||||||||||||||||||||||||
type DataDef = Dec | |||||||||||||||||||||||||||||||||||||||||||||
type CtorDef = Con | |||||||||||||||||||||||||||||||||||||||||||||
dataName :: DataDef -> String | |||||||||||||||||||||||||||||||||||||||||||||
dataArity :: DataDef -> Int | |||||||||||||||||||||||||||||||||||||||||||||
dataCtors :: DataDef -> [CtorDef] | |||||||||||||||||||||||||||||||||||||||||||||
ctorName :: CtorDef -> String | |||||||||||||||||||||||||||||||||||||||||||||
ctorArity :: CtorDef -> Int | |||||||||||||||||||||||||||||||||||||||||||||
ctorStrictTypes :: CtorDef -> [StrictType] | |||||||||||||||||||||||||||||||||||||||||||||
ctorTypes :: CtorDef -> [Type] | |||||||||||||||||||||||||||||||||||||||||||||
ctorFields :: CtorDef -> [String] | |||||||||||||||||||||||||||||||||||||||||||||
dropModule :: String -> String | |||||||||||||||||||||||||||||||||||||||||||||
normData :: DataDef -> DataDef | |||||||||||||||||||||||||||||||||||||||||||||
typeApp :: Type -> (Type, [Type]) | |||||||||||||||||||||||||||||||||||||||||||||
eqConT :: String -> Type -> Bool | |||||||||||||||||||||||||||||||||||||||||||||
isTupleT :: Type -> Bool | |||||||||||||||||||||||||||||||||||||||||||||
Depreciated, old type stuff | |||||||||||||||||||||||||||||||||||||||||||||
data RType | |||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||
data TypeCon | |||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||
ctorRTypes :: DataDef -> CtorDef -> [RType] | |||||||||||||||||||||||||||||||||||||||||||||
ex_type :: DataDef -> Type -> RType | |||||||||||||||||||||||||||||||||||||||||||||
ex_args :: DataDef -> [Name] | |||||||||||||||||||||||||||||||||||||||||||||
Produced by Haddock version 0.8 |