Skip to content

DanielSchuessler/th-expand-syns

Repository files navigation

th-expand-syns

Hackage Hackage Dependencies Haskell Programming Language Build Status

Expands type synonyms in Template Haskell ASTs.

As of version 0.4.9.0, this library is a small shim on top of the applySubstitution/resolveTypeSynonyms functions from th-abstraction, so you may want to consider using th-abstraction instead. The only pieces of functionality that th-expand-syns provides which are not currently present in th-abstraction are:

  • th-expand-syns' expandSyns{With} functions will warn that they cannot expand type families (if the SynonymExpansionSettings are configured to check for this). By contrast, th-abstraction's applySubstitution function will silently ignore type families.
  • th-expand-syns provides a substInCon function which allows substitution into Cons.
  • th-expand-syns provides evade{s} functions which support type variable Name freshening that calculating the free variables in any type that provides an instance of Data.

About

Expands type synonyms in Template Haskell ASTs

Resources

License

Stars

Watchers

Forks

Packages

No packages published