Skip to content
  • Ben Gamari's avatar
    Break up TyCoRep · 371dadfb
    Ben Gamari authored and Marge Bot's avatar Marge Bot committed
    This breaks up the monstrous TyCoReps module into several new modules by
    topic:
    
     * TyCoRep: Contains the `Coercion`, `Type`, and related type
       definitions and a few simple predicates but nothing further
    
     * TyCoPpr: Contains the the pretty-printer logic
    
     * TyCoFVs: Contains the free variable computations (and
       `tyConAppNeedsKindSig`, although I suspect this should change)
    
     * TyCoSubst: Contains the substitution logic for types and coercions
    
     * TyCoTidy: Contains the tidying logic for types
    
    While we are able to eliminate a good number of `SOURCE` imports (and
    make a few others smaller) with this change, we must introduce one new
    `hs-boot` file for `TyCoPpr` so that `TyCoRep` can define `Outputable`
    instances for the types it defines.
    
    Metric Increase:
        haddock.Cabal
        haddock.compiler
    371dadfb