View Javadoc
1   /*
2   AnnotationOnSameLine
3   tokens = (default)CLASS_DEF, INTERFACE_DEF, ENUM_DEF, METHOD_DEF, CTOR_DEF, \
4            VARIABLE_DEF, RECORD_DEF, COMPACT_CTOR_DEF
5   
6   
7   */
8   
9   package com.puppycrawl.tools.checkstyle.checks.annotation.annotationonsameline;
10  
11  import static java.lang.annotation.ElementType.*;
12  
13  import java.lang.annotation.Target;
14  import java.util.List;
15  import java.util.ArrayList;
16  
17  public class InputAnnotationOnSameLineCheckPrivateAndDeprecatedVar {
18  
19      @Ann        // violation, "Annotation 'Ann' should be on the same line with its target."
20      private List<String> names = new ArrayList<>();
21  
22      @Ann private List<String> names2 = new ArrayList<>();
23  
24      // violation below, "Annotation 'SuppressWarnings' should be on the same line with its target."
25      @SuppressWarnings("deprecation")
26      @Ann Integer x;
27  
28      // violation below, "Annotation 'SuppressWarnings' should be on the same line with its target."
29      @SuppressWarnings("deprecation")
30      @Ann
31      // violation above, "Annotation 'Ann' should be on the same line with its target."
32      Integer x2;
33  
34      @SuppressWarnings("deprecation") @Ann @Ann2 @Ann3 @Ann4 Integer x3;
35  
36  }
37  
38  @Target({CONSTRUCTOR, FIELD, METHOD, PARAMETER, TYPE, TYPE_PARAMETER, TYPE_USE}) @interface Ann {}
39  
40  @Target({CONSTRUCTOR, FIELD, METHOD, PARAMETER, TYPE, TYPE_PARAMETER, TYPE_USE}) @interface Ann2 {}
41  
42  @interface Ann3 {}
43  
44  @interface Ann4 {}