|
|
|
@ -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,50 +343,62 @@ 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 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
|
|
|
|
|
|
|
|
|
|
-- 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 _ _
|
|
|
|
@ -399,7 +411,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
|
|
|
|
|