-
-``Qualifiers'' in list comprehensions:
-\begin{code}
-data Qual tyvar uvar id pat
- = GeneratorQual pat
- (HsExpr tyvar uvar id pat)
- | LetQual (HsBinds tyvar uvar id pat)
- | FilterQual (HsExpr tyvar uvar id pat)
-\end{code}
-
-\begin{code}
-instance (NamedThing id, Outputable id, Outputable pat,
- Eq tyvar, Outputable tyvar, Eq uvar, Outputable uvar) =>
- Outputable (Qual tyvar uvar id pat) where
- ppr sty (GeneratorQual pat expr)
- = ppCat [ppr sty pat, ppStr "<-", ppr sty expr]
- ppr sty (LetQual binds)
- = ppCat [ppPStr SLIT("let"), ppr sty binds]
- ppr sty (FilterQual expr)
- = ppr sty expr
-\end{code}