derive-2.6.1: A program and library to derive instances for data types
Data.Derive.DSL.HSE
sample :: Input #
outEq :: Out -> Out -> Bool #
showOut :: Pretty a => [a] -> String #
type Input = DataDecl #
type Ctor = CtorDecl #
dataName :: DataDecl -> String #
dataVars :: DataDecl -> Int #
dataCtors :: DataDecl -> [CtorDecl] #
ctorName :: CtorDecl -> String #
ctorArity :: CtorDecl -> Integer #
ctorIndex :: Input -> Ctor -> Integer #
toInput :: DataDecl -> Input #
type Out = [Decl ()] #
data Output #
Constructors
Instances
Methods
(==) :: Output -> Output -> Bool #
(/=) :: Output -> Output -> Bool #
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Output -> c Output #
gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Output #
toConstr :: Output -> Constr #
dataTypeOf :: Output -> DataType #
dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c Output) #
dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Output) #
gmapT :: (forall b. Data b => b -> b) -> Output -> Output #
gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Output -> r #
gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Output -> r #
gmapQ :: (forall d. Data d => d -> u) -> Output -> [u] #
gmapQi :: Int -> (forall d. Data d => d -> u) -> Output -> u #
gmapM :: Monad m => (forall d. Data d => d -> m d) -> Output -> m Output #
gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Output -> m Output #
gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Output -> m Output #
showsPrec :: Int -> Output -> ShowS #
show :: Output -> String #
showList :: [Output] -> ShowS #
toOutput :: Data a => a -> Output #
fromOutput :: Data a => Output -> a #
coerce :: (Typeable * a, Typeable * a1) => a1 -> a #
readCon :: DataType -> [Char] -> Constr #
out :: Data a => a -> Output #
fromState :: State a x -> x #
module Language.Haskell