}
public boolean equals(Object o) {
if (o == null || !(o instanceof Value)) {
return false;
}
Value v = (Value) o;
if (!type.equals(v.getType())) { return false; }
if (value == null) {
return v.getValue() == null;
} else {
return value.equals(v.getValue());
}
}