PathEvaluator (Neo4j Community 2.1.0-M01 API)
Date: 2014-02-20

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 `BranchState`and 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

    Nested Classes
    Modifier and Type | Interface and Description
    --- | ---
    `static class` | `PathEvaluator.Adapter<STATE>` Adapter for `PathEvaluator`.

    - ### Nested classes/interfaces inherited from interface org.neo4j.graphdb.traversal.Evaluator

      `Evaluator.AsPathEvaluator<STATE>`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `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–2014 The Neo4j Graph Database Project. All rights reserved.