package com.googlecode.totallylazy.predicates;
import com.googlecode.totallylazy.Objects;
public class EqualsBinaryPredicate<T> extends LogicalBinaryPredicate<T> {
private EqualsBinaryPredicate() {}
public static <T> EqualsBinaryPredicate<T> is(Class<T> aClass) {return equalTo();}
public static <T> EqualsBinaryPredicate<T> is() {return equalTo();}
public static <T> EqualsBinaryPredicate<T> equalTo(Class<T> aClass) {return equalTo();}
public static <T> EqualsBinaryPredicate<T> equalTo() {return new EqualsBinaryPredicate<T>();}
@Override
public LogicalBinaryPredicate<T> flip() {
return this;
}
@Override
public LogicalPredicate<T> apply(T t) {
return EqualsPredicate.equalTo(t);
}
@Override
public boolean matches(T a, T b) {
return Objects.equalTo(a, b);
}
}