void () { if (atToken(PyTokenTypes.LPAR)) { final SyntaxTreeBuilder.Marker funcTypeMark = myBuilder.mark(); parseParameterTypeList(); checkMatches(PyTokenTypes.RARROW, PyParsingBundle.message("rarrow.expected")); final boolean parsed = getExpressionParser().parseSingleExpression(false); if (!parsed) { myBuilder.error(PyParsingBundle.message("PARSE.expected.expression")); } funcTypeMark.done(PyFunctionTypeAnnotationElementTypes.FUNCTION_SIGNATURE); } recoverUntilMatches(PyParsingBundle.message("unexpected.tokens")); }