diff --git a/src/Language/Haskell/Brittany/Layouters/Decl.hs b/src/Language/Haskell/Brittany/Layouters/Decl.hs index 59c3018..cf6adaa 100644 --- a/src/Language/Haskell/Brittany/Layouters/Decl.hs +++ b/src/Language/Haskell/Brittany/Layouters/Decl.hs @@ -70,7 +70,7 @@ layoutGuardLStmt lgstmt@(L _ stmtLR) = docWrapNode lgstmt $ case stmtLR of expDoc <- docSharedWrapper layoutExpr expr docCols ColBindStmt [appSep patDoc, docSeq [appSep $ docLit $ Text.pack "<-", expDoc]] - _ -> briDocByExact lgstmt -- TODO + _ -> unknownNodeError "" lgstmt -- TODO layoutBind :: ToBriDocC (HsBindLR RdrName RdrName) (Either [BriDocNumbered] BriDocNumbered) layoutBind lbind@(L _ bind) = case bind of @@ -85,7 +85,7 @@ layoutBind lbind@(L _ bind) = case bind of mWhereDocs <- layoutLocalBinds whereBinds binderDoc <- docLit $ Text.pack "=" fmap Right $ docWrapNode lbind $ layoutPatternBindFinal binderDoc (Just patDoc) clauseDocs mWhereDocs - _ -> Right <$> briDocByExact lbind + _ -> Right <$> unknownNodeError "" lbind data BagBindOrSig = BagBind (LHsBindLR RdrName RdrName) | BagSig (LSig RdrName) diff --git a/src/Language/Haskell/Brittany/Layouters/Expr.hs b/src/Language/Haskell/Brittany/Layouters/Expr.hs index 83811cf..bfc337c 100644 --- a/src/Language/Haskell/Brittany/Layouters/Expr.hs +++ b/src/Language/Haskell/Brittany/Layouters/Expr.hs @@ -38,13 +38,13 @@ layoutExpr lexpr@(L _ expr) = docWrapNode lexpr $ case expr of TrueExprHole oname -> docLit $ Text.pack $ occNameString oname HsRecFld{} -> do -- TODO - briDocByExact lexpr + unknownNodeError "HsRecFld" lexpr HsOverLabel{} -> do -- TODO - briDocByExact lexpr + unknownNodeError "HsOverLabel{}" lexpr HsIPVar{} -> do -- TODO - briDocByExact lexpr + unknownNodeError "HsOverLabel{}" lexpr HsOverLit (OverLit olit _ _ _) -> do allocateNode $ overLitValBriDoc olit HsLit lit -> do @@ -138,10 +138,10 @@ layoutExpr lexpr@(L _ expr) = docWrapNode lexpr $ case expr of ] HsAppType{} -> do -- TODO - briDocByExact lexpr + unknownNodeError "HsAppType{}" lexpr HsAppTypeOut{} -> do -- TODO - briDocByExact lexpr + unknownNodeError "HsAppTypeOut{}" lexpr OpApp expLeft@(L _ OpApp{}) expOp _ expRight -> do let gather :: [(LHsExpr RdrName, LHsExpr RdrName)] -> LHsExpr RdrName -> (LHsExpr RdrName, [(LHsExpr RdrName, LHsExpr RdrName)]) gather opExprList = \case @@ -446,7 +446,7 @@ layoutExpr lexpr@(L _ expr) = docWrapNode lexpr $ case expr of ] HsDo{} -> do -- TODO - briDocByExact lexpr + unknownNodeError "HsDo{} no comp" lexpr ExplicitList _ _ elems@(_:_) -> do elemDocs <- elems `forM` docSharedWrapper layoutExpr docAlt @@ -466,7 +466,7 @@ layoutExpr lexpr@(L _ expr) = docWrapNode lexpr $ case expr of docLit $ Text.pack "[]" ExplicitPArr{} -> do -- TODO - briDocByExact lexpr + unknownNodeError "ExplicitPArr{}" lexpr RecordCon lname _ _ (HsRecFields [] Nothing) -> do let t = lrdrNameToText lname docWrapNode lname $ docSeq @@ -618,7 +618,7 @@ layoutExpr lexpr@(L _ expr) = docWrapNode lexpr $ case expr of ] ExprWithTySigOut{} -> do -- TODO - briDocByExact lexpr + unknownNodeError "ExprWithTySigOut{}" lexpr ArithSeq _ Nothing info -> case info of From e1 -> do @@ -665,60 +665,60 @@ layoutExpr lexpr@(L _ expr) = docWrapNode lexpr $ case expr of unknownNodeError "ArithSeq" lexpr PArrSeq{} -> do -- TODO - briDocByExact lexpr + unknownNodeError "PArrSeq{}" lexpr HsSCC{} -> do -- TODO - briDocByExact lexpr + unknownNodeError "HsSCC{}" lexpr HsCoreAnn{} -> do -- TODO - briDocByExact lexpr + unknownNodeError "HsCoreAnn{}" lexpr HsBracket{} -> do -- TODO - briDocByExact lexpr + unknownNodeError "HsBracket{}" lexpr HsRnBracketOut{} -> do -- TODO - briDocByExact lexpr + unknownNodeError "HsRnBracketOut{}" lexpr HsTcBracketOut{} -> do -- TODO - briDocByExact lexpr + unknownNodeError "HsTcBracketOut{}" lexpr HsSpliceE{} -> do -- TODO - briDocByExact lexpr + unknownNodeError "HsSpliceE{}" lexpr HsProc{} -> do -- TODO - briDocByExact lexpr + unknownNodeError "HsProc{}" lexpr HsStatic{} -> do -- TODO - briDocByExact lexpr + unknownNodeError "HsStatic{}" lexpr HsArrApp{} -> do -- TODO - briDocByExact lexpr + unknownNodeError "HsArrApp{}" lexpr HsArrForm{} -> do -- TODO - briDocByExact lexpr + unknownNodeError "HsArrForm{}" lexpr HsTick{} -> do -- TODO - briDocByExact lexpr + unknownNodeError "HsTick{}" lexpr HsBinTick{} -> do -- TODO - briDocByExact lexpr + unknownNodeError "HsBinTick{}" lexpr HsTickPragma{} -> do -- TODO - briDocByExact lexpr + unknownNodeError "HsTickPragma{}" lexpr EWildPat{} -> do docLit $ Text.pack "_" EAsPat{} -> do -- TODO - briDocByExact lexpr + unknownNodeError "EAsPat{}" lexpr EViewPat{} -> do -- TODO - briDocByExact lexpr + unknownNodeError "EViewPat{}" lexpr ELazyPat{} -> do -- TODO - briDocByExact lexpr + unknownNodeError "ELazyPat{}" lexpr HsWrap{} -> do -- TODO - briDocByExact lexpr + unknownNodeError "HsWrap{}" lexpr litBriDoc :: HsLit -> BriDocFInt litBriDoc = \case diff --git a/src/Language/Haskell/Brittany/Layouters/Pattern.hs b/src/Language/Haskell/Brittany/Layouters/Pattern.hs index 3a2b61a..857c9ca 100644 --- a/src/Language/Haskell/Brittany/Layouters/Pattern.hs +++ b/src/Language/Haskell/Brittany/Layouters/Pattern.hs @@ -129,4 +129,4 @@ layoutPat lpat@(L _ pat) = docWrapNode lpat $ case pat of -- #else -- VarPat n -> return $ stringLayouter lpat $ rdrNameToText n -- #endif - _ -> briDocByExact lpat + _ -> unknownNodeError "" lpat diff --git a/src/Language/Haskell/Brittany/Layouters/Stmt.hs b/src/Language/Haskell/Brittany/Layouters/Stmt.hs index af10720..4a0e3ab 100644 --- a/src/Language/Haskell/Brittany/Layouters/Stmt.hs +++ b/src/Language/Haskell/Brittany/Layouters/Stmt.hs @@ -75,4 +75,4 @@ layoutStmt lstmt@(L _ stmt) = docWrapNode lstmt $ case stmt of BodyStmt expr _ _ _ -> do expDoc <- docSharedWrapper layoutExpr expr docAddBaseY BrIndentRegular $ expDoc - _ -> briDocByExact lstmt + _ -> unknownNodeError "" lstmt diff --git a/src/Language/Haskell/Brittany/Layouters/Type.hs b/src/Language/Haskell/Brittany/Layouters/Type.hs index d1b842c..a1d1ef7 100644 --- a/src/Language/Haskell/Brittany/Layouters/Type.hs +++ b/src/Language/Haskell/Brittany/Layouters/Type.hs @@ -391,7 +391,7 @@ layoutType ltype@(L _ typ) = docWrapNode ltype $ case typ of (docLines $ (docAddBaseY (BrIndentSpecial 2) <$> lines) ++ [end]) ] HsOpTy{} -> -- TODO - briDocByExact ltype + unknownNodeError "HsOpTy{}" ltype -- HsOpTy typ1 opName typ2 -> do -- -- TODO: these need some proper fixing. precedences don't add up. -- -- maybe the parser just returns some trivial right recursion @@ -506,7 +506,7 @@ layoutType ltype@(L _ typ) = docWrapNode ltype $ case typ of ]) ] HsBangTy{} -> -- TODO - briDocByExact ltype + unknownNodeError "HsBangTy{}" ltype -- HsBangTy bang typ1 -> do -- let bangStr = case bang of -- HsSrcBang _ unpackness strictness -> @@ -558,11 +558,11 @@ layoutType ltype@(L _ typ) = docWrapNode ltype $ case typ of -- , _layouter_ast = ltype -- } HsSpliceTy{} -> -- TODO - briDocByExact ltype + unknownNodeError "" ltype HsDocTy{} -> -- TODO - briDocByExact ltype + unknownNodeError "" ltype HsRecTy{} -> -- TODO - briDocByExact ltype + unknownNodeError "" ltype HsExplicitListTy _ typs -> do typDocs <- docSharedWrapper layoutType `mapM` typs docAlt @@ -573,10 +573,10 @@ layoutType ltype@(L _ typ) = docWrapNode ltype $ case typ of -- TODO ] HsExplicitTupleTy{} -> -- TODO - briDocByExact ltype + unknownNodeError "" ltype HsTyLit{} -> -- TODO - briDocByExact ltype + unknownNodeError "" ltype HsCoreTy{} -> -- TODO - briDocByExact ltype + unknownNodeError "" ltype HsWildCardTy _ -> docLit $ Text.pack "_"