Report syntax error on unescaped annotation

Also adjust parser testData
This commit is contained in:
Denis Zharkov
2015-09-14 13:54:52 +03:00
parent 3adeb966b5
commit 02aafe4262
51 changed files with 372 additions and 47 deletions
@@ -462,6 +462,7 @@ public class JetParsing extends AbstractJetParsing {
// modifier advanced
}
else if (annotationParsingMode.allowShortAnnotations && at(IDENTIFIER)) {
error("Use '@' symbol before annotations");
parseAnnotation(annotationParsingMode);
}
else {
@@ -532,11 +533,11 @@ public class JetParsing extends AbstractJetParsing {
/*
* annotation
* : annotationPrefix? unescapedAnnotation
* : "@" (annotationUseSiteTarget ":")? unescapedAnnotation
* ;
*
* annotationList
* : annotationPrefix "[" unescapedAnnotation+ "]"
* : "@" (annotationUseSiteTarget ":")? "[" unescapedAnnotation+ "]"
* ;
*
* annotationUseSiteTarget
@@ -548,10 +549,6 @@ public class JetParsing extends AbstractJetParsing {
* : "param"
* : "sparam"
* ;
*
* annotationPrefix:
* : ("@" (annotationUseSiteTarget ":")?)
* ;
*/
private boolean parseAnnotationOrList(AnnotationParsingMode mode) {
if (at(AT)) {
@@ -697,7 +694,7 @@ public class JetParsing extends AbstractJetParsing {
/*
* annotation
* : annotationPrefix? unescapedAnnotation
* : "@" (annotationUseSiteTarget ":")? unescapedAnnotation
* ;
*
* unescapedAnnotation
+2
View File
@@ -5,6 +5,8 @@ JetFile: DynamicSoftKeyword.kt
<empty list>
CLASS
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
+2
View File
@@ -36,6 +36,8 @@ JetFile: EnumOldConstructorSyntax.kt
PsiWhiteSpace(' ')
PROPERTY
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
+2
View File
@@ -29,6 +29,8 @@ JetFile: EnumWithAnnotationKeyword.kt
PsiElement(enum)('enum')
PsiWhiteSpace(' ')
PsiElement(annotation)('annotation')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
+6
View File
@@ -9,6 +9,8 @@ JetFile: FileStart_ERR.kt
PsiElement(package)('package')
PsiWhiteSpace(' ')
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
@@ -19,6 +21,8 @@ JetFile: FileStart_ERR.kt
PsiElement(DOT)('.')
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('bar')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace('\n')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -26,6 +30,8 @@ JetFile: FileStart_ERR.kt
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('import')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
+4
View File
@@ -20,6 +20,8 @@ JetFile: InterfaceWithEnumKeyword.kt
PsiElement(LBRACE)('{')
PsiWhiteSpace('\n ')
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
@@ -45,6 +47,8 @@ JetFile: InterfaceWithEnumKeyword.kt
PsiElement(LBRACE)('{')
PsiWhiteSpace('\n ')
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
+2
View File
@@ -30,6 +30,8 @@ JetFile: NonTypeBeforeDotInBaseClass.kt
PsiElement(DOT)('.')
FUN
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
+2
View File
@@ -73,6 +73,8 @@ JetFile: ParameterNameMising.kt
PsiElement(LPAR)('(')
VALUE_PARAMETER
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
+2 -2
View File
@@ -2,8 +2,8 @@ fun test1(a) {}
fun test2(a = 4) {}
fun test3(c: Int) {}
fun test4(ann(parameter) a) {}
fun test5(ann a) {}
fun test4(@ann(parameter) a) {}
fun test5(@ann a) {}
fun test() {
try {
+2
View File
@@ -65,6 +65,7 @@ JetFile: ParameterType.kt
VALUE_PARAMETER
MODIFIER_LIST
ANNOTATION_ENTRY
PsiElement(AT)('@')
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
@@ -93,6 +94,7 @@ JetFile: ParameterType.kt
VALUE_PARAMETER
MODIFIER_LIST
ANNOTATION_ENTRY
PsiElement(AT)('@')
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
+5 -1
View File
@@ -34,6 +34,8 @@ JetFile: ParameterType_ERR.kt
PsiErrorElement:Expecting ')'
PsiElement(LPAR)('(')
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
@@ -66,6 +68,8 @@ JetFile: ParameterType_ERR.kt
PsiErrorElement:Expecting ')'
PsiElement(LPAR)('(')
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
@@ -228,4 +232,4 @@ JetFile: ParameterType_ERR.kt
TYPE_REFERENCE
PsiErrorElement:Type expected
<empty list>
PsiElement(RPAR)(')')
PsiElement(RPAR)(')')
+3 -1
View File
@@ -187,6 +187,8 @@ JetFile: Properties_ERR.kt
PsiWhiteSpace(' ')
PROPERTY
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
@@ -226,4 +228,4 @@ JetFile: Properties_ERR.kt
<empty list>
PsiWhiteSpace(' ')
PsiErrorElement:Property getter or setter expected
PsiElement(MINUS)('-')
PsiElement(MINUS)('-')
+2
View File
@@ -22,6 +22,8 @@ JetFile: RootPackage.kt
PsiWhiteSpace(' ')
FUN
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
+2
View File
@@ -32,6 +32,8 @@ JetFile: SimpleClassMembers_ERR.kt
PsiElement(LBRACE)('{')
PsiWhiteSpace('\n ')
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
+4
View File
@@ -42,6 +42,8 @@ JetFile: SimpleModifiers.kt
PsiElement(in)('in')
PsiWhiteSpace('\n')
PsiElement(out)('out')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace('\n')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -84,6 +86,8 @@ JetFile: SimpleModifiers.kt
PsiElement(in)('in')
PsiWhiteSpace('\n ')
PsiElement(out)('out')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace('\n ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
+2
View File
@@ -55,6 +55,8 @@ JetFile: SoftKeywords.kt
PsiElement(in)('in')
PsiWhiteSpace('\n')
PsiElement(out)('out')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace('\n')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
+4
View File
@@ -160,6 +160,8 @@ JetFile: Annotations.kt
PsiElement(RBRACKET)(']')
PsiWhiteSpace('\n')
PsiElement(out)('out')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace('\n')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -322,6 +324,8 @@ JetFile: Annotations.kt
PsiElement(in)('in')
PsiWhiteSpace('\n')
PsiElement(out)('out')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace('\n')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
+4
View File
@@ -198,6 +198,8 @@ JetFile: Annotations_ERR.kt
PsiElement(RBRACKET)(']')
PsiWhiteSpace('\n')
PsiElement(out)('out')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace('\n')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -277,6 +279,8 @@ JetFile: Annotations_ERR.kt
PsiElement(in)('in')
PsiWhiteSpace('\n')
PsiElement(out)('out')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace('\n')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
+128
View File
@@ -1,12 +1,16 @@
JetFile: ShortAnnotations.kt
PACKAGE_DIRECTIVE
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('foo')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -20,6 +24,8 @@ JetFile: ShortAnnotations.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiElement(RPAR)(')')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -41,6 +47,8 @@ JetFile: ShortAnnotations.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiElement(RPAR)(')')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -58,12 +66,16 @@ JetFile: ShortAnnotations.kt
PsiWhiteSpace('\n\n')
CLASS
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('foo')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -77,6 +89,8 @@ JetFile: ShortAnnotations.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiElement(RPAR)(')')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -98,6 +112,8 @@ JetFile: ShortAnnotations.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiElement(RPAR)(')')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -112,12 +128,16 @@ JetFile: ShortAnnotations.kt
PsiWhiteSpace('\n')
OBJECT_DECLARATION
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('foo')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -131,6 +151,8 @@ JetFile: ShortAnnotations.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiElement(RPAR)(')')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -152,6 +174,8 @@ JetFile: ShortAnnotations.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiElement(RPAR)(')')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -167,12 +191,16 @@ JetFile: ShortAnnotations.kt
PsiWhiteSpace('\n')
FUN
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('foo')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -186,6 +214,8 @@ JetFile: ShortAnnotations.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiElement(RPAR)(')')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -207,6 +237,8 @@ JetFile: ShortAnnotations.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiElement(RPAR)(')')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -228,12 +260,16 @@ JetFile: ShortAnnotations.kt
PsiWhiteSpace('\n')
PROPERTY
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('foo')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -247,6 +283,8 @@ JetFile: ShortAnnotations.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiElement(RPAR)(')')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -268,6 +306,8 @@ JetFile: ShortAnnotations.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiElement(RPAR)(')')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -294,12 +334,16 @@ JetFile: ShortAnnotations.kt
PsiWhiteSpace('\n')
PROPERTY
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('foo')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -313,6 +357,8 @@ JetFile: ShortAnnotations.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiElement(RPAR)(')')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -334,6 +380,8 @@ JetFile: ShortAnnotations.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiElement(RPAR)(')')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -360,12 +408,16 @@ JetFile: ShortAnnotations.kt
PsiWhiteSpace('\n')
TYPEDEF
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('foo')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -379,6 +431,8 @@ JetFile: ShortAnnotations.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiElement(RPAR)(')')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -400,6 +454,8 @@ JetFile: ShortAnnotations.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiElement(RPAR)(')')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -429,12 +485,16 @@ JetFile: ShortAnnotations.kt
PsiWhiteSpace('\n ')
OBJECT_DECLARATION
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('foo')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -448,6 +508,8 @@ JetFile: ShortAnnotations.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiElement(RPAR)(')')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -469,6 +531,8 @@ JetFile: ShortAnnotations.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiElement(RPAR)(')')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -487,12 +551,16 @@ JetFile: ShortAnnotations.kt
PsiWhiteSpace('\n ')
CLASS
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('foo')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -506,6 +574,8 @@ JetFile: ShortAnnotations.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiElement(RPAR)(')')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -527,6 +597,8 @@ JetFile: ShortAnnotations.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiElement(RPAR)(')')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -541,12 +613,16 @@ JetFile: ShortAnnotations.kt
PsiWhiteSpace('\n ')
OBJECT_DECLARATION
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('foo')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -560,6 +636,8 @@ JetFile: ShortAnnotations.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiElement(RPAR)(')')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -581,6 +659,8 @@ JetFile: ShortAnnotations.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiElement(RPAR)(')')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -596,12 +676,16 @@ JetFile: ShortAnnotations.kt
PsiWhiteSpace('\n ')
FUN
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('foo')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -615,6 +699,8 @@ JetFile: ShortAnnotations.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiElement(RPAR)(')')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -636,6 +722,8 @@ JetFile: ShortAnnotations.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiElement(RPAR)(')')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -657,12 +745,16 @@ JetFile: ShortAnnotations.kt
PsiWhiteSpace('\n ')
PROPERTY
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('foo')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -676,6 +768,8 @@ JetFile: ShortAnnotations.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiElement(RPAR)(')')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -697,6 +791,8 @@ JetFile: ShortAnnotations.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiElement(RPAR)(')')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -723,12 +819,16 @@ JetFile: ShortAnnotations.kt
PsiWhiteSpace('\n ')
PROPERTY
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('foo')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -742,6 +842,8 @@ JetFile: ShortAnnotations.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiElement(RPAR)(')')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -763,6 +865,8 @@ JetFile: ShortAnnotations.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiElement(RPAR)(')')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -789,12 +893,16 @@ JetFile: ShortAnnotations.kt
PsiWhiteSpace('\n ')
TYPEDEF
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('foo')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -808,6 +916,8 @@ JetFile: ShortAnnotations.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiElement(RPAR)(')')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -829,6 +939,8 @@ JetFile: ShortAnnotations.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiElement(RPAR)(')')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -850,12 +962,16 @@ JetFile: ShortAnnotations.kt
PsiWhiteSpace('\n\n ')
ANONYMOUS_INITIALIZER
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('foo')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -869,6 +985,8 @@ JetFile: ShortAnnotations.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiElement(RPAR)(')')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -890,6 +1008,8 @@ JetFile: ShortAnnotations.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiElement(RPAR)(')')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -923,12 +1043,16 @@ JetFile: ShortAnnotations.kt
PsiElement(LPAR)('(')
PROPERTY
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('foo')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -942,6 +1066,8 @@ JetFile: ShortAnnotations.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiElement(RPAR)(')')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -963,6 +1089,8 @@ JetFile: ShortAnnotations.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiElement(RPAR)(')')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -1,4 +1,4 @@
private @ @[Ann1(1)] Ann3("2") class A(
private @ @[Ann1(1)] @Ann3("2") class A(
@ private val x: Int,
@ private var y: Int,
@ open z: Int
@@ -28,6 +28,7 @@ JetFile: declarationsJustAtTyped.kt
PsiElement(RBRACKET)(']')
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
PsiElement(AT)('@')
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
+1 -1
View File
@@ -1,4 +1,4 @@
private @open @[Ann1(1)] @Ann2("1") Ann3("2") class A(
private @open @[Ann1(1)] @Ann2("1") @Ann3("2") class A(
@Volatile(1) private val x: @AnnType("3") @open Int,
@private var y: Int,
@open z: Int
@@ -50,6 +50,7 @@ JetFile: validDeclarations.kt
PsiElement(RPAR)(')')
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
PsiElement(AT)('@')
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
+26
View File
@@ -78,6 +78,8 @@ JetFile: forParameters.kt
PsiElement(AT)('@')
PsiWhiteSpace(' ')
PsiElement(in)('in')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -189,6 +191,8 @@ JetFile: forParameters.kt
PsiElement(LPAR)('(')
VALUE_PARAMETER
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
@@ -221,6 +225,8 @@ JetFile: forParameters.kt
PsiElement(LPAR)('(')
VALUE_PARAMETER
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
@@ -259,6 +265,8 @@ JetFile: forParameters.kt
PsiElement(LPAR)('(')
MULTI_VARIABLE_DECLARATION
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
@@ -276,6 +284,8 @@ JetFile: forParameters.kt
PsiWhiteSpace(' ')
MULTI_VARIABLE_DECLARATION_ENTRY
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
@@ -309,6 +319,8 @@ JetFile: forParameters.kt
PsiElement(LPAR)('(')
MULTI_VARIABLE_DECLARATION
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
@@ -323,6 +335,8 @@ JetFile: forParameters.kt
PsiWhiteSpace(' ')
MULTI_VARIABLE_DECLARATION_ENTRY
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
@@ -356,6 +370,8 @@ JetFile: forParameters.kt
PsiElement(LPAR)('(')
VALUE_PARAMETER
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
@@ -390,6 +406,8 @@ JetFile: forParameters.kt
PsiElement(LPAR)('(')
MULTI_VARIABLE_DECLARATION
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
@@ -406,6 +424,8 @@ JetFile: forParameters.kt
PsiWhiteSpace(' ')
MULTI_VARIABLE_DECLARATION_ENTRY
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
@@ -440,6 +460,8 @@ JetFile: forParameters.kt
VALUE_PARAMETER
MODIFIER_LIST
PsiElement(private)('private')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -476,6 +498,8 @@ JetFile: forParameters.kt
MULTI_VARIABLE_DECLARATION
MODIFIER_LIST
PsiElement(private)('private')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -493,6 +517,8 @@ JetFile: forParameters.kt
PsiWhiteSpace(' ')
MULTI_VARIABLE_DECLARATION_ENTRY
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
@@ -58,6 +58,8 @@ JetFile: oldUsages.kt
PsiWhiteSpace('\n\n ')
FUN
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
+2 -2
View File
@@ -5,6 +5,6 @@ annotation
class my
annotation
Retention(RetentionPolicy.RUNTIME)
Target(ElementType.ANNOTATION_TYPE, ElementType.CONSTRUCTOR)
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.ANNOTATION_TYPE, ElementType.CONSTRUCTOR)
class my1
+4 -2
View File
@@ -61,6 +61,7 @@ JetFile: java.kt
PsiElement(annotation)('annotation')
PsiWhiteSpace(' \n')
ANNOTATION_ENTRY
PsiElement(AT)('@')
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
@@ -76,8 +77,9 @@ JetFile: java.kt
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('RUNTIME')
PsiElement(RPAR)(')')
PsiWhiteSpace(' \n')
PsiWhiteSpace('\n')
ANNOTATION_ENTRY
PsiElement(AT)('@')
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
@@ -102,7 +104,7 @@ JetFile: java.kt
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('CONSTRUCTOR')
PsiElement(RPAR)(')')
PsiWhiteSpace(' \n')
PsiWhiteSpace('\n')
PsiElement(class)('class')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('my1')
@@ -1,4 +1,4 @@
@file:foo
foo bar
@foo @bar
@file: baz
fun foo() {}
@@ -18,6 +18,7 @@ JetFile: withoutPackageWithSimpleAnnotation.kt
FUN
MODIFIER_LIST
ANNOTATION_ENTRY
PsiElement(AT)('@')
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
@@ -25,6 +26,7 @@ JetFile: withoutPackageWithSimpleAnnotation.kt
PsiElement(IDENTIFIER)('foo')
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
PsiElement(AT)('@')
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
@@ -171,6 +171,8 @@ JetFile: targetExpected.kt
PsiErrorElement:Expecting a list of annotations
<empty list>
PsiElement(RBRACKET)(']')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -290,6 +290,8 @@ JetFile: FunctionsWithFunctionReceivers.kt
PsiElement(DOT)('.')
FUN
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
@@ -434,6 +436,8 @@ JetFile: FunctionsWithFunctionReceivers.kt
PsiWhiteSpace('\n')
CLASS
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
@@ -311,6 +311,8 @@ JetFile: FunctionsWithFunctionReceiversRecovery.kt
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('a')
PsiElement(RBRACKET)(']')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
@@ -331,6 +333,8 @@ JetFile: FunctionsWithFunctionReceiversRecovery.kt
PsiErrorElement:Expecting a top level declaration
PsiElement(LPAR)('(')
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
@@ -351,6 +355,8 @@ JetFile: FunctionsWithFunctionReceiversRecovery.kt
PsiElement(DOT)('.')
FUN
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
@@ -436,6 +442,8 @@ JetFile: FunctionsWithFunctionReceiversRecovery.kt
PsiErrorElement:Expecting a top level declaration
PsiElement(LBRACKET)('[')
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
@@ -450,6 +458,8 @@ JetFile: FunctionsWithFunctionReceiversRecovery.kt
PsiErrorElement:Expecting a top level declaration
PsiElement(LPAR)('(')
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
@@ -474,6 +484,8 @@ JetFile: FunctionsWithFunctionReceiversRecovery.kt
PsiElement(DOT)('.')
FUN
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
@@ -543,6 +555,8 @@ JetFile: FunctionsWithFunctionReceiversRecovery.kt
PsiWhiteSpace('\n')
CLASS
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
@@ -449,6 +449,8 @@ JetFile: PropertiesWithFunctionReceivers.kt
PsiWhiteSpace('\n ')
FUN
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
@@ -526,6 +528,8 @@ JetFile: PropertiesWithFunctionReceivers.kt
PsiWhiteSpace('\n ')
FUN
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
@@ -18,6 +18,8 @@ JetFile: functionTypes.kt
PsiWhiteSpace(' ')
FUN
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
@@ -10,6 +10,8 @@ JetFile: PackageLeadingDotDoubleID.kt
<empty list>
PsiWhiteSpace(' ')
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
@@ -17,4 +19,4 @@ JetFile: PackageLeadingDotDoubleID.kt
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('b')
PsiErrorElement:Expecting a top level declaration
<empty list>
<empty list>
+3 -1
View File
@@ -8,6 +8,8 @@ JetFile: PackageLongNameDoubleID.kt
<empty list>
PsiWhiteSpace(' ')
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
@@ -15,4 +17,4 @@ JetFile: PackageLongNameDoubleID.kt
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('b')
PsiErrorElement:Expecting a top level declaration
<empty list>
<empty list>
@@ -1,19 +1,19 @@
class Outer1 {
class Nested1
private Ann constructor()
private @Ann constructor()
}
class Outer2 {
class Nested2;
private Ann constructor()
private @Ann constructor()
}
class Outer3 {
class Nested3
private Ann constructor() : super() {}
private @Ann constructor() : super() {}
}
class Outer4 {
@@ -21,6 +21,7 @@ JetFile: nestedClassAmbiguity.kt
PsiElement(private)('private')
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
PsiElement(AT)('@')
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
@@ -53,6 +54,7 @@ JetFile: nestedClassAmbiguity.kt
PsiElement(private)('private')
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
PsiElement(AT)('@')
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
@@ -87,6 +89,7 @@ JetFile: nestedClassAmbiguity.kt
PsiElement(private)('private')
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
PsiElement(AT)('@')
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
+3 -3
View File
@@ -13,6 +13,6 @@ class A3 Ann {
class A4 constructor {}
class A5 constructor : Base {}
class A7 Ann(1) (x: Int)
class A8 Ann() {}
class A9 Ann() : Base()
class A7 @Ann(1) (x: Int)
class A8 @Ann() {}
class A9 @Ann() : Base()
+10 -1
View File
@@ -57,6 +57,8 @@ JetFile: recovery.kt
PsiWhiteSpace(' ')
PRIMARY_CONSTRUCTOR
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
@@ -86,6 +88,8 @@ JetFile: recovery.kt
PsiWhiteSpace(' ')
CLASS
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
@@ -99,6 +103,8 @@ JetFile: recovery.kt
PsiWhiteSpace(' ')
PRIMARY_CONSTRUCTOR
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
@@ -166,6 +172,7 @@ JetFile: recovery.kt
PRIMARY_CONSTRUCTOR
MODIFIER_LIST
ANNOTATION_ENTRY
PsiElement(AT)('@')
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
@@ -198,6 +205,7 @@ JetFile: recovery.kt
PRIMARY_CONSTRUCTOR
MODIFIER_LIST
ANNOTATION_ENTRY
PsiElement(AT)('@')
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
@@ -221,6 +229,7 @@ JetFile: recovery.kt
PRIMARY_CONSTRUCTOR
MODIFIER_LIST
ANNOTATION_ENTRY
PsiElement(AT)('@')
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
@@ -243,4 +252,4 @@ JetFile: recovery.kt
PsiElement(IDENTIFIER)('Base')
VALUE_ARGUMENT_LIST
PsiElement(LPAR)('(')
PsiElement(RPAR)(')')
PsiElement(RPAR)(')')
@@ -1,25 +1,30 @@
class Outer1 {
class Nested1
private Ann ()
private @Ann ()
}
class Outer2 {
class Nested2 private Ann
class Nested2 private @Ann
fun foo() {}
}
class Outer3 {
class Nested3 private Ann {}
class Nested3 private @Ann {}
fun foo()
}
class Outer4 {
class Nested3 private Ann() {}
class Nested3 private @Ann() {}
fun foo()
}
class Outer4 {
class Nested3 private Ann() : Base()
class Outer5 {
class Nested3 private @Ann() : Base()
fun foo()
}
class Outer6 {
class Nested1
private Ann ()
}
@@ -20,6 +20,7 @@ JetFile: recoveryNestedClassAmbiguity.kt
PsiElement(private)('private')
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
PsiElement(AT)('@')
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
@@ -52,6 +53,7 @@ JetFile: recoveryNestedClassAmbiguity.kt
PsiElement(private)('private')
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
PsiElement(AT)('@')
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
@@ -89,6 +91,7 @@ JetFile: recoveryNestedClassAmbiguity.kt
PsiElement(private)('private')
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
PsiElement(AT)('@')
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
@@ -129,6 +132,7 @@ JetFile: recoveryNestedClassAmbiguity.kt
PsiElement(private)('private')
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
PsiElement(AT)('@')
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
@@ -157,7 +161,7 @@ JetFile: recoveryNestedClassAmbiguity.kt
CLASS
PsiElement(class)('class')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('Outer4')
PsiElement(IDENTIFIER)('Outer5')
PsiWhiteSpace(' ')
CLASS_BODY
PsiElement(LBRACE)('{')
@@ -172,6 +176,7 @@ JetFile: recoveryNestedClassAmbiguity.kt
PsiElement(private)('private')
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
PsiElement(AT)('@')
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
@@ -205,3 +210,36 @@ JetFile: recoveryNestedClassAmbiguity.kt
PsiElement(RPAR)(')')
PsiWhiteSpace('\n')
PsiElement(RBRACE)('}')
PsiWhiteSpace('\n\n')
CLASS
PsiElement(class)('class')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('Outer6')
PsiWhiteSpace(' ')
CLASS_BODY
PsiElement(LBRACE)('{')
PsiWhiteSpace('\n ')
CLASS
PsiElement(class)('class')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('Nested1')
PsiWhiteSpace('\n ')
MODIFIER_LIST
PsiElement(private)('private')
PsiErrorElement:Use '@' symbol before annotations
<empty list>
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('Ann')
PsiWhiteSpace(' ')
VALUE_ARGUMENT_LIST
PsiElement(LPAR)('(')
PsiElement(RPAR)(')')
PsiErrorElement:Expecting member declaration
<empty list>
PsiWhiteSpace('\n')
PsiElement(RBRACE)('}')
+4 -2
View File
@@ -6,8 +6,10 @@ private constructor(y: Int) : Base1(), Base2 {
}
class A2 @private constructor(y: Int)
class A3 Ann(1) private constructor(y: Int)
class A3 @Ann(1) private constructor(y: Int)
class A4 private Ann(1) constructor(y: Int)
class A4 private @Ann(1) constructor(y: Int)
class A5 @Ann private constructor() {}
class A6 Ann() private constructor() {}
+32
View File
@@ -112,6 +112,7 @@ JetFile: valid.kt
PRIMARY_CONSTRUCTOR
MODIFIER_LIST
ANNOTATION_ENTRY
PsiElement(AT)('@')
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
@@ -149,6 +150,7 @@ JetFile: valid.kt
PsiElement(private)('private')
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
PsiElement(AT)('@')
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
@@ -199,3 +201,33 @@ JetFile: valid.kt
CLASS_BODY
PsiElement(LBRACE)('{')
PsiElement(RBRACE)('}')
PsiWhiteSpace('\n\n')
CLASS
PsiElement(class)('class')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('A6')
PsiWhiteSpace(' ')
PRIMARY_CONSTRUCTOR
MODIFIER_LIST
PsiErrorElement:Use '@' symbol before annotations
<empty list>
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('Ann')
VALUE_ARGUMENT_LIST
PsiElement(LPAR)('(')
PsiElement(RPAR)(')')
PsiWhiteSpace(' ')
PsiElement(private)('private')
PsiWhiteSpace(' ')
PsiElement(constructor)('constructor')
VALUE_PARAMETER_LIST
PsiElement(LPAR)('(')
PsiElement(RPAR)(')')
PsiWhiteSpace(' ')
CLASS_BODY
PsiElement(LBRACE)('{')
PsiElement(RBRACE)('}')
+1 -1
View File
@@ -1,2 +1,2 @@
package foo.bar.baz.buzz.
test val a = 12
@test val a = 12
@@ -25,6 +25,7 @@ JetFile: PackageNewLineRecovery.kt
PROPERTY
MODIFIER_LIST
ANNOTATION_ENTRY
PsiElement(AT)('@')
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
+1 -1
View File
@@ -3,7 +3,7 @@ class A {
}
class B {
Ann init
@Ann init
val x = 1
init
fun foo() {}
+1
View File
@@ -29,6 +29,7 @@ JetFile: initRecovery.kt
ANONYMOUS_INITIALIZER
MODIFIER_LIST
ANNOTATION_ENTRY
PsiElement(AT)('@')
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
+3 -3
View File
@@ -3,15 +3,15 @@ class A {
val x: Int
private annot constructor(x: Int) {}
private @annot constructor(x: Int) {}
@constructor fun constructor() {}
annot protected constructor(x: Int, y: Int) : this(1,2) {}
@annot protected constructor(x: Int, y: Int) : this(1,2) {}
@[constructor] public constructor() : super() {
x = 1
}
}
constructor class B
@constructor class B
+3
View File
@@ -40,6 +40,7 @@ JetFile: basic.kt
PsiElement(private)('private')
PsiWhiteSpace(' ')
ANNOTATION_ENTRY
PsiElement(AT)('@')
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
@@ -90,6 +91,7 @@ JetFile: basic.kt
SECONDARY_CONSTRUCTOR
MODIFIER_LIST
ANNOTATION_ENTRY
PsiElement(AT)('@')
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
@@ -190,6 +192,7 @@ JetFile: basic.kt
CLASS
MODIFIER_LIST
ANNOTATION_ENTRY
PsiElement(AT)('@')
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
+2 -6
View File
@@ -7,11 +7,11 @@ annotations
;
annotation
: annotationPrefix? unescapedAnnotation
: "@" (annotationUseSiteTarget ":")? unescapedAnnotation
;
annotationList
: annotationPrefix "[" unescapedAnnotation+ "]"
: "@" (annotationUseSiteTarget ":")? "[" unescapedAnnotation+ "]"
;
annotationUseSiteTarget
@@ -24,10 +24,6 @@ annotationUseSiteTarget
: "sparam"
;
annotationPrefix:
: ("@" (annotationUseSiteTarget ":")?)
;
unescapedAnnotation
: SimpleName{"."} typeArguments? valueArguments?
;