package org.activityinfo.core.shared.criteria; import org.activityinfo.core.shared.Projection; import org.activityinfo.model.form.FormInstance; import javax.annotation.Nonnull; /** * Superclass of {@code Criteria} that are used to select * {@code FormInstance}s */ public interface Criteria { void accept(CriteriaVisitor visitor); boolean apply(@Nonnull FormInstance instance); boolean apply(@Nonnull Projection projection); }