1package org.bouncycastle.util;
2
3/**
4 * Interface a selector from a store should conform to.
5 *
6 * @param <T> the type stored in the store.
7 */
8public interface Selector<T>
9    extends Cloneable
10{
11    /**
12     * Match the passed in object, returning true if it would be selected by this selector, false otherwise.
13     *
14     * @param obj the object to be matched.
15     * @return true if the object is a match for this selector, false otherwise.
16     */
17    boolean match(T obj);
18
19    Object clone();
20}
21