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