on master help sign in
Parse qualified infix functions

It is okay to say 4 `Time.since` Mouse.clicks

commit51ba51291461617b96ff9b6f4357b55aaedfc9ed authorEvan Czaplicki <info@elm-lang.org> dateThu 1 Aug 2013, 15:38 (13 years ago) parent66e2a97
1 file changed+6−1
compiler/Parse/Helpers.hs+6−1
compiler/Parse/Helpers.hs+6−1
@@ -38,6 +38,11 @@ lowVar = makeVar (lower <?> "lower case variable")
3838capVar :: IParser String
3939capVar = makeVar (upper <?> "upper case variable")
4040
41+qualifiedVar :: IParser String
42+qualifiedVar = do
43+ vars <- many ((++) <$> capVar <*> string ".")
44+ (++) (concat vars) <$> lowVar
45+
4146rLabel :: IParser String
4247rLabel = lowVar
4348
@@ -55,7 +60,7 @@ reserved word =
5560 <?> "reserved word '" ++ word ++ "'"
5661
5762anyOp :: IParser String
58−anyOp = betwixt '`' '`' var <|> symOp <?> "infix operator (e.g. +, *, ||)"
63+anyOp = betwixt '`' '`' qualifiedVar <|> symOp <?> "infix operator (e.g. +, *, ||)"
5964
6065symOp :: IParser String
6166symOp = do op <- many1 (satisfy Help.isSymbol)