diff options
Diffstat (limited to 'haddock-api/src/Haddock')
-rw-r--r-- | haddock-api/src/Haddock/Interface/Specialize.hs | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/haddock-api/src/Haddock/Interface/Specialize.hs b/haddock-api/src/Haddock/Interface/Specialize.hs index 59985de6..ddae2b93 100644 --- a/haddock-api/src/Haddock/Interface/Specialize.hs +++ b/haddock-api/src/Haddock/Interface/Specialize.hs @@ -116,7 +116,7 @@ sugar = everywhere $ mkT step where step :: HsType name -> HsType name - step = sugarTuples . sugarLists + step = sugarOperators . sugarTuples . sugarLists sugarLists :: NamedThing name => HsType name -> HsType name @@ -145,6 +145,12 @@ sugarTuples typ = aux _ _ = typ +sugarOperators :: NamedThing name => HsType name -> HsType name +sugarOperators (HsAppTy (L _ (HsAppTy (L loc (HsTyVar name)) la)) lb) + | isSymOcc $ getOccName name = mkHsOpTy la (L loc name) lb +sugarOperators typ = typ + + -- | Compute arity of given tuple operator. -- -- >>> parseTupleArity "(,,)" |