From 02510621004ccd40fd4c3d18b001d67bf93a82cb Mon Sep 17 00:00:00 2001 From: Lennart Spitzner Date: Thu, 29 Jun 2017 18:13:28 +0200 Subject: [PATCH] Support mdo layouting (RecursiveDo) --- src/Language/Haskell/Brittany/Internal/Layouters/Expr.hs | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/Language/Haskell/Brittany/Internal/Layouters/Expr.hs b/src/Language/Haskell/Brittany/Internal/Layouters/Expr.hs index 9694968..fa688ef 100644 --- a/src/Language/Haskell/Brittany/Internal/Layouters/Expr.hs +++ b/src/Language/Haskell/Brittany/Internal/Layouters/Expr.hs @@ -547,6 +547,13 @@ layoutExpr lexpr@(L _ expr) = docWrapNode lexpr $ case expr of $ docPar (docLit $ Text.pack "do") (docSetBaseAndIndent $ docNonBottomSpacing $ docLines stmtDocs) + HsDo MDoExpr (L _ stmts) _ -> do + stmtDocs <- docSharedWrapper layoutStmt `mapM` stmts + docSetParSpacing + $ docAddBaseY BrIndentRegular + $ docPar + (docLit $ Text.pack "mdo") + (docSetBaseAndIndent $ docNonBottomSpacing $ docLines stmtDocs) HsDo x (L _ stmts) _ | case x of { ListComp -> True ; MonadComp -> True ; _ -> False } -> do