mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-01-07 22:09:38 +07:00
We had to switch to stack-based parsing contexts in order to be able to use context-sensitive token filtering for 'async'. Also this commit fixes the highlighting annotator issue with blinking names of the functions and blinking 'async'.
80 lines
2.5 KiB
Plaintext
80 lines
2.5 KiB
Plaintext
PyFile:AsyncDef.py
|
|
PyFunction('foo')
|
|
PsiElement(Py:ASYNC_KEYWORD)('async')
|
|
PsiWhiteSpace(' ')
|
|
PsiElement(Py:DEF_KEYWORD)('def')
|
|
PsiWhiteSpace(' ')
|
|
PsiElement(Py:IDENTIFIER)('foo')
|
|
PyParameterList
|
|
PsiElement(Py:LPAR)('(')
|
|
PyNamedParameter('x')
|
|
PsiElement(Py:IDENTIFIER)('x')
|
|
PsiElement(Py:COMMA)(',')
|
|
PsiWhiteSpace(' ')
|
|
PyNamedParameter('y')
|
|
PsiElement(Py:IDENTIFIER)('y')
|
|
PsiElement(Py:RPAR)(')')
|
|
PsiElement(Py:COLON)(':')
|
|
PsiWhiteSpace('\n ')
|
|
PyStatementList
|
|
PyPassStatement
|
|
PsiElement(Py:PASS_KEYWORD)('pass')
|
|
PsiWhiteSpace('\n\n ')
|
|
PyFunction('foo_nested')
|
|
PsiElement(Py:ASYNC_KEYWORD)('async')
|
|
PsiWhiteSpace(' ')
|
|
PsiElement(Py:DEF_KEYWORD)('def')
|
|
PsiWhiteSpace(' ')
|
|
PsiElement(Py:IDENTIFIER)('foo_nested')
|
|
PyParameterList
|
|
PsiElement(Py:LPAR)('(')
|
|
PsiElement(Py:RPAR)(')')
|
|
PsiElement(Py:COLON)(':')
|
|
PsiWhiteSpace('\n ')
|
|
PyStatementList
|
|
PyPassStatement
|
|
PsiElement(Py:PASS_KEYWORD)('pass')
|
|
PsiWhiteSpace('\n\n\n')
|
|
PyAssignmentStatement
|
|
PyTargetExpression: async
|
|
PsiElement(Py:IDENTIFIER)('async')
|
|
PsiWhiteSpace(' ')
|
|
PsiElement(Py:EQ)('=')
|
|
PsiWhiteSpace(' ')
|
|
PyNumericLiteralExpression
|
|
PsiElement(Py:INTEGER_LITERAL)('10')
|
|
PsiWhiteSpace('\n\n\n')
|
|
PyFunction('bar')
|
|
PsiElement(Py:DEF_KEYWORD)('def')
|
|
PsiWhiteSpace(' ')
|
|
PsiElement(Py:IDENTIFIER)('bar')
|
|
PyParameterList
|
|
PsiElement(Py:LPAR)('(')
|
|
PsiElement(Py:RPAR)(')')
|
|
PsiElement(Py:COLON)(':')
|
|
PsiWhiteSpace('\n ')
|
|
PyStatementList
|
|
PyExpressionStatement
|
|
PyCallExpression: print
|
|
PyReferenceExpression: print
|
|
PsiElement(Py:IDENTIFIER)('print')
|
|
PyArgumentList
|
|
PsiElement(Py:LPAR)('(')
|
|
PyReferenceExpression: async
|
|
PsiElement(Py:IDENTIFIER)('async')
|
|
PsiElement(Py:RPAR)(')')
|
|
PsiWhiteSpace('\n\n ')
|
|
PyFunction('bar_nested')
|
|
PsiElement(Py:ASYNC_KEYWORD)('async')
|
|
PsiWhiteSpace(' ')
|
|
PsiElement(Py:DEF_KEYWORD)('def')
|
|
PsiWhiteSpace(' ')
|
|
PsiElement(Py:IDENTIFIER)('bar_nested')
|
|
PyParameterList
|
|
PsiElement(Py:LPAR)('(')
|
|
PsiElement(Py:RPAR)(')')
|
|
PsiElement(Py:COLON)(':')
|
|
PsiWhiteSpace('\n ')
|
|
PyStatementList
|
|
PyPassStatement
|
|
PsiElement(Py:PASS_KEYWORD)('pass') |