View Javadoc
1   /*
2   CovariantEquals
3   
4   
5   */
6   
7   package com.puppycrawl.tools.checkstyle.checks.coding.covariantequals;
8   
9   /**
10   * Test file for covariant equals methods.
11   * @author Rick Giles
12   */
13  public class InputCovariantEquals
14  {
15      private class Inner
16      {
17          public boolean equals(Inner aInner) // violation
18          {
19              return false;
20          }
21      }
22  
23      private class Inner2
24      {
25          public boolean equals(Inner2 aInner2)
26          {
27              return false;
28          }
29  
30          public boolean equals(Object aObj)
31          {
32              return false;
33          }
34      }
35  
36      public boolean equals(InputCovariantEquals aInputCovariantEquals) // violation
37      {
38          return false;
39      }
40  }
41  
42  class InputCovariant2
43  {
44      public boolean equals(InputCovariant2 aInputCovariant2)
45      {
46          return false;
47      }
48  
49      public boolean equals(Object aObject)
50      {
51          return false;
52      }
53  }
54  
55  class InputCovariant3
56  {
57      public boolean equals(InputCovariant3 aInputCovariant3)
58      {
59          return false;
60      }
61  
62      public boolean equals(java.lang.Object aObject)
63      {
64          return false;
65      }
66  }
67  
68  class InputCovariant4
69  {
70      public boolean equals(int i) // violation
71      {
72          return false;
73      }
74  }
75  
76  class InputAnonymousIC
77  {
78      Comparable comp = new Comparable()
79          {
80              public int compareTo(Object aObject)
81              {
82                  return 0;
83              }
84              public boolean equals(String aString) // violation
85              {
86                  return false;
87              }
88          };
89  
90      public boolean equals(Object aObject)
91      {
92          return false;
93      }
94  
95      public void method()
96      {
97          Double d = new Double(1);
98      }
99  }
100 
101 abstract class InputCovariant5
102 {
103     public abstract boolean equals(InputCovariant4 aInputCovariant4);
104 }
105 
106 interface InputCovariant6
107 {
108     public boolean equals(InputCovariant5 aInputCovariant5);
109 }
110 
111 class InputGenericCovariant7
112 {
113     public <A> boolean equals(InputGenericCovariant7 aInputCovariant7)
114     {
115         return true;
116     }
117 
118     public boolean equals(Object aObject)
119     {
120         return false;
121     }
122 }
123 
124 class InputGenericCovariant8
125 {
126     public <A> boolean equals(InputGenericCovariant8 aInputCovariant8)
127     {
128         return true;
129     }
130 
131     public boolean equals(Object aObject)
132     {
133         return false;
134     }
135 }
136 
137 enum InputEnumCovariant {
138     EQUALS;
139 
140     public boolean equals(InputEnumCovariant inputEnumCovariant) { // violation
141         return false;
142     }
143 
144     int equals(Integer integer) { // violation
145         return 0;
146     }
147 }