derive-monoid-0.0.0: derive Semigroup/Monoid/IsList

Safe HaskellNone
LanguageHaskell2010

Derive.List.Internal

Description

(.Internal modules may violate the PVP)

Synopsis

Documentation

deriveIsList :: Name -> Name -> DecsQ Source

derives IsList only.

deriveSemigroup_ :: DeriveListNames -> DecsQ Source

needs no constraints.

assumes makeAppend

deriveMonoid_ :: DeriveListNames -> DecsQ Source

needs no constraints.

assumes makeAppend, makeEmpty

deriveIsList_ :: DeriveListNames -> DecsQ Source

needs no constraints.

assumes makeToList

makeDeriveListNames :: DeriveListConfig -> Name -> Name -> DeriveListNames Source

can debug deriveList with:

print $ makeDeriveListNames defaultDeriveListConfig ''T 'C

defaultDeriveListConfig :: DeriveListConfig Source

by default, the functions generated for a type T are "emptyT" and "toTList".