// Path: src/joquery/core/QueryException.java
// public class QueryException extends Exception
// {
//     public QueryException(String message)
//     {
//         super(message);
//     }
// 
//     public QueryException(String message, Throwable cause)
//     {
//         super(message, cause);
//     }
// }


import joquery.core.QueryException;
import java.util.Collection;
package joquery;



/**
 * User: Adipa
 * Date: 10/14/12
 * Time: 11:19 AM
 */
public interface Filter<T> extends Query<T, Filter<T>>
{
// Path: src/joquery/core/QueryException.java
// public class QueryException extends Exception
// {
//     public QueryException(String message)
//     {
//         super(message);
//     }
// 
//     public QueryException(String message, Throwable cause)
//     {
//         super(message, cause);
//     }
// }


// Path: src/joquery/Filter.java
import joquery.core.QueryException;
import java.util.Collection;

package joquery;



/**
 * User: Adipa
 * Date: 10/14/12
 * Time: 11:19 AM
 */
public interface Filter<T> extends Query<T, Filter<T>>
{
    T first() throws QueryException;