package com.googlecode.totallylazy.predicates;
import java.lang.annotation.Annotation;
public class InstanceOf<T> extends LogicalPredicate<T> {
private final Class<?> aClass;
public InstanceOf(Class<?> aClass) {
this.aClass = aClass;
}
public boolean matches(T other) {
if(other == null) {
return false;
}
if(other instanceof Annotation){
return ((Annotation) other).annotationType().equals(aClass);
}
return aClass.isInstance(other);
}
}