úÎ{     Safe%1]d Type expression Type equation Type atom Synonym substitute name typ exp replaces all occurences of name in exp with typ. Just like   but for more variables.DCheck if the given type expression utilizes the given variable name.<Try to reduce the given type expression as much as possible.match pat input pattern matches input against the given pat.  Safe %&'-FST]TSome Type Type of a EquationReduce the given equation.Are the given equations equal?)Match a single equation against an input.&Match many equations against an input.Type equality for s(Check whether two potentially disparate  s are equal.Check whether two  s are equal."substituteType name value haystack* replaces all occurrences of the variable name with value in haystack. Reduce the given  as much as possible.!xMatches an input against a pattern. In case of succesful matching, matched variables will be substituted in the target."Convert from a  to .Pattern and substitution targetInput!Patterns and substitution targetsInput Variable nameReplacement for variableHaystack!PatternInputSubstitution target#$%&'()*+,-. "#$()%&'*+,-.None1/012345None]66Importer monad7$Register a name with the name cache.8AConstruct a type expression using the equations of a type family.Get the type expression for a 93. Attempts to reduce the resulting type expression.:Get the type expression for a 9.Get the type expression for a ;3. Attempts to reduce the resulting type expression.<Get the type expression for a ;.Noned    =       !"#$%&'()*+,-./0123456789:;<=><=?@-type-interpreter-0.1.4-9viDTNHmAAvEIqSt2KxJU0#Language.Haskell.TH.TypeInterpreter.Language.Haskell.TH.TypeInterpreter.Expression/Language.Haskell.TH.TypeInterpreter.Expression2)Language.Haskell.TH.TypeInterpreter.Names*Language.Haskell.TH.TypeInterpreter.ImportTypeExpAtomApplyVariableFunction TypeEquationTypeAtomIntegerStringName PromotedNameSynonym substitute substituteAllreducematchfromTypefromName usesVariableSomeTypeTypeKindEquationreduceEquationequationsEqual matchEquationmatchEquations typeEqualitydisparateTypesEqual typesEqualsubstituteType reduceTypematchAndSubstituteType fromSomeTypeNatConAppFunSymVarKNatKSymKTypKArr arrowTypeNameequalityTypeName listTypeName starTypeNameconstraintTypeNamenilNameconsNameImporter registerNamefromTypeFamilytemplate-haskellLanguage.Haskell.TH.Syntax fromTypeOnly fromNameOnly