aboutsummaryrefslogtreecommitdiff
path: root/src/test/resources/com/puppycrawl/tools/checkstyle/checks/coding/InputCovariant.java
blob: c5df50f5f8a591cdc1e3913eeb30c399a36cfdf2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
package com.puppycrawl.tools.checkstyle.checks.coding;

/**
 * Test file for covariant equals methods.
 * @author Rick Giles
 */
public class InputCovariant
{
    private class Inner
    {
        public boolean equals(Inner aInner)
        {
            return false;
        }
    }

    private class Inner2
    {
        public boolean equals(Inner2 aInner2)
        {
            return false;
        }
        
        public boolean equals(Object aObj)
        {
            return false;       
        }
    }

    public boolean equals(InputCovariant aInputCovariant)
    {
        return false;
    }
}

class InputCovariant2
{   
    public boolean equals(InputCovariant2 aInputCovariant2)
    {
        return false;
    }
    
    public boolean equals(Object aObject)
    {
        return false;
    }
}

class InputCovariant3
{   
    public boolean equals(InputCovariant3 aInputCovariant3)
    {
        return false;
    }
    
    public boolean equals(java.lang.Object aObject)
    {
        return false;
    }
}

class InputCovariant4
{
    public boolean equals(int i)
    {
        return false;
    }
}

class AnonymousIC
{
    Comparable comp = new Comparable()
        {
            public int compareTo(Object aObject)
            {
                return 0;
            }
            public boolean equals(String aString)
            {
                return false;
            }
        };
    
    public boolean equals(Object aObject)
    {
        return false;
    }
    
    public void method()
    {
        Double d = new Double(1);
    }
}

abstract class InputCovariant5
{
    public abstract boolean equals(InputCovariant4 aInputCovariant4);
}

interface InputCovariant6
{
    public boolean equals(InputCovariant5 aInputCovariant5);
}

class InputGenericCovariant7
{
    public <A> boolean equals(InputGenericCovariant7 aInputCovariant7)
    {
        return true;
    }

    public boolean equals(Object aObject)
    {
        return false;
    }
}

class InputGenericCovariant8
{
    public <A> boolean equals(InputGenericCovariant8 aInputCovariant8)
    {
        return true;
    }

    public boolean equals(Object aObject)
    {
        return false;
    }
}

enum InputEnumCovariant {
    EQUALS;

    public boolean equals(InputEnumCovariant inputEnumCovariant) {
        return false;
    }

    int equals(Integer integer) {
        return 0;
    }
}