package nl.uva.sc.encoders.ql.ast.type;
import nl.uva.sc.encoders.ql.visitor.DataTypeVisitor;
public abstract class DataType {
public abstract <T> T accept(DataTypeVisitor<T> dataTypeVisitor);
public abstract String getName();
@Override
public String toString() {
return getName().toString();
}
@Override
public int hashCode() {
return getName().hashCode();
}
@Override
public boolean equals(Object obj) {
if (this == obj) {
return true;
}
if (!(obj instanceof DataType)) {
return false;
}
if (!getName().equals(((DataType) obj).getName())) {
return false;
}
return true;
}
}