X-Git-Url: https://git.martlubbers.net/?a=blobdiff_plain;f=parse.icl;h=004c1f4d071187e3a8c816681ea010b0f161c049;hb=e01254ee33ddd811fe95ea98cba19909f3e4f740;hp=766f1ce92b6d072bcb2fa5e0e2045cb09eb62c5e;hpb=817af8de40d49db39dcf02ee5fe346f0d7b73118;p=cc1516.git diff --git a/parse.icl b/parse.icl index 766f1ce..004c1f4 100644 --- a/parse.icl +++ b/parse.icl @@ -75,9 +75,10 @@ parseFunType :: Parser Token Type parseFunType = satTok DoubleColonToken *> parseFT where parseFT :: Parser Token Type - parseFT = (liftM2 (->>) - ((parseBBraces parseFT <|> parseType) <* satTok ArrowToken) - parseFT) <|> parseType + parseFT = (liftM2 (->>) (parseSF <* satTok ArrowToken) (parseFT)) <|> + parseSF + parseSF :: Parser Token Type + parseSF = parseBBraces parseFT <|> parseType parseVarDecl :: Parser Token VarDecl parseVarDecl = liftM4 VarDecl