úÎÈ     None¾None1;=O1Produce binding info and a list of type argumentsCMore ergonomic representation of bound and unbound names of things.GWe know this name refers to a specific thing (i.e. it's a constructor)1We don't know what this is (i.e. a type variable)Convenience function.None1<TypeL (name, xs) is a field with type name applied to types xs. Recursive field.   None%&'01;<=FTV]Ô Type constructor arity. 9Some type and its arguments, as representable in a graph.)Descend into primitive type constructors?6If a name in this set is encountered, stop descending.Default reify options. defaultOpts =  ReifyOpts3 { expandPrim = False , terminals = mempty } SProduces a string literal representing a type tree. Useful for debugging purposes. with the given options.)Embed the produced tree as an expression. $(ttEdges ''Foo) :: [((!,  ),  , [ ])]$(ttEdges ''Foo)) produces a list suitable for passing to ". $(ttConnComp ''Foo) :: [# (!,  )]$(ttConnComp ''Foo)f produces a topologically sorted list of the strongly connected components of the graph representing Foo. with provided opts.*Build a "type tree" of the given datatype.*Concrete types will appear in the tree as ConL$. Unbound variables will appear as VarLa. If the datastructure is recursive, occurrences of the node after the first will be wrapped in  . with the provided options.   $%&'  (      !"#$%&'()*()+,,-./(type-tree-0.1.0.0-1xpAMFxLXKUFdQI34c2yx9Language.Haskell.TypeTree&Language.Haskell.TypeTree.CheatingLift"Language.Haskell.TypeTree.DatatypeLanguage.Haskell.TypeTree.Leaf IsDatatype asDatatypeBindingBoundUnbound unBindingguessLeafTypeL RecursiveArityKey ReifyOpts expandPrim terminals defaultOpts ttDescribettDescribeOptsttLitttEdges ttConnComp ttLitOptsttReify ttReifyOpts$fShowReifyOpts $fEqReifyOpts$fShowReifyEnvliftNameunwrapliftType liftBindingtreeDoctemplate-haskellLanguage.Haskell.TH.SyntaxNamecontainers-0.5.10.2 Data.GraphgraphFromEdgesSCCReifyEnvtypeEnvnodes