Parser: Do not produce JetQualifiedExpression without receiver
#KT-7122 Fixed
This commit is contained in:
@@ -0,0 +1,3 @@
|
||||
fun test() {
|
||||
MyClass.<warning descr="">Companion</warning>.test
|
||||
}
|
||||
@@ -0,0 +1,52 @@
|
||||
JetFile: noQualifiedExpression.kt
|
||||
PACKAGE_DIRECTIVE
|
||||
<empty list>
|
||||
FUN
|
||||
PsiElement(fun)('fun')
|
||||
PsiWhiteSpace(' ')
|
||||
PsiElement(IDENTIFIER)('test')
|
||||
VALUE_PARAMETER_LIST
|
||||
PsiElement(LPAR)('(')
|
||||
PsiElement(RPAR)(')')
|
||||
PsiWhiteSpace(' ')
|
||||
BLOCK
|
||||
PsiElement(LBRACE)('{')
|
||||
PsiWhiteSpace('\n ')
|
||||
BINARY_EXPRESSION
|
||||
BINARY_EXPRESSION
|
||||
DOT_QUALIFIED_EXPRESSION
|
||||
REFERENCE_EXPRESSION
|
||||
PsiElement(IDENTIFIER)('MyClass')
|
||||
PsiElement(DOT)('.')
|
||||
PsiErrorElement:Expecting an element
|
||||
PsiElement(LT)('<')
|
||||
OPERATION_REFERENCE
|
||||
PsiElement(IDENTIFIER)('warning')
|
||||
PsiWhiteSpace(' ')
|
||||
REFERENCE_EXPRESSION
|
||||
PsiElement(IDENTIFIER)('descr')
|
||||
OPERATION_REFERENCE
|
||||
PsiElement(EQ)('=')
|
||||
BINARY_EXPRESSION
|
||||
BINARY_EXPRESSION
|
||||
STRING_TEMPLATE
|
||||
PsiElement(OPEN_QUOTE)('"')
|
||||
PsiElement(CLOSING_QUOTE)('"')
|
||||
OPERATION_REFERENCE
|
||||
PsiElement(GT)('>')
|
||||
REFERENCE_EXPRESSION
|
||||
PsiElement(IDENTIFIER)('Companion')
|
||||
OPERATION_REFERENCE
|
||||
PsiElement(LT)('<')
|
||||
BINARY_EXPRESSION
|
||||
PsiErrorElement:Expecting an element
|
||||
PsiElement(DIV)('/')
|
||||
OPERATION_REFERENCE
|
||||
PsiElement(IDENTIFIER)('warning')
|
||||
PsiErrorElement:Expecting an element
|
||||
PsiElement(GT)('>')
|
||||
PsiElement(DOT)('.')
|
||||
REFERENCE_EXPRESSION
|
||||
PsiElement(IDENTIFIER)('test')
|
||||
PsiWhiteSpace('\n')
|
||||
PsiElement(RBRACE)('}')
|
||||
@@ -0,0 +1,3 @@
|
||||
fun test() {
|
||||
MyClass.<warning descr="">Companion</warning>?.test
|
||||
}
|
||||
@@ -0,0 +1,52 @@
|
||||
JetFile: noSafeQualifiedExpression.kt
|
||||
PACKAGE_DIRECTIVE
|
||||
<empty list>
|
||||
FUN
|
||||
PsiElement(fun)('fun')
|
||||
PsiWhiteSpace(' ')
|
||||
PsiElement(IDENTIFIER)('test')
|
||||
VALUE_PARAMETER_LIST
|
||||
PsiElement(LPAR)('(')
|
||||
PsiElement(RPAR)(')')
|
||||
PsiWhiteSpace(' ')
|
||||
BLOCK
|
||||
PsiElement(LBRACE)('{')
|
||||
PsiWhiteSpace('\n ')
|
||||
BINARY_EXPRESSION
|
||||
BINARY_EXPRESSION
|
||||
DOT_QUALIFIED_EXPRESSION
|
||||
REFERENCE_EXPRESSION
|
||||
PsiElement(IDENTIFIER)('MyClass')
|
||||
PsiElement(DOT)('.')
|
||||
PsiErrorElement:Expecting an element
|
||||
PsiElement(LT)('<')
|
||||
OPERATION_REFERENCE
|
||||
PsiElement(IDENTIFIER)('warning')
|
||||
PsiWhiteSpace(' ')
|
||||
REFERENCE_EXPRESSION
|
||||
PsiElement(IDENTIFIER)('descr')
|
||||
OPERATION_REFERENCE
|
||||
PsiElement(EQ)('=')
|
||||
BINARY_EXPRESSION
|
||||
BINARY_EXPRESSION
|
||||
STRING_TEMPLATE
|
||||
PsiElement(OPEN_QUOTE)('"')
|
||||
PsiElement(CLOSING_QUOTE)('"')
|
||||
OPERATION_REFERENCE
|
||||
PsiElement(GT)('>')
|
||||
REFERENCE_EXPRESSION
|
||||
PsiElement(IDENTIFIER)('Companion')
|
||||
OPERATION_REFERENCE
|
||||
PsiElement(LT)('<')
|
||||
BINARY_EXPRESSION
|
||||
PsiErrorElement:Expecting an element
|
||||
PsiElement(DIV)('/')
|
||||
OPERATION_REFERENCE
|
||||
PsiElement(IDENTIFIER)('warning')
|
||||
PsiErrorElement:Expecting an element
|
||||
PsiElement(GT)('>')
|
||||
PsiElement(SAFE_ACCESS)('?.')
|
||||
REFERENCE_EXPRESSION
|
||||
PsiElement(IDENTIFIER)('test')
|
||||
PsiWhiteSpace('\n')
|
||||
PsiElement(RBRACE)('}')
|
||||
@@ -0,0 +1,3 @@
|
||||
fun test() {
|
||||
MyClass.<warning descr="">Companion</warning>.test.test
|
||||
}
|
||||
+56
@@ -0,0 +1,56 @@
|
||||
JetFile: qualifiedExpressionWithSelector.kt
|
||||
PACKAGE_DIRECTIVE
|
||||
<empty list>
|
||||
FUN
|
||||
PsiElement(fun)('fun')
|
||||
PsiWhiteSpace(' ')
|
||||
PsiElement(IDENTIFIER)('test')
|
||||
VALUE_PARAMETER_LIST
|
||||
PsiElement(LPAR)('(')
|
||||
PsiElement(RPAR)(')')
|
||||
PsiWhiteSpace(' ')
|
||||
BLOCK
|
||||
PsiElement(LBRACE)('{')
|
||||
PsiWhiteSpace('\n ')
|
||||
BINARY_EXPRESSION
|
||||
BINARY_EXPRESSION
|
||||
DOT_QUALIFIED_EXPRESSION
|
||||
REFERENCE_EXPRESSION
|
||||
PsiElement(IDENTIFIER)('MyClass')
|
||||
PsiElement(DOT)('.')
|
||||
PsiErrorElement:Expecting an element
|
||||
PsiElement(LT)('<')
|
||||
OPERATION_REFERENCE
|
||||
PsiElement(IDENTIFIER)('warning')
|
||||
PsiWhiteSpace(' ')
|
||||
REFERENCE_EXPRESSION
|
||||
PsiElement(IDENTIFIER)('descr')
|
||||
OPERATION_REFERENCE
|
||||
PsiElement(EQ)('=')
|
||||
BINARY_EXPRESSION
|
||||
BINARY_EXPRESSION
|
||||
STRING_TEMPLATE
|
||||
PsiElement(OPEN_QUOTE)('"')
|
||||
PsiElement(CLOSING_QUOTE)('"')
|
||||
OPERATION_REFERENCE
|
||||
PsiElement(GT)('>')
|
||||
REFERENCE_EXPRESSION
|
||||
PsiElement(IDENTIFIER)('Companion')
|
||||
OPERATION_REFERENCE
|
||||
PsiElement(LT)('<')
|
||||
BINARY_EXPRESSION
|
||||
PsiErrorElement:Expecting an element
|
||||
PsiElement(DIV)('/')
|
||||
OPERATION_REFERENCE
|
||||
PsiElement(IDENTIFIER)('warning')
|
||||
PsiErrorElement:Expecting an element
|
||||
PsiElement(GT)('>')
|
||||
PsiElement(DOT)('.')
|
||||
DOT_QUALIFIED_EXPRESSION
|
||||
REFERENCE_EXPRESSION
|
||||
PsiElement(IDENTIFIER)('test')
|
||||
PsiElement(DOT)('.')
|
||||
REFERENCE_EXPRESSION
|
||||
PsiElement(IDENTIFIER)('test')
|
||||
PsiWhiteSpace('\n')
|
||||
PsiElement(RBRACE)('}')
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
fun test() {
|
||||
MyClass.<warning descr="">Companion</warning>.test.<ff>
|
||||
}
|
||||
+61
@@ -0,0 +1,61 @@
|
||||
JetFile: qualifiedExpressionWithoutSelector.kt
|
||||
PACKAGE_DIRECTIVE
|
||||
<empty list>
|
||||
FUN
|
||||
PsiElement(fun)('fun')
|
||||
PsiWhiteSpace(' ')
|
||||
PsiElement(IDENTIFIER)('test')
|
||||
VALUE_PARAMETER_LIST
|
||||
PsiElement(LPAR)('(')
|
||||
PsiElement(RPAR)(')')
|
||||
PsiWhiteSpace(' ')
|
||||
BLOCK
|
||||
PsiElement(LBRACE)('{')
|
||||
PsiWhiteSpace('\n ')
|
||||
BINARY_EXPRESSION
|
||||
BINARY_EXPRESSION
|
||||
DOT_QUALIFIED_EXPRESSION
|
||||
REFERENCE_EXPRESSION
|
||||
PsiElement(IDENTIFIER)('MyClass')
|
||||
PsiElement(DOT)('.')
|
||||
PsiErrorElement:Expecting an element
|
||||
PsiElement(LT)('<')
|
||||
OPERATION_REFERENCE
|
||||
PsiElement(IDENTIFIER)('warning')
|
||||
PsiWhiteSpace(' ')
|
||||
REFERENCE_EXPRESSION
|
||||
PsiElement(IDENTIFIER)('descr')
|
||||
OPERATION_REFERENCE
|
||||
PsiElement(EQ)('=')
|
||||
BINARY_EXPRESSION
|
||||
BINARY_EXPRESSION
|
||||
STRING_TEMPLATE
|
||||
PsiElement(OPEN_QUOTE)('"')
|
||||
PsiElement(CLOSING_QUOTE)('"')
|
||||
OPERATION_REFERENCE
|
||||
PsiElement(GT)('>')
|
||||
REFERENCE_EXPRESSION
|
||||
PsiElement(IDENTIFIER)('Companion')
|
||||
OPERATION_REFERENCE
|
||||
PsiElement(LT)('<')
|
||||
BINARY_EXPRESSION
|
||||
BINARY_EXPRESSION
|
||||
PsiErrorElement:Expecting an element
|
||||
PsiElement(DIV)('/')
|
||||
OPERATION_REFERENCE
|
||||
PsiElement(IDENTIFIER)('warning')
|
||||
PsiErrorElement:Expecting an element
|
||||
PsiElement(GT)('>')
|
||||
PsiElement(DOT)('.')
|
||||
DOT_QUALIFIED_EXPRESSION
|
||||
REFERENCE_EXPRESSION
|
||||
PsiElement(IDENTIFIER)('test')
|
||||
PsiElement(DOT)('.')
|
||||
PsiErrorElement:Expecting an element
|
||||
PsiElement(LT)('<')
|
||||
OPERATION_REFERENCE
|
||||
PsiElement(IDENTIFIER)('ff')
|
||||
PsiErrorElement:Expecting an element
|
||||
PsiElement(GT)('>')
|
||||
PsiWhiteSpace('\n')
|
||||
PsiElement(RBRACE)('}')
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
fun test() {
|
||||
MyClass.<warning descr="">Companion</warning>?.test?.test
|
||||
}
|
||||
+56
@@ -0,0 +1,56 @@
|
||||
JetFile: safeQualifiedExpressionWithSelector.kt
|
||||
PACKAGE_DIRECTIVE
|
||||
<empty list>
|
||||
FUN
|
||||
PsiElement(fun)('fun')
|
||||
PsiWhiteSpace(' ')
|
||||
PsiElement(IDENTIFIER)('test')
|
||||
VALUE_PARAMETER_LIST
|
||||
PsiElement(LPAR)('(')
|
||||
PsiElement(RPAR)(')')
|
||||
PsiWhiteSpace(' ')
|
||||
BLOCK
|
||||
PsiElement(LBRACE)('{')
|
||||
PsiWhiteSpace('\n ')
|
||||
BINARY_EXPRESSION
|
||||
BINARY_EXPRESSION
|
||||
DOT_QUALIFIED_EXPRESSION
|
||||
REFERENCE_EXPRESSION
|
||||
PsiElement(IDENTIFIER)('MyClass')
|
||||
PsiElement(DOT)('.')
|
||||
PsiErrorElement:Expecting an element
|
||||
PsiElement(LT)('<')
|
||||
OPERATION_REFERENCE
|
||||
PsiElement(IDENTIFIER)('warning')
|
||||
PsiWhiteSpace(' ')
|
||||
REFERENCE_EXPRESSION
|
||||
PsiElement(IDENTIFIER)('descr')
|
||||
OPERATION_REFERENCE
|
||||
PsiElement(EQ)('=')
|
||||
BINARY_EXPRESSION
|
||||
BINARY_EXPRESSION
|
||||
STRING_TEMPLATE
|
||||
PsiElement(OPEN_QUOTE)('"')
|
||||
PsiElement(CLOSING_QUOTE)('"')
|
||||
OPERATION_REFERENCE
|
||||
PsiElement(GT)('>')
|
||||
REFERENCE_EXPRESSION
|
||||
PsiElement(IDENTIFIER)('Companion')
|
||||
OPERATION_REFERENCE
|
||||
PsiElement(LT)('<')
|
||||
BINARY_EXPRESSION
|
||||
PsiErrorElement:Expecting an element
|
||||
PsiElement(DIV)('/')
|
||||
OPERATION_REFERENCE
|
||||
PsiElement(IDENTIFIER)('warning')
|
||||
PsiErrorElement:Expecting an element
|
||||
PsiElement(GT)('>')
|
||||
PsiElement(SAFE_ACCESS)('?.')
|
||||
SAFE_ACCESS_EXPRESSION
|
||||
REFERENCE_EXPRESSION
|
||||
PsiElement(IDENTIFIER)('test')
|
||||
PsiElement(SAFE_ACCESS)('?.')
|
||||
REFERENCE_EXPRESSION
|
||||
PsiElement(IDENTIFIER)('test')
|
||||
PsiWhiteSpace('\n')
|
||||
PsiElement(RBRACE)('}')
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
fun test() {
|
||||
MyClass.<warning descr="">Companion</warning>?.test?.<ff>
|
||||
}
|
||||
+61
@@ -0,0 +1,61 @@
|
||||
JetFile: safeQualifiedExpressionWithoutSelector.kt
|
||||
PACKAGE_DIRECTIVE
|
||||
<empty list>
|
||||
FUN
|
||||
PsiElement(fun)('fun')
|
||||
PsiWhiteSpace(' ')
|
||||
PsiElement(IDENTIFIER)('test')
|
||||
VALUE_PARAMETER_LIST
|
||||
PsiElement(LPAR)('(')
|
||||
PsiElement(RPAR)(')')
|
||||
PsiWhiteSpace(' ')
|
||||
BLOCK
|
||||
PsiElement(LBRACE)('{')
|
||||
PsiWhiteSpace('\n ')
|
||||
BINARY_EXPRESSION
|
||||
BINARY_EXPRESSION
|
||||
DOT_QUALIFIED_EXPRESSION
|
||||
REFERENCE_EXPRESSION
|
||||
PsiElement(IDENTIFIER)('MyClass')
|
||||
PsiElement(DOT)('.')
|
||||
PsiErrorElement:Expecting an element
|
||||
PsiElement(LT)('<')
|
||||
OPERATION_REFERENCE
|
||||
PsiElement(IDENTIFIER)('warning')
|
||||
PsiWhiteSpace(' ')
|
||||
REFERENCE_EXPRESSION
|
||||
PsiElement(IDENTIFIER)('descr')
|
||||
OPERATION_REFERENCE
|
||||
PsiElement(EQ)('=')
|
||||
BINARY_EXPRESSION
|
||||
BINARY_EXPRESSION
|
||||
STRING_TEMPLATE
|
||||
PsiElement(OPEN_QUOTE)('"')
|
||||
PsiElement(CLOSING_QUOTE)('"')
|
||||
OPERATION_REFERENCE
|
||||
PsiElement(GT)('>')
|
||||
REFERENCE_EXPRESSION
|
||||
PsiElement(IDENTIFIER)('Companion')
|
||||
OPERATION_REFERENCE
|
||||
PsiElement(LT)('<')
|
||||
BINARY_EXPRESSION
|
||||
BINARY_EXPRESSION
|
||||
PsiErrorElement:Expecting an element
|
||||
PsiElement(DIV)('/')
|
||||
OPERATION_REFERENCE
|
||||
PsiElement(IDENTIFIER)('warning')
|
||||
PsiErrorElement:Expecting an element
|
||||
PsiElement(GT)('>')
|
||||
PsiElement(SAFE_ACCESS)('?.')
|
||||
SAFE_ACCESS_EXPRESSION
|
||||
REFERENCE_EXPRESSION
|
||||
PsiElement(IDENTIFIER)('test')
|
||||
PsiElement(SAFE_ACCESS)('?.')
|
||||
PsiErrorElement:Expecting an element
|
||||
PsiElement(LT)('<')
|
||||
OPERATION_REFERENCE
|
||||
PsiElement(IDENTIFIER)('ff')
|
||||
PsiErrorElement:Expecting an element
|
||||
PsiElement(GT)('>')
|
||||
PsiWhiteSpace('\n')
|
||||
PsiElement(RBRACE)('}')
|
||||
Reference in New Issue
Block a user