From 6008cb26acc469dd484f80a81840974fe5827e0d Mon Sep 17 00:00:00 2001 From: Lennart Spitzner Date: Tue, 9 May 2023 17:51:37 +0000 Subject: [PATCH] Support basic form of HsBangTy --- data/15-regressions.blt | 3 +++ .../Language/Haskell/Brittany/Internal/ToBriDoc/Type.hs | 4 +++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/data/15-regressions.blt b/data/15-regressions.blt index 0901cc4..2613f72 100644 --- a/data/15-regressions.blt +++ b/data/15-regressions.blt @@ -982,3 +982,6 @@ instance BMGuwigoc POtfuggj where | USilcnhkYaraposqu (WeyOoovf (Nubwlhtjd EculdW.QaeopznkAc r)) deriving stock (Lirylfj1, Jexr) deriving anyclass Qart2.Vrzxuvcf + +#test bang-type +data LabeledBool = LabeledBool !Int !Bool diff --git a/source/library/Language/Haskell/Brittany/Internal/ToBriDoc/Type.hs b/source/library/Language/Haskell/Brittany/Internal/ToBriDoc/Type.hs index 58e4d80..9e3ce7e 100644 --- a/source/library/Language/Haskell/Brittany/Internal/ToBriDoc/Type.hs +++ b/source/library/Language/Haskell/Brittany/Internal/ToBriDoc/Type.hs @@ -370,7 +370,9 @@ layoutType ltype@(L _ typ) = docHandleComms ltype $ case typ of ] ) ] - HsBangTy{} -> -- TODO + HsBangTy epAnn (HsSrcBang NoSourceText NoSrcUnpack SrcStrict) innerTy -> do + docHandleComms epAnn $ docSeq [docLitS "!", layoutType innerTy] + HsBangTy {} -> briDocByExactInlineOnly "HsBangTy{}" ltype -- HsBangTy bang typ1 -> do -- let bangStr = case bang of