module HsMatches where
-import Ubiq{-uitous-}
+IMP_Ubiq(){-uitous-}
-import HsLoop ( HsExpr, nullBinds, HsBinds )
+IMPORT_DELOOPER(HsLoop) ( HsExpr, nullBinds, HsBinds )
import Outputable ( ifPprShowAll )
-import PprType
+import PprType ( GenType{-instance Outputable-} )
import Pretty
import SrcLoc ( SrcLoc{-instances-} )
-import TyVar ( GenTyVar{-instances-} )
-import Unique ( Unique{-instances-} )
import Util ( panic )
\end{code}
= PatMatch pat
(Match tyvar uvar id pat)
| GRHSMatch (GRHSsAndBinds tyvar uvar id pat)
+
+ | SimpleMatch (HsExpr tyvar uvar id pat) -- Used in translations
\end{code}
Sets of guarded right hand sides (GRHSs). In:
(row_of_pats, grhss_etc_stuff) = ppr_match sty is_case first_match
ppr_match sty is_case (PatMatch pat match)
- = (pat:pats, grhss_stuff)
- where
+ = (pat:pats, grhss_stuff)
+ where
(pats, grhss_stuff) = ppr_match sty is_case match
ppr_match sty is_case (GRHSMatch grhss_n_binds)
- = ([], pprGRHSsAndBinds sty is_case grhss_n_binds)
+ = ([], pprGRHSsAndBinds sty is_case grhss_n_binds)
+
+ ppr_match sty is_case (SimpleMatch expr)
+ = ([], ppr sty expr)
----------------------------------------------------------