@@ -10,7 +10,6 @@ module Ormolu.Printer.Meat.Declaration.TypeFamily
1010where
1111
1212import Control.Monad
13−import Data.List (intersperse)
1413import Data.Maybe (maybeToList, isJust)
1514import HsDecls
1615import HsTypes
@@ -23,21 +22,19 @@ import SrcLoc (Located, GenLocated (..))
2322p_famDecl :: FamilyDecl GhcPs -> R ()
2423p_famDecl FamilyDecl {..} = do
2524 mmeqs <- case fdInfo of
26− DataFamily -> Nothing <$ txt "data family"
27− OpenTypeFamily -> Nothing <$ txt "type family"
28− ClosedTypeFamily eqs -> Just eqs <$ txt "type family"
29− space
25+ DataFamily -> Nothing <$ txt "data family "
26+ OpenTypeFamily -> Nothing <$ txt "type family "
27+ ClosedTypeFamily eqs -> Just eqs <$ txt "type family "
3028 located fdLName p_rdrName
3129 space
3230 let HsQTvs {..} = fdTyVars
3331 items =
3432 maybeToList (p_familyResultSigL (isJust fdInjectivityAnn) fdResultSig)
3533 ++ (located' p_injectivityAnn <$> maybeToList fdInjectivityAnn)
36− unless (null hsq_explicit) $
37− sequence_ $ withSep space (located' p_hsTyVarBndr) hsq_explicit
34+ spaceSep (located' p_hsTyVarBndr) hsq_explicit
3835 unless (null items) $
3936 vlayout space newline
40− inci . inci . sequence_ $ intersperse space items
37+ inci . inci $ spaceSep id items
4138 case mmeqs of
4239 Nothing -> newline
4340 Just meqs -> do
@@ -66,14 +63,14 @@ p_injectivityAnn (InjectivityAnn a bs) = do
6663 located a p_rdrName
6764 space
6865 rarrow
69− sequence_ $ withSep space (located' p_rdrName) bs
66+ spaceSep (located' p_rdrName) bs
7067
7168p_tyFamInstEqn :: TyFamInstEqn GhcPs -> R ()
7269p_tyFamInstEqn HsIB {..} = velt'
7370 [ do located feqn_tycon p_rdrName
7471 space
75− sequence_ $ withSep space (located' p_hsType) feqn_pats
76− , inci $ txt "= " >> located feqn_rhs p_hsType
72+ spaceSep (located' p_hsType) feqn_pats
73+ , inci $ txt "= " >> inci (located feqn_rhs p_hsType)
7774 ]
7875 where
7976 FamEqn {..} = hsib_body