Assignment to await expressions is forbidden now

This commit is contained in:
Semyon Proshev
2016-07-08 13:47:38 +03:00
parent de9258e460
commit 61b92120d7
3 changed files with 49 additions and 2 deletions
+5
View File
@@ -2,4 +2,9 @@ async def f(x):
await x
async def g(y):
await x = 5
await y
await = 1
+33
View File
@@ -20,6 +20,39 @@ PyFile:Await.py
PyReferenceExpression: x
PsiElement(Py:IDENTIFIER)('x')
PsiWhiteSpace('\n\n\n')
PyFunction('g')
PsiElement(Py:ASYNC_KEYWORD)('async')
PsiWhiteSpace(' ')
PsiElement(Py:DEF_KEYWORD)('def')
PsiWhiteSpace(' ')
PsiElement(Py:IDENTIFIER)('g')
PyParameterList
PsiElement(Py:LPAR)('(')
PyNamedParameter('y')
PsiElement(Py:IDENTIFIER)('y')
PsiElement(Py:RPAR)(')')
PsiElement(Py:COLON)(':')
PsiWhiteSpace('\n ')
PyStatementList
PyAssignmentStatement
PsiErrorElement:can't assign to await expression
PsiElement(Py:AWAIT_KEYWORD)('await')
PsiWhiteSpace(' ')
PyTargetExpression: x
PsiElement(Py:IDENTIFIER)('x')
PsiWhiteSpace(' ')
PsiElement(Py:EQ)('=')
PsiWhiteSpace(' ')
PyNumericLiteralExpression
PsiElement(Py:INTEGER_LITERAL)('5')
PsiWhiteSpace('\n ')
PyExpressionStatement
PyPrefixExpression
PsiElement(Py:AWAIT_KEYWORD)('await')
PsiWhiteSpace(' ')
PyReferenceExpression: y
PsiElement(Py:IDENTIFIER)('y')
PsiWhiteSpace('\n\n\n')
PyAssignmentStatement
PyTargetExpression: await
PsiElement(Py:IDENTIFIER)('await')