th-expand-syns-0.1.0.1: Expands type synonyms in Template Haskell ASTs

Language.Haskell.TH.ExpandSyns

Contents

Synopsis

Expand synonyms

expandSyns :: Type -> Q TypeSource

Expands type synonyms...

Misc utilities

substInType :: (Name, Type) -> Type -> TypeSource

Capture-free substitution

evades :: Data t => [Name] -> t -> [Name]Source

Make a list of names (based on the first arg) such that every name in the result is distinct from every name in the second arg, and from the other results

evade :: Data d => Name -> d -> NameSource

Make a name (based on the first arg) that's distinct from every name in the second arg