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

Safe Haskell | None
Language | Haskell2010

Language.Haskell

# Documentation

(?) :: Bool -> a -> a -> a infix 1 Source #

foralls :: Type () -> Type () Source #

tyApps :: Type () -> [Type ()] -> Type () Source #

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

fromTyTuple :: Type t -> [Type t] Source #

fromTyParen :: Type () -> Type () Source #

fromTyParens :: Type () -> Type () Source #

tyRoot :: Type () -> String Source #

isTyFun :: Type () -> Bool Source #

isTyParen :: Type t -> Bool Source #

fromTyList :: Type t -> Maybe (Type t) Source #

(~=) :: Pretty a => a -> String -> Bool Source #

appP :: Exp () -> Exp () -> Exp () Source #

simplify :: Data a => a -> a Source #

isGuardFalse :: Match t -> Bool Source #

rename :: QName () -> QName () Source #

isAtom :: Exp t -> Bool Source #

paren :: Exp () -> Exp () Source #

sl :: SrcLoc Source #

noSl :: Data from => from -> from Source #

isIdent :: [Char] -> Bool Source #

title :: [Char] -> [Char] Source #

qname :: String -> QName () Source #

var :: String -> Exp () Source #

con :: String -> Exp () Source #

tyVar :: String -> Type () Source #

tyVarBind :: String -> TyVarBind () Source #

tyCon :: String -> Type () Source #

pVar :: String -> Pat () Source #

qvop :: String -> QOp () Source #

dataDeclType :: DataDecl -> Type () Source #

dataDeclFields :: DataDecl -> [String] Source #

type DataDecl = Decl () Source #

type CtorDecl = Either (QualConDecl ()) (GadtDecl ()) Source #

type FieldDecl = [(String, Type ())] Source #

type FullDataDecl = (ModuleName (), DataDecl) Source #

moduleName :: Module t -> ModuleName t Source #

moduleDecls :: Module t -> [Decl t] Source #

moduleImports :: Module t -> [ImportDecl t] Source #

modulePragmas :: Module t -> [ModulePragma t] Source #

showDecls :: Pretty a => [a] -> String Source #

tyApp :: Type () -> [Type ()] -> Type () Source #

tyFun :: [Type ()] -> Type () Source #

apps :: Exp () -> [Exp ()] -> Exp () Source #

bind :: String -> [Pat ()] -> Exp () -> Decl () Source #

binds :: String -> [([Pat ()], Exp ())] -> Decl () Source #

isDataDecl :: Decl () -> Bool Source #

dataDeclName :: DataDecl -> String Source #

fromDeclHead :: DeclHead a -> (Name a, [TyVarBind a]) Source #

fromIParen :: InstRule a -> InstRule a Source #

fromInstHead :: InstHead a -> (QName a, [Type a]) Source #

dataDeclVars :: DataDecl -> [String] Source #

dataDeclVarsStar :: DataDecl -> [String] Source #

dataDeclArity :: DataDecl -> Int Source #

dataDeclCtors :: DataDecl -> [CtorDecl] Source #

ctorDeclName :: CtorDecl -> String Source #

ctorDeclName' :: CtorDecl -> Name () Source #

ctorDeclFields :: CtorDecl -> FieldDecl Source #

ctorDeclArity :: CtorDecl -> Int Source #

declName :: Decl () -> String Source #

module Language.Haskell.Exts