blob: 55352f3a192a52734867c55e57de1dbc73aeae15 (
plain) (
blame)
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
|
package org.eclipse.xtend.backend.common;
/**
* This class represents the binding of a function to a name. It is a separate
* concept from Function itself so that the same function can have several names.
*
* @author Arno Haase (http://www.haase-consulting.com)
*/
public class NamedFunction {
private final Function _function;
private final String _name;
public NamedFunction (String name, Function f) {
_function = f;
_name = name;
}
public Function getFunction () {
return _function;
}
public String getName () {
return _name;
}
@Override
public int hashCode () {
final int prime = 31;
int result = 1;
result = prime * result + ((_function == null) ? 0 : _function.hashCode());
result = prime * result + ((_name == null) ? 0 : _name.hashCode());
return result;
}
@Override
public boolean equals (Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
final NamedFunction other = (NamedFunction) obj;
if (_function == null) {
if (other._function != null)
return false;
} else if (!_function.equals(other._function))
return false;
if (_name == null) {
if (other._name != null)
return false;
} else if (!_name.equals(other._name))
return false;
return true;
}
@Override
public String toString () {
return "NamedFunction [" + _name + ": " + _function + "]";
}
}
|