package xsbti.api;
import java.util.Arrays;
import java.util.List;
public final class Parameterized extends SimpleType
{
public Parameterized(SimpleType baseType, Type[] typeArguments)
{
this.baseType = baseType;
this.typeArguments = typeArguments;
}
private final SimpleType baseType;
private final Type[] typeArguments;
public final SimpleType baseType()
{
return baseType;
}
public final Type[] typeArguments()
{
return typeArguments;
}
public boolean equals(Object obj)
{
if (this == obj) {
return true;
} else if (!(obj instanceof Parameterized)) {
return false;
} else {
Parameterized o = (Parameterized)obj;
return baseType().equals(o.baseType()) && Arrays.deepEquals(typeArguments(), o.typeArguments());
}
}
public int hashCode()
{
return 37 * (37 * (17) + baseType().hashCode()) + Arrays.deepHashCode(typeArguments());
}
public String toString()
{
return "Parameterized(" + "baseType: " + baseType() + ", " + "typeArguments: " + Arrays.toString(typeArguments()) + ")";
}
}