View Javadoc
1   /*
2   UnnecessaryParentheses
3   tokens = (default)EXPR, IDENT, NUM_DOUBLE, NUM_FLOAT, NUM_INT, NUM_LONG, \
4            STRING_LITERAL, LITERAL_NULL, LITERAL_FALSE, LITERAL_TRUE, ASSIGN, \
5            BAND_ASSIGN, BOR_ASSIGN, BSR_ASSIGN, BXOR_ASSIGN, DIV_ASSIGN, \
6            MINUS_ASSIGN, MOD_ASSIGN, PLUS_ASSIGN, SL_ASSIGN, SR_ASSIGN, STAR_ASSIGN, \
7            LAMBDA, TEXT_BLOCK_LITERAL_BEGIN, LAND, LITERAL_INSTANCEOF, GT, LT, GE, \
8            LE, EQUAL, NOT_EQUAL, UNARY_MINUS, UNARY_PLUS, INC, DEC, LNOT, BNOT, \
9            POST_INC, POST_DEC
10  
11  
12  */
13  
14  // someexamples of 1.5 extensions
15  package com.puppycrawl.tools.checkstyle.checks.coding.unnecessaryparentheses;
16  
17  @interface MyAnnotation1 {
18      String name();
19      int version();
20  }
21  
22  @MyAnnotation1(name = "ABC", version = 1)
23  public class InputUnnecessaryParentheses15Extensions
24  {
25  
26  }
27  
28  @MyAnnotation1(name = ("ABC" + "DEF"), version = (1)) // 2 violations
29  class AnnotationWithUnnecessaryParentheses
30  {
31  
32  }
33  
34  enum Enum2
35  {
36      A, B, C;
37      Enum2() {}
38      public String toString() {
39          return ""; //some custom implementation
40      }
41  }
42  
43  interface TestRequireThisEnum
44  {
45      enum DAY_OF_WEEK
46      {
47          SUNDAY,
48          MONDAY,
49          TUESDAY,
50          WEDNESDAY,
51          THURSDAY,
52          FRIDAY,
53          SATURDAY
54      }
55  }
56  
57  @MyAnnotation1(name = "ABC", version = 1)
58  class ExtraParenAfterAnnotation {
59      boolean flag = ("abc" == "done"); // violation 'parentheses around assignment right-hand side'
60  }