/** * <p> * Classes for handling search queries by using the concept of layers of filters - {@link er.neo4jadaptor.query.Filter} * may filter out some record if it doesn't match search criteria, but may not. Results are passed to another filter * which might be more strict than the previous one and so on until we get {@link er.neo4jadaptor.query.Results} exaclty * matching search criteria. Layers are collected in {@link er.neo4jadaptor.query.LayeringFilter} class. * </p> * * <p> * One filter that returns exact results is {@link er.neo4jadaptor.query.neo4j_eval.EvaluatingFilter}, but it's the slowest * possible one so it should be used as the last resort, probably after initial filtering using faster methods. * </p> * * <p> * For almost all cases nodes/relationships are evaluated lazily as the client code requests the next record. * </p> * */ package er.neo4jadaptor.query;