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