X-Git-Url: https://git.martlubbers.net/?a=blobdiff_plain;f=parse.icl;h=004c1f4d071187e3a8c816681ea010b0f161c049;hb=d5239ed85ef46f3ada3857103dd63a1853da918c;hp=766f1ce92b6d072bcb2fa5e0e2045cb09eb62c5e;hpb=13a108705dbabbc75711ce9b3b29fe508262919f;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