strangedb/src/main/java/it/cavallium/strangedb/java/objects/lists/operations/Contains.java

26 lines
665 B
Java

package it.cavallium.strangedb.java.objects.lists.operations;
import it.cavallium.strangedb.java.objects.lists.KMP;
import it.cavallium.strangedb.java.objects.lists.ValueOperation;
public class Contains<T extends CharSequence> implements ValueOperation<T> {
private final T containsValue;
private Contains(T containsValue) {
this.containsValue = containsValue;
}
public static <T extends CharSequence> Contains<T> containsValue(T value) {
return new Contains<T>(value);
}
@Override
public boolean evaluate(Object value) {
if (value instanceof CharSequence) {
return KMP.KMP((CharSequence) value, containsValue) != -1;
}
return false;
}
}