package cz.habarta.typescript.generator.util; import java.util.Objects; public class Pair<T1, T2> { private final T1 value1; private final T2 value2; private Pair(T1 value1, T2 value2) { this.value1 = value1; this.value2 = value2; } public static <T1, T2> Pair<T1, T2> of(T1 value1, T2 value2) { return new Pair<>(value1, value2); } public T1 getValue1() { return value1; } public T2 getValue2() { return value2; } @Override public int hashCode() { int hash = 5; hash = 53 * hash + Objects.hashCode(this.value1); hash = 53 * hash + Objects.hashCode(this.value2); return hash; } @Override public boolean equals(Object obj) { if (this == obj) { return true; } if (obj == null) { return false; } if (getClass() != obj.getClass()) { return false; } final Pair<?, ?> other = (Pair<?, ?>) obj; if (!Objects.equals(this.value1, other.value1)) { return false; } if (!Objects.equals(this.value2, other.value2)) { return false; } return true; } }