Compare commits
No commits in common. "22a658e794598ff893c63596b5ad289acc1eb8d9" and "34c8fd93d73dbf4a11f3dffbf314501bb5eb5393" have entirely different histories.
22a658e794
...
34c8fd93d7
|
@ -998,20 +998,3 @@ func = do
|
|||
func False = 0
|
||||
-- comment
|
||||
func True = 1
|
||||
|
||||
#test nested do-block-with-comment issue
|
||||
dofunc = do
|
||||
do
|
||||
some
|
||||
code
|
||||
do
|
||||
-- abc
|
||||
more
|
||||
code
|
||||
|
||||
#test do-block paren non-alignment
|
||||
catchFunc = do
|
||||
(func aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
)
|
||||
`catch` catcher
|
||||
|
|
|
@ -193,143 +193,143 @@ remSuperfluousParens outerFixity = \case
|
|||
|
||||
hardcodedFixity :: Bool -> String -> Maybe Fixity
|
||||
hardcodedFixity allowUnqualify = \case
|
||||
"." -> Just $ Fixity NoSourceText 9 InfixR
|
||||
"!!" -> Just $ Fixity NoSourceText 9 InfixL
|
||||
"**" -> Just $ Fixity NoSourceText 8 InfixR
|
||||
"^" -> Just $ Fixity NoSourceText 8 InfixR
|
||||
"^^" -> Just $ Fixity NoSourceText 8 InfixR
|
||||
"*" -> Just $ Fixity NoSourceText 7 InfixL
|
||||
"/" -> Just $ Fixity NoSourceText 7 InfixL
|
||||
"`quot`" -> Just $ Fixity NoSourceText 7 InfixL
|
||||
"`rem`" -> Just $ Fixity NoSourceText 7 InfixL
|
||||
"`div`" -> Just $ Fixity NoSourceText 7 InfixL
|
||||
"`mod`" -> Just $ Fixity NoSourceText 7 InfixL
|
||||
"+" -> Just $ Fixity NoSourceText 6 InfixL
|
||||
"-" -> Just $ Fixity NoSourceText 6 InfixL
|
||||
":" -> Just $ Fixity NoSourceText 5 InfixR
|
||||
"==" -> Just $ Fixity NoSourceText 4 InfixN
|
||||
"/=" -> Just $ Fixity NoSourceText 4 InfixN
|
||||
"<" -> Just $ Fixity NoSourceText 4 InfixN
|
||||
"<=" -> Just $ Fixity NoSourceText 4 InfixN
|
||||
">" -> Just $ Fixity NoSourceText 4 InfixN
|
||||
">=" -> Just $ Fixity NoSourceText 4 InfixN
|
||||
"&&" -> Just $ Fixity NoSourceText 3 InfixR
|
||||
"||" -> Just $ Fixity NoSourceText 2 InfixR
|
||||
">>=" -> Just $ Fixity NoSourceText 1 InfixL
|
||||
">>" -> Just $ Fixity NoSourceText 1 InfixL
|
||||
"=<<" -> Just $ Fixity NoSourceText 1 InfixR
|
||||
"$" -> Just $ Fixity NoSourceText 0 InfixR
|
||||
"`seq`" -> Just $ Fixity NoSourceText 0 InfixR
|
||||
"$!" -> Just $ Fixity NoSourceText 0 InfixR
|
||||
"!" -> Just $ Fixity NoSourceText 9 InfixL
|
||||
"//" -> Just $ Fixity NoSourceText 9 InfixL
|
||||
"<>" -> Just $ Fixity NoSourceText 6 InfixR
|
||||
"<+>" -> Just $ Fixity NoSourceText 5 InfixR
|
||||
"<$" -> Just $ Fixity NoSourceText 4 InfixL
|
||||
"$>" -> Just $ Fixity NoSourceText 4 InfixL
|
||||
"<$>" -> Just $ Fixity NoSourceText 4 InfixL
|
||||
"<&>" -> Just $ Fixity NoSourceText 1 InfixL
|
||||
"&" -> Just $ Fixity NoSourceText 1 InfixL
|
||||
"<*>" -> Just $ Fixity NoSourceText 4 InfixL
|
||||
"<**>" -> Just $ Fixity NoSourceText 4 InfixL
|
||||
"*>" -> Just $ Fixity NoSourceText 4 InfixL
|
||||
"<*" -> Just $ Fixity NoSourceText 4 InfixL
|
||||
"`elem`" -> Just $ Fixity NoSourceText 4 InfixN
|
||||
"`notElem`" -> Just $ Fixity NoSourceText 4 InfixN
|
||||
"++" -> Just $ Fixity NoSourceText 5 InfixR
|
||||
"%" -> Just $ Fixity NoSourceText 7 InfixL
|
||||
"<|>" -> Just $ Fixity NoSourceText 3 InfixL
|
||||
".&." -> Just $ Fixity NoSourceText 7 InfixL
|
||||
".|." -> Just $ Fixity NoSourceText 5 InfixL
|
||||
"`xor`" -> Just $ Fixity NoSourceText 6 InfixL
|
||||
"`shift`" -> Just $ Fixity NoSourceText 8 InfixL
|
||||
"`rotate`" -> Just $ Fixity NoSourceText 8 InfixL
|
||||
"`shiftL`" -> Just $ Fixity NoSourceText 8 InfixL
|
||||
"`shiftR`" -> Just $ Fixity NoSourceText 8 InfixL
|
||||
"`rotateL`" -> Just $ Fixity NoSourceText 8 InfixL
|
||||
"`rotateR`" -> Just $ Fixity NoSourceText 8 InfixL
|
||||
"+#" -> Just $ Fixity NoSourceText 6 InfixL
|
||||
".^." -> Just $ Fixity NoSourceText 6 InfixL
|
||||
".>>." -> Just $ Fixity NoSourceText 8 InfixL
|
||||
".<<." -> Just $ Fixity NoSourceText 8 InfixL
|
||||
"!>>." -> Just $ Fixity NoSourceText 8 InfixL
|
||||
"!<<." -> Just $ Fixity NoSourceText 8 InfixL
|
||||
">=>" -> Just $ Fixity NoSourceText 1 InfixR
|
||||
"<=<" -> Just $ Fixity NoSourceText 1 InfixR
|
||||
"&&&" -> Just $ Fixity NoSourceText 3 InfixR
|
||||
"<$!>" -> fixity InfixL 4
|
||||
"." -> Just $ Fixity NoSourceText 9 InfixR
|
||||
"!!" -> Just $ Fixity NoSourceText 9 InfixL
|
||||
"**" -> Just $ Fixity NoSourceText 8 InfixR
|
||||
"^" -> Just $ Fixity NoSourceText 8 InfixR
|
||||
"^^" -> Just $ Fixity NoSourceText 8 InfixR
|
||||
"*" -> Just $ Fixity NoSourceText 7 InfixL
|
||||
"/" -> Just $ Fixity NoSourceText 7 InfixL
|
||||
"`quot`" -> Just $ Fixity NoSourceText 7 InfixL
|
||||
"`rem`" -> Just $ Fixity NoSourceText 7 InfixL
|
||||
"`div`" -> Just $ Fixity NoSourceText 7 InfixL
|
||||
"`mod`" -> Just $ Fixity NoSourceText 7 InfixL
|
||||
"+" -> Just $ Fixity NoSourceText 6 InfixL
|
||||
"-" -> Just $ Fixity NoSourceText 6 InfixL
|
||||
":" -> Just $ Fixity NoSourceText 5 InfixR
|
||||
"==" -> Just $ Fixity NoSourceText 4 InfixN
|
||||
"/=" -> Just $ Fixity NoSourceText 4 InfixN
|
||||
"<" -> Just $ Fixity NoSourceText 4 InfixN
|
||||
"<=" -> Just $ Fixity NoSourceText 4 InfixN
|
||||
">" -> Just $ Fixity NoSourceText 4 InfixN
|
||||
">=" -> Just $ Fixity NoSourceText 4 InfixN
|
||||
"&&" -> Just $ Fixity NoSourceText 3 InfixR
|
||||
"||" -> Just $ Fixity NoSourceText 2 InfixR
|
||||
">>=" -> Just $ Fixity NoSourceText 1 InfixL
|
||||
">>" -> Just $ Fixity NoSourceText 1 InfixL
|
||||
"=<<" -> Just $ Fixity NoSourceText 1 InfixR
|
||||
"$" -> Just $ Fixity NoSourceText 0 InfixR
|
||||
"`seq`" -> Just $ Fixity NoSourceText 0 InfixR
|
||||
"$!" -> Just $ Fixity NoSourceText 0 InfixR
|
||||
"!" -> Just $ Fixity NoSourceText 9 InfixL
|
||||
"//" -> Just $ Fixity NoSourceText 9 InfixL
|
||||
"<>" -> Just $ Fixity NoSourceText 6 InfixR
|
||||
"<+>" -> Just $ Fixity NoSourceText 5 InfixR
|
||||
"<$" -> Just $ Fixity NoSourceText 4 InfixL
|
||||
"$>" -> Just $ Fixity NoSourceText 4 InfixL
|
||||
"<$>" -> Just $ Fixity NoSourceText 4 InfixL
|
||||
"<&>" -> Just $ Fixity NoSourceText 1 InfixL
|
||||
"&" -> Just $ Fixity NoSourceText 1 InfixL
|
||||
"<*>" -> Just $ Fixity NoSourceText 4 InfixL
|
||||
"<**>" -> Just $ Fixity NoSourceText 4 InfixL
|
||||
"*>" -> Just $ Fixity NoSourceText 4 InfixL
|
||||
"<*" -> Just $ Fixity NoSourceText 4 InfixL
|
||||
"`elem`" -> Just $ Fixity NoSourceText 4 InfixN
|
||||
"`notElem`" -> Just $ Fixity NoSourceText 4 InfixN
|
||||
"++" -> Just $ Fixity NoSourceText 5 InfixR
|
||||
"%" -> Just $ Fixity NoSourceText 7 InfixL
|
||||
"<|>" -> Just $ Fixity NoSourceText 3 InfixL
|
||||
".&." -> Just $ Fixity NoSourceText 7 InfixL
|
||||
".|." -> Just $ Fixity NoSourceText 5 InfixL
|
||||
"`xor`" -> Just $ Fixity NoSourceText 6 InfixL
|
||||
"`shift`" -> Just $ Fixity NoSourceText 8 InfixL
|
||||
"`rotate`" -> Just $ Fixity NoSourceText 8 InfixL
|
||||
"`shiftL`" -> Just $ Fixity NoSourceText 8 InfixL
|
||||
"`shiftR`" -> Just $ Fixity NoSourceText 8 InfixL
|
||||
"`rotateL`" -> Just $ Fixity NoSourceText 8 InfixL
|
||||
"`rotateR`" -> Just $ Fixity NoSourceText 8 InfixL
|
||||
"+#" -> Just $ Fixity NoSourceText 6 InfixL
|
||||
".^." -> Just $ Fixity NoSourceText 6 InfixL
|
||||
".>>." -> Just $ Fixity NoSourceText 8 InfixL
|
||||
".<<." -> Just $ Fixity NoSourceText 8 InfixL
|
||||
"!>>." -> Just $ Fixity NoSourceText 8 InfixL
|
||||
"!<<." -> Just $ Fixity NoSourceText 8 InfixL
|
||||
">=>" -> Just $ Fixity NoSourceText 1 InfixR
|
||||
"<=<" -> Just $ Fixity NoSourceText 1 InfixR
|
||||
"&&&" -> Just $ Fixity NoSourceText 3 InfixR
|
||||
"<$!>" -> fixity InfixL 4
|
||||
|
||||
"~" -> fixity InfixN 4
|
||||
"~~" -> fixity InfixN 4
|
||||
":~:" -> Just $ Fixity NoSourceText 4 InfixN
|
||||
":~~:" -> Just $ Fixity NoSourceText 4 InfixN
|
||||
":+:" -> fixity InfixR 5
|
||||
":*:" -> fixity InfixR 6
|
||||
":.:" -> fixity InfixR 7
|
||||
":|" -> fixity InfixR 5
|
||||
"~" -> fixity InfixN 4
|
||||
"~~" -> fixity InfixN 4
|
||||
":~:" -> Just $ Fixity NoSourceText 4 InfixN
|
||||
":~~:" -> Just $ Fixity NoSourceText 4 InfixN
|
||||
":+:" -> fixity InfixR 5
|
||||
":*:" -> fixity InfixR 6
|
||||
":.:" -> fixity InfixR 7
|
||||
":|" -> fixity InfixR 5
|
||||
|
||||
-- non-base from random sources.
|
||||
"<|" -> Just $ Fixity NoSourceText 5 InfixR
|
||||
"|>" -> Just $ Fixity NoSourceText 5 InfixL
|
||||
"><" -> Just $ Fixity NoSourceText 5 InfixR
|
||||
"$+$" -> Just $ Fixity NoSourceText 5 InfixL
|
||||
"\\\\" -> Just $ Fixity NoSourceText 5 InfixN
|
||||
".>" -> Just $ Fixity NoSourceText 9 InfixL
|
||||
":?" -> Just $ Fixity NoSourceText 7 InfixN
|
||||
":-" -> Just $ Fixity NoSourceText 9 InfixR
|
||||
".:" -> Just $ Fixity NoSourceText 9 InfixR
|
||||
"$!!" -> fixity InfixR 0
|
||||
"<$!!>" -> fixity InfixL 4
|
||||
"<|" -> Just $ Fixity NoSourceText 5 InfixR
|
||||
"|>" -> Just $ Fixity NoSourceText 5 InfixL
|
||||
"><" -> Just $ Fixity NoSourceText 5 InfixR
|
||||
"$+$" -> Just $ Fixity NoSourceText 5 InfixL
|
||||
"\\\\" -> Just $ Fixity NoSourceText 5 InfixN
|
||||
".>" -> Just $ Fixity NoSourceText 9 InfixL
|
||||
":?" -> Just $ Fixity NoSourceText 7 InfixN
|
||||
":-" -> Just $ Fixity NoSourceText 9 InfixR
|
||||
".:" -> Just $ Fixity NoSourceText 9 InfixR
|
||||
"$!!" -> fixity InfixR 0
|
||||
"<$!!>" -> fixity InfixL 4
|
||||
|
||||
-- lens, not complete!
|
||||
"<|" -> fixity InfixR 5
|
||||
"|>" -> fixity InfixL 5
|
||||
"%~" -> fixity InfixR 4
|
||||
".~" -> fixity InfixR 4
|
||||
"?~" -> fixity InfixR 4
|
||||
"<.~" -> fixity InfixR 4
|
||||
"<?~" -> fixity InfixR 4
|
||||
"+~" -> fixity InfixR 4
|
||||
"*~" -> fixity InfixR 4
|
||||
"-~" -> fixity InfixR 4
|
||||
"//~" -> fixity InfixR 4
|
||||
"^~" -> fixity InfixR 4
|
||||
"^^~" -> fixity InfixR 4
|
||||
"**~" -> fixity InfixR 4
|
||||
"||~" -> fixity InfixR 4
|
||||
"&&~" -> fixity InfixR 4
|
||||
".=" -> fixity InfixN 4
|
||||
"%=" -> fixity InfixN 4
|
||||
"?=" -> fixity InfixN 4
|
||||
"+=" -> fixity InfixN 4
|
||||
"-=" -> fixity InfixN 4
|
||||
"*=" -> fixity InfixN 4
|
||||
"//=" -> fixity InfixN 4
|
||||
"^=" -> fixity InfixN 4
|
||||
"^^=" -> fixity InfixN 4
|
||||
"**=" -> fixity InfixN 4
|
||||
"&&=" -> fixity InfixN 4
|
||||
"||=" -> fixity InfixN 4
|
||||
"<~" -> fixity InfixR 2
|
||||
"<.=" -> fixity InfixN 4
|
||||
"<?=" -> fixity InfixN 4
|
||||
"<>~" -> fixity InfixR 4
|
||||
"<>=" -> fixity InfixN 4
|
||||
"^.." -> fixity InfixL 8
|
||||
"^?" -> fixity InfixL 8
|
||||
"^?!" -> fixity InfixL 8
|
||||
"^@.." -> fixity InfixL 8
|
||||
"^@?" -> fixity InfixL 8
|
||||
"^@?!" -> fixity InfixL 8
|
||||
"^." -> fixity InfixL 8
|
||||
"^@." -> fixity InfixL 8
|
||||
"<." -> fixity InfixR 9
|
||||
".>" -> fixity InfixR 9
|
||||
"<.>" -> fixity InfixR 9
|
||||
"@@~" -> fixity InfixR 4
|
||||
"@@=" -> fixity InfixR 4
|
||||
"&~" -> fixity InfixL 1
|
||||
"??" -> fixity InfixL 1
|
||||
"<|" -> fixity InfixR 5
|
||||
"|>" -> fixity InfixL 5
|
||||
"%~" -> fixity InfixR 4
|
||||
".~" -> fixity InfixR 4
|
||||
"?~" -> fixity InfixR 4
|
||||
"<.~" -> fixity InfixR 4
|
||||
"<?~" -> fixity InfixR 4
|
||||
"+~" -> fixity InfixR 4
|
||||
"*~" -> fixity InfixR 4
|
||||
"-~" -> fixity InfixR 4
|
||||
"//~" -> fixity InfixR 4
|
||||
"^~" -> fixity InfixR 4
|
||||
"^^~" -> fixity InfixR 4
|
||||
"**~" -> fixity InfixR 4
|
||||
"||~" -> fixity InfixR 4
|
||||
"&&~" -> fixity InfixR 4
|
||||
".=" -> fixity InfixN 4
|
||||
"%=" -> fixity InfixN 4
|
||||
"?=" -> fixity InfixN 4
|
||||
"+=" -> fixity InfixN 4
|
||||
"-=" -> fixity InfixN 4
|
||||
"*=" -> fixity InfixN 4
|
||||
"//=" -> fixity InfixN 4
|
||||
"^=" -> fixity InfixN 4
|
||||
"^^=" -> fixity InfixN 4
|
||||
"**=" -> fixity InfixN 4
|
||||
"&&=" -> fixity InfixN 4
|
||||
"||=" -> fixity InfixN 4
|
||||
"<~" -> fixity InfixR 2
|
||||
"<.=" -> fixity InfixN 4
|
||||
"<?=" -> fixity InfixN 4
|
||||
"<>~" -> fixity InfixR 4
|
||||
"<>=" -> fixity InfixN 4
|
||||
"^.." -> fixity InfixL 8
|
||||
"^?" -> fixity InfixL 8
|
||||
"^?!" -> fixity InfixL 8
|
||||
"^@.." -> fixity InfixL 8
|
||||
"^@?" -> fixity InfixL 8
|
||||
"^@?!" -> fixity InfixL 8
|
||||
"^." -> fixity InfixL 8
|
||||
"^@." -> fixity InfixL 8
|
||||
"<." -> fixity InfixR 9
|
||||
".>" -> fixity InfixR 9
|
||||
"<.>" -> fixity InfixR 9
|
||||
"@@~" -> fixity InfixR 4
|
||||
"@@=" -> fixity InfixR 4
|
||||
"&~" -> fixity InfixL 1
|
||||
"??" -> fixity InfixL 1
|
||||
|
||||
|
||||
-- certain other operators
|
||||
|
@ -343,62 +343,50 @@ hardcodedFixity allowUnqualify = \case
|
|||
-- ".*?" -> fixity _ _
|
||||
-- ".+." -> fixity _ _
|
||||
-- ".-." -> fixity _ _
|
||||
".&." -> fixity InfixR 1
|
||||
".&&." -> fixity InfixR 1
|
||||
".||." -> fixity InfixR 1
|
||||
"==>" -> fixity InfixR 0
|
||||
"=/=" -> fixity InfixN 4
|
||||
"===" -> fixity InfixN 4
|
||||
".:!" -> fixity InfixL 9
|
||||
".:?" -> fixity InfixL 9
|
||||
".&." -> fixity InfixR 1
|
||||
".&&." -> fixity InfixR 1
|
||||
".||." -> fixity InfixR 1
|
||||
"==>" -> fixity InfixR 0
|
||||
"=/=" -> fixity InfixN 4
|
||||
"===" -> fixity InfixN 4
|
||||
".:!" -> fixity InfixL 9
|
||||
".:?" -> fixity InfixL 9
|
||||
-- ".:>" -> fixity _ _
|
||||
-- ".:>?" -> fixity _ _
|
||||
"<.>" -> fixity InfixR 7
|
||||
"</>" -> fixity InfixR 5
|
||||
"<?>" -> fixity InfixL 9
|
||||
"<.>" -> fixity InfixR 7
|
||||
"</>" -> fixity InfixR 5
|
||||
"<?>" -> fixity InfixL 9
|
||||
-- "~" -> fixity _ _
|
||||
"===" -> fixity InfixN 4
|
||||
"!?" -> fixity InfixL 9
|
||||
"%==" -> fixity InfixN 3
|
||||
".*" -> fixity InfixR 8
|
||||
".**" -> fixity InfixR 8
|
||||
".***" -> fixity InfixR 8
|
||||
":?-" -> fixity InfixN 1
|
||||
"::-" -> fixity InfixN 0
|
||||
"&!" -> fixity InfixL 1
|
||||
"===" -> fixity InfixN 4
|
||||
"!?" -> fixity InfixL 9
|
||||
"%==" -> fixity InfixN 3
|
||||
".*" -> fixity InfixR 8
|
||||
".**" -> fixity InfixR 8
|
||||
".***" -> fixity InfixR 8
|
||||
":?-" -> fixity InfixN 1
|
||||
"::-" -> fixity InfixN 0
|
||||
"&!" -> fixity InfixL 1
|
||||
|
||||
-- quickcheck (-state-machine)
|
||||
":&&" -> fixity InfixL 9
|
||||
":||" -> fixity InfixL 9
|
||||
":&&:" -> fixity InfixL 9
|
||||
":=>" -> fixity InfixL 9
|
||||
":==" -> fixity InfixL 9
|
||||
":/=" -> fixity InfixL 9
|
||||
":<" -> fixity InfixL 9
|
||||
":<=" -> fixity InfixL 9
|
||||
":>" -> fixity InfixL 9
|
||||
":>=" -> fixity InfixL 9
|
||||
":->" -> fixity InfixL 9
|
||||
".==" -> fixity InfixN 5
|
||||
"./" -> fixity InfixN 5
|
||||
".<" -> fixity InfixN 5
|
||||
".<=" -> fixity InfixN 5
|
||||
".>" -> fixity InfixN 5
|
||||
".>=" -> fixity InfixN 5
|
||||
"`member`" -> fixity InfixN 8
|
||||
"`notMember`" -> fixity InfixN 8
|
||||
".//" -> fixity InfixL 4
|
||||
".&&" -> fixity InfixR 3
|
||||
".||" -> fixity InfixR 2
|
||||
".=>" -> fixity InfixR 1
|
||||
":&&" -> fixity InfixL 9
|
||||
":||" -> fixity InfixL 9
|
||||
":&&:" -> fixity InfixL 9
|
||||
":=>" -> fixity InfixL 9
|
||||
":==" -> fixity InfixL 9
|
||||
":/=" -> fixity InfixL 9
|
||||
":<" -> fixity InfixL 9
|
||||
":<=" -> fixity InfixL 9
|
||||
":>" -> fixity InfixL 9
|
||||
":>=" -> fixity InfixL 9
|
||||
":->" -> fixity InfixL 9
|
||||
|
||||
-- servant
|
||||
":>" -> fixity InfixR 4
|
||||
":<|>" -> fixity InfixR 3
|
||||
":-" -> fixity InfixL 0
|
||||
":>" -> fixity InfixR 4
|
||||
":<|>" -> fixity InfixR 3
|
||||
":-" -> fixity InfixL 0
|
||||
|
||||
-- postgresql-simple
|
||||
":." -> fixity InfixR 3 -- this has wildly different fixities in different libraries
|
||||
":." -> fixity InfixR 3 -- this has wildly different fixities in different libraries
|
||||
|
||||
-- ?
|
||||
-- ":-:" -> fixity _ _
|
||||
|
@ -411,7 +399,7 @@ hardcodedFixity allowUnqualify = \case
|
|||
-- ":>:" -> fixity _ _
|
||||
-- ":>=:" -> fixity _ _
|
||||
|
||||
str -> case (Safe.headMay str, Safe.lastMay str) of
|
||||
str -> case (Safe.headMay str, Safe.lastMay str) of
|
||||
(Just '\'', _) -> hardcodedFixity False (drop 1 str)
|
||||
(Just '`', Just '`') -> Just $ Fixity NoSourceText 9 InfixL
|
||||
(Just c, _) | Data.Char.isAlpha c && allowUnqualify -> hardcodedFixity False
|
||||
|
|
|
@ -103,7 +103,7 @@ splitModuleDecls lmod = do
|
|||
lastSpan <- do
|
||||
finalYield $ MEExactModuleHead moduleWithoutComments
|
||||
pure
|
||||
$ maybe (0, 1) (ExactPrint.ss2posEnd)
|
||||
$ maybe (1, 1) (ExactPrint.ss2posEnd)
|
||||
$ maximumMay
|
||||
$ [ GHC.anchor a
|
||||
| L a _ <- GHC.priorComments $ case hsModAnn' of
|
||||
|
|
|
@ -245,28 +245,16 @@ layoutOpTree allowSinglelinePar = \case
|
|||
wrapParenMlIf x innerHead innerLines = if x
|
||||
then wrapParenMl innerHead innerLines
|
||||
else docPar innerHead (docLines innerLines)
|
||||
wrapParenMl innerHead innerLines = docAlt
|
||||
[ docForceZeroAdd $ docSetBaseY $ docLines
|
||||
( [ docCols
|
||||
ColOpPrefix
|
||||
[ (if zeroOps then id else appSep) $ docLit $ Text.pack "("
|
||||
, docHandleComms locO $ innerHead
|
||||
]
|
||||
]
|
||||
++ innerLines
|
||||
++ [docHandleComms locC $ docLit $ Text.pack ")"]
|
||||
)
|
||||
, docPar
|
||||
(docCols
|
||||
ColOpPrefix
|
||||
[ (if zeroOps then id else appSep) $ docLit $ Text.pack "("
|
||||
, docHandleComms locO $ innerHead
|
||||
]
|
||||
)
|
||||
( docLines
|
||||
$ innerLines ++ [docHandleComms locC $ docLit $ Text.pack ")"]
|
||||
)
|
||||
]
|
||||
wrapParenMl innerHead innerLines = docSetBaseY $ docLines
|
||||
( [ docCols
|
||||
ColOpPrefix
|
||||
[ (if zeroOps then id else appSep) $ docLit $ Text.pack "("
|
||||
, docHandleComms locO $ innerHead
|
||||
]
|
||||
]
|
||||
++ innerLines
|
||||
++ [docHandleComms locC $ docLit $ Text.pack ")"]
|
||||
)
|
||||
|
||||
configAllowsParInsert <- askLayoutConf _lconfig_fixityBasedAddAlignParens
|
||||
let allowParIns = configAllowsParInsert && case fixity of
|
||||
|
|
|
@ -205,7 +205,7 @@ transformAlts =
|
|||
let ind = _acp_indent acp + _acp_indentPrep acp + indAdd
|
||||
mSet $ acp
|
||||
{ _acp_indent = ind, _acp_indentPrep = 0
|
||||
, _acp_indentPrepForced = parentForced
|
||||
, _acp_indentPrepForced = False
|
||||
}
|
||||
sameLine' <- go sameLine
|
||||
mModify $ \acp' -> acp'
|
||||
|
|
|
@ -91,8 +91,8 @@ transformSimplifyColumns = Uniplate.rewrite $ \case
|
|||
]
|
||||
BDPar ind col1@(BDCols sig1 _) col2@(BDCols sig2 _) | sig1 == sig2 ->
|
||||
Just $ BDAddBaseY ind (BDLines [col1, col2])
|
||||
-- BDPar ind col1@(BDCols sig1 _) (BDLines (col2@(BDCols sig2 _) : rest))
|
||||
-- | sig1 == sig2 -> Just $ BDPar ind (BDLines [col1, col2]) (BDLines rest)
|
||||
BDPar ind col1@(BDCols sig1 _) (BDLines (col2@(BDCols sig2 _) : rest))
|
||||
| sig1 == sig2 -> Just $ BDPar ind (BDLines [col1, col2]) (BDLines rest)
|
||||
BDPar ind (BDLines lines1) col2@(BDCols sig2 _)
|
||||
| BDCols sig1 _ <- List.last lines1, sig1 == sig2 -> Just
|
||||
$ BDAddBaseY ind (BDLines $ lines1 ++ [col2])
|
||||
|
|
|
@ -44,8 +44,6 @@ transformSimplifyIndent = Uniplate.rewrite $ \case
|
|||
Just $ BDFlushCommentsPrior c (BDAddBaseY i x)
|
||||
BDAddBaseY i (BDFlushCommentsPost c sm x) ->
|
||||
Just $ BDFlushCommentsPost c sm (BDAddBaseY i x)
|
||||
BDAddBaseY i (BDQueueComments comms x) ->
|
||||
Just $ BDQueueComments comms (BDAddBaseY i x)
|
||||
BDAddBaseY i (BDSeq l) ->
|
||||
Just $ BDSeq $ List.init l ++ [BDAddBaseY i $ List.last l]
|
||||
BDAddBaseY i (BDCols sig l) ->
|
||||
|
|
Loading…
Reference in New Issue