org.neo4j.graphdb.traversal
Interface PathEvaluator<STATE>

All Superinterfaces:
Evaluator
All Known Implementing Classes:
Evaluator.AsPathEvaluator, PathEvaluator.Adapter

public interface PathEvaluator<STATE>
extends Evaluator

A PathEvaluator controls what's to be returned from a traversal and also how pruning is done. It looks at a Path and BranchStateand decides whether or not it should be included in the traversal result. It also decides whether the traverser should continue down that path or if it should be pruned so that the traverser won't continue down that path.

Author:
Mattias Persson
See Also:
Evaluation, Evaluators, TraversalDescription.evaluator(PathEvaluator)

Nested Class Summary
static class PathEvaluator.Adapter<STATE>
          Adapter for PathEvaluator.
 
Nested classes/interfaces inherited from interface org.neo4j.graphdb.traversal.Evaluator
Evaluator.AsPathEvaluator<STATE>
 
Method Summary
 Evaluation evaluate(Path path, BranchState<STATE> state)
          Evaluates a Path and returns an Evaluation containing information about whether or not to include it in the traversal result, i.e return it from the Traverser.
 
Methods inherited from interface org.neo4j.graphdb.traversal.Evaluator
evaluate
 

Method Detail

evaluate

Evaluation evaluate(Path path,
                    BranchState<STATE> state)
Evaluates a Path and returns an Evaluation containing information about whether or not to include it in the traversal result, i.e return it from the Traverser. And also whether or not to continue traversing down that path or if it instead should be pruned so that the traverser won't continue down that branch represented by path.

Parameters:
path - the Path to evaluate.
state - the state of this branch in the current traversal.
Returns:
an Evaluation containing information about whether or not to return it from the Traverser and whether or not to continue down that path.


Copyright © 2002-2013 The Neo4j Graph Database Project. All Rights Reserved.