View Javadoc
1   package com.puppycrawl.tools.checkstyle.grammar.antlr4;
2   
3   import static java.lang.annotation.ElementType.CONSTRUCTOR;
4   import static java.lang.annotation.ElementType.FIELD;
5   import static java.lang.annotation.ElementType.METHOD;
6   import static java.lang.annotation.ElementType.PARAMETER;
7   import static java.lang.annotation.ElementType.TYPE;
8   import static java.lang.annotation.ElementType.TYPE_PARAMETER;
9   import static java.lang.annotation.ElementType.TYPE_USE;
10  
11  import java.lang.annotation.Target;
12  import java.util.ArrayList;
13  import java.util.List;
14  
15  public class InputAntlr4AstRegressionAnnotationOnSameLine {
16      @Ann        // ok
17      private List<String> names = new ArrayList<>();
18  
19      @Ann private List<String> names2 = new ArrayList<>();       // violation
20  
21      @SuppressWarnings("deprecation")        // violation
22      @Ann Integer x;
23  
24      @SuppressWarnings("deprecation")        // violation
25      @Ann                                    // violation
26      Integer x2;
27  
28      @SuppressWarnings("deprecation") @Ann @Ann2 @Ann3 @Ann4 Integer x3;     // ok
29  
30  }
31  
32  @Target({CONSTRUCTOR, FIELD, METHOD, PARAMETER, TYPE, TYPE_PARAMETER, TYPE_USE}) @interface Ann {}
33  
34  @Target({CONSTRUCTOR, FIELD, METHOD, PARAMETER, TYPE, TYPE_PARAMETER, TYPE_USE}) @interface Ann2 {}
35  
36  @interface Ann3 {}
37  
38  @interface Ann4 {}