ppr (HsBindGroup binds sigs is_rec)
= vcat [ppr_isrec,
vcat (map ppr sigs),
- vcat (map ppr (bagToList binds))
+ pprLHsBinds binds
]
where
ppr_isrec = getPprStyle $ \ sty ->
type LHsBinds id = Bag (LHsBind id)
type LHsBind id = Located (HsBind id)
+pprLHsBinds :: OutputableBndr id => LHsBinds id -> SDoc
+pprLHsBinds binds = lbrace <+> vcat (map ppr (bagToList binds)) <+> rbrace
+
data HsBind id
= FunBind (Located id)
-- Used for both functions f x = e
nest 4 ( vcat [pprBndr LetBind x | (_,x,_) <- exports]
-- Print type signatures
$$
- ppr val_binds )
+ pprLHsBinds val_binds )
\end{code}
%************************************************************************
-- Because Expr imports Decls via HsBracket
import HsBinds ( HsBindGroup, HsBind, LHsBinds,
- Sig(..), LSig, LFixitySig )
+ Sig(..), LSig, LFixitySig, pprLHsBinds )
import HsPat ( HsConDetails(..), hsConArgs )
import HsImpExp ( pprHsVar )
import HsTypes
ppr (InstDecl inst_ty binds uprags)
= vcat [hsep [ptext SLIT("instance"), ppr inst_ty, ptext SLIT("where")],
nest 4 (ppr uprags),
- nest 4 (ppr binds) ]
+ nest 4 (pprLHsBinds binds) ]
\end{code}
%************************************************************************