## Uses of Interface
org.apache.tinkerpop.gremlin.process.traversal.TraversalStrategy

- Packages that use TraversalStrategy
  Package | Description
  --- | ---
  org.apache.tinkerpop.gremlin |
  org.apache.tinkerpop.gremlin.neo4j.process.traversal.strategy.optimization |
  org.apache.tinkerpop.gremlin.process.computer.traversal.strategy.decoration |
  org.apache.tinkerpop.gremlin.process.computer.traversal.strategy.finalization |
  org.apache.tinkerpop.gremlin.process.computer.traversal.strategy.optimization |
  org.apache.tinkerpop.gremlin.process.remote.traversal.strategy.decoration |
  org.apache.tinkerpop.gremlin.process.traversal |
  org.apache.tinkerpop.gremlin.process.traversal.dsl.graph |
  org.apache.tinkerpop.gremlin.process.traversal.engine |
  org.apache.tinkerpop.gremlin.process.traversal.strategy |
  org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration |
  org.apache.tinkerpop.gremlin.process.traversal.strategy.finalization |
  org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization |
  org.apache.tinkerpop.gremlin.process.traversal.strategy.verification |
  org.apache.tinkerpop.gremlin.process.traversal.util |
  org.apache.tinkerpop.gremlin.spark.process.computer.traversal.strategy.optimization |
  org.apache.tinkerpop.gremlin.structure.util |
  org.apache.tinkerpop.gremlin.tinkergraph.process.traversal.strategy.optimization |

- - ### Uses of TraversalStrategy in org.apache.tinkerpop.gremlin

    Methods in org.apache.tinkerpop.gremlin with parameters of type TraversalStrategy
    Modifier and Type | Method and Description
    --- | ---
    `GraphTraversalSource` | GraphManager.ManagedGraphProvider.`traversal(Graph graph, TraversalStrategy... strategies)`
    `default GraphTraversalSource` | GraphProvider.`traversal(Graph graph, TraversalStrategy... strategies)` Create a `GraphTraversalSource` from a `Graph` instance.

  - ### Uses of TraversalStrategy in org.apache.tinkerpop.gremlin.neo4j.process.traversal.strategy.optimization

    Classes in org.apache.tinkerpop.gremlin.neo4j.process.traversal.strategy.optimization that implement TraversalStrategy
    Modifier and Type | Class and Description
    --- | ---
    `class` | `Neo4jGraphStepStrategy`

  - ### Uses of TraversalStrategy in org.apache.tinkerpop.gremlin.process.computer.traversal.strategy.decoration

    Classes in org.apache.tinkerpop.gremlin.process.computer.traversal.strategy.decoration that implement TraversalStrategy
    Modifier and Type | Class and Description
    --- | ---
    `class` | `VertexProgramStrategy`

  - ### Uses of TraversalStrategy in org.apache.tinkerpop.gremlin.process.computer.traversal.strategy.finalization

    Classes in org.apache.tinkerpop.gremlin.process.computer.traversal.strategy.finalization that implement TraversalStrategy
    Modifier and Type | Class and Description
    --- | ---
    `class` | `ComputerFinalizationStrategy`

  - ### Uses of TraversalStrategy in org.apache.tinkerpop.gremlin.process.computer.traversal.strategy.optimization

    Classes in org.apache.tinkerpop.gremlin.process.computer.traversal.strategy.optimization that implement TraversalStrategy
    Modifier and Type | Class and Description
    --- | ---
    `class` | `GraphFilterStrategy`
    `class` | `MessagePassingReductionStrategy`

  - ### Uses of TraversalStrategy in org.apache.tinkerpop.gremlin.process.remote.traversal.strategy.decoration

    Classes in org.apache.tinkerpop.gremlin.process.remote.traversal.strategy.decoration that implement TraversalStrategy
    Modifier and Type | Class and Description
    --- | ---
    `class` | `RemoteStrategy` Reconstructs a `Traversal` by appending a `RemoteStep` to its end.

  - ### Uses of TraversalStrategy in org.apache.tinkerpop.gremlin.process.traversal

    Classes in org.apache.tinkerpop.gremlin.process.traversal with type parameters of type TraversalStrategy
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `TraversalStrategy<S extends TraversalStrategy>` A `TraversalStrategy` defines a particular atomic operation for mutating a `Traversal` prior to its evaluation.

    Subinterfaces of TraversalStrategy in org.apache.tinkerpop.gremlin.process.traversal
    Modifier and Type | Interface and Description
    --- | ---
    `static interface` | `TraversalStrategy.DecorationStrategy` Implemented by strategies that adds "application logic" to the traversal (e.g.
    `static interface` | `TraversalStrategy.FinalizationStrategy` Implemented by strategies that do final behaviors that require a fully compiled traversal to work (e.g.
    `static interface` | `TraversalStrategy.OptimizationStrategy` Implemented by strategies that rewrite the traversal to be more efficient, but with the same semantics (e.g.
    `static interface` | `TraversalStrategy.ProviderOptimizationStrategy` Implemented by strategies that rewrite the traversal to be more efficient, but with the same semantics.
    `static interface` | `TraversalStrategy.VerificationStrategy` Implemented by strategies where there is no more behavioral tweaking of the traversal required.

    Fields in org.apache.tinkerpop.gremlin.process.traversal with type parameters of type TraversalStrategy
    Modifier and Type | Field and Description
    --- | ---
    `static List<Class<? extends TraversalStrategy>>` | TraversalStrategies.`STRATEGY_CATEGORIES`

    Methods in org.apache.tinkerpop.gremlin.process.traversal with type parameters of type TraversalStrategy
    Modifier and Type | Method and Description
    --- | ---
    `default <T extends TraversalStrategy> Optional<T>` | TraversalStrategies.`getStrategy(Class<T> traversalStrategyClass)` Return the `TraversalStrategy` instance associated with the provided class.

    Methods in org.apache.tinkerpop.gremlin.process.traversal that return types with arguments of type TraversalStrategy
    Modifier and Type | Method and Description
    --- | ---
    `default List<Class<? extends TraversalStrategy>>` | TraversalEngine.Builder.`getWithoutStrategies()` Deprecated. A list of `TraversalStrategy` classes that should not be applied to the ultimate `Traversal`.
    `default List<TraversalStrategy>` | TraversalEngine.Builder.`getWithStrategies()` Deprecated. A list of `TraversalStrategy` instances that should be applied to the ultimate `Traversal`.
    `static Set<TraversalStrategy<?>>` | TraversalStrategies.`sortStrategies(Set<TraversalStrategy<?>> strategies)` Sorts the list of provided strategies such that the `applyPost()` and `applyPrior()` dependencies are respected.
    `List<TraversalStrategy<?>>` | TraversalStrategies.`toList()` Return all the `TraversalStrategy` singleton instances associated with this `TraversalStrategies`.

    Methods in org.apache.tinkerpop.gremlin.process.traversal with parameters of type TraversalStrategy
    Modifier and Type | Method and Description
    --- | ---
    `TraversalStrategies` | TraversalStrategies.`addStrategies(TraversalStrategy<?>... strategies)` Add all the provided `TraversalStrategy` instances to the current collection.
    `default TraversalSource` | TraversalSource.`withStrategies(TraversalStrategy... traversalStrategies)` Add an arbitrary collection of `TraversalStrategy` instances to the traversal source.

    Method parameters in org.apache.tinkerpop.gremlin.process.traversal with type arguments of type TraversalStrategy
    Modifier and Type | Method and Description
    --- | ---
    `default int` | TraversalStrategy.`compareTo(Class<? extends TraversalStrategy> otherTraversalCategory)`
    `default int` | TraversalStrategy.DecorationStrategy.`compareTo(Class<? extends TraversalStrategy> otherTraversalCategory)`
    `default int` | TraversalStrategy.OptimizationStrategy.`compareTo(Class<? extends TraversalStrategy> otherTraversalCategory)`
    `default int` | TraversalStrategy.ProviderOptimizationStrategy.`compareTo(Class<? extends TraversalStrategy> otherTraversalCategory)`
    `default int` | TraversalStrategy.FinalizationStrategy.`compareTo(Class<? extends TraversalStrategy> otherTraversalCategory)`
    `default int` | TraversalStrategy.VerificationStrategy.`compareTo(Class<? extends TraversalStrategy> otherTraversalCategory)`
    `static Set<TraversalStrategy<?>>` | TraversalStrategies.`sortStrategies(Set<TraversalStrategy<?>> strategies)` Sorts the list of provided strategies such that the `applyPost()` and `applyPrior()` dependencies are respected.
    `static void` | TraversalStrategies.`visit(Map<Class<? extends TraversalStrategy>,Set<Class<? extends TraversalStrategy>>> dependencyMap, List<Class<? extends TraversalStrategy>> sortedStrategyClasses, Set<Class<? extends TraversalStrategy>> seenStrategyClases, List<Class<? extends TraversalStrategy>> unprocessedStrategyClasses, Class<? extends TraversalStrategy> strategyClass)`
    `static void` | TraversalStrategies.`visit(Map<Class<? extends TraversalStrategy>,Set<Class<? extends TraversalStrategy>>> dependencyMap, List<Class<? extends TraversalStrategy>> sortedStrategyClasses, Set<Class<? extends TraversalStrategy>> seenStrategyClases, List<Class<? extends TraversalStrategy>> unprocessedStrategyClasses, Class<? extends TraversalStrategy> strategyClass)`
    `static void` | TraversalStrategies.`visit(Map<Class<? extends TraversalStrategy>,Set<Class<? extends TraversalStrategy>>> dependencyMap, List<Class<? extends TraversalStrategy>> sortedStrategyClasses, Set<Class<? extends TraversalStrategy>> seenStrategyClases, List<Class<? extends TraversalStrategy>> unprocessedStrategyClasses, Class<? extends TraversalStrategy> strategyClass)`
    `static void` | TraversalStrategies.`visit(Map<Class<? extends TraversalStrategy>,Set<Class<? extends TraversalStrategy>>> dependencyMap, List<Class<? extends TraversalStrategy>> sortedStrategyClasses, Set<Class<? extends TraversalStrategy>> seenStrategyClases, List<Class<? extends TraversalStrategy>> unprocessedStrategyClasses, Class<? extends TraversalStrategy> strategyClass)`
    `static void` | TraversalStrategies.`visit(Map<Class<? extends TraversalStrategy>,Set<Class<? extends TraversalStrategy>>> dependencyMap, List<Class<? extends TraversalStrategy>> sortedStrategyClasses, Set<Class<? extends TraversalStrategy>> seenStrategyClases, List<Class<? extends TraversalStrategy>> unprocessedStrategyClasses, Class<? extends TraversalStrategy> strategyClass)`
    `static void` | TraversalStrategies.`visit(Map<Class<? extends TraversalStrategy>,Set<Class<? extends TraversalStrategy>>> dependencyMap, List<Class<? extends TraversalStrategy>> sortedStrategyClasses, Set<Class<? extends TraversalStrategy>> seenStrategyClases, List<Class<? extends TraversalStrategy>> unprocessedStrategyClasses, Class<? extends TraversalStrategy> strategyClass)`

  - ### Uses of TraversalStrategy in org.apache.tinkerpop.gremlin.process.traversal.dsl.graph

    Methods in org.apache.tinkerpop.gremlin.process.traversal.dsl.graph with parameters of type TraversalStrategy
    Modifier and Type | Method and Description
    --- | ---
    `GraphTraversalSource` | GraphTraversalSource.`withStrategies(TraversalStrategy... traversalStrategies)` Add an arbitrary collection of `TraversalStrategy` instances to the traversal source.

  - ### Uses of TraversalStrategy in org.apache.tinkerpop.gremlin.process.traversal.engine

    Methods in org.apache.tinkerpop.gremlin.process.traversal.engine that return types with arguments of type TraversalStrategy
    Modifier and Type | Method and Description
    --- | ---
    `List<TraversalStrategy>` | ComputerTraversalEngine.Builder.`getWithStrategies()` Deprecated. As of release 3.2.0. Please use `Graph.traversal(Class)`.

  - ### Uses of TraversalStrategy in org.apache.tinkerpop.gremlin.process.traversal.strategy

    Classes in org.apache.tinkerpop.gremlin.process.traversal.strategy with type parameters of type TraversalStrategy
    Modifier and Type | Class and Description
    --- | ---
    `class` | `AbstractTraversalStrategy<S extends TraversalStrategy>`
    `class` | `TraversalStrategyProxy<T extends TraversalStrategy>`

    Classes in org.apache.tinkerpop.gremlin.process.traversal.strategy that implement TraversalStrategy
    Modifier and Type | Class and Description
    --- | ---
    `class` | `AbstractTraversalStrategy<S extends TraversalStrategy>`

  - ### Uses of TraversalStrategy in org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration

    Classes in org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration that implement TraversalStrategy
    Modifier and Type | Class and Description
    --- | ---
    `class` | `ConnectiveStrategy` ConnectiveStrategy rewrites the binary conjunction form of `a.and().b` into a `AndStep` of `and(a,b)` (likewise for `OrStep`).
    `class` | `ElementIdStrategy` Provides a degree of control over element identifier assignment as some graphs don't provide that feature.
    `class` | `EventStrategy` A strategy that raises events when `Mutating` steps are encountered and successfully executed.
    `class` | `HaltedTraverserStrategy`
    `class` | `PartitionStrategy` `PartitionStrategy` partitions the vertices, edges and vertex properties of a graph into String named partitions (i.e.
    `class` | `RequirementsStrategy`
    `class` | `SackStrategy`
    `class` | `SideEffectStrategy`
    `class` | `SubgraphStrategy` This `TraversalStrategy` provides a way to limit the view of a `Traversal`.
    `class` | `TranslationStrategy`

  - ### Uses of TraversalStrategy in org.apache.tinkerpop.gremlin.process.traversal.strategy.finalization

    Classes in org.apache.tinkerpop.gremlin.process.traversal.strategy.finalization that implement TraversalStrategy
    Modifier and Type | Class and Description
    --- | ---
    `class` | `MatchAlgorithmStrategy`
    `class` | `ProfileStrategy`

  - ### Uses of TraversalStrategy in org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization

    Classes in org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization that implement TraversalStrategy
    Modifier and Type | Class and Description
    --- | ---
    `class` | `AdjacentToIncidentStrategy` This strategy looks for vertex- and value-emitting steps followed by a `CountGlobalStep` and replaces the pattern with an edge- or property-emitting step followed by a `CountGlobalStep`.
    `class` | `CountStrategy` This strategy optimizes any occurrence of `CountGlobalStep` followed by an `IsStep`.
    `class` | `EarlyLimitStrategy` This strategy looks for `RangeGlobalStep`'s that can be moved further left in the traversal and thus be applied applied earlier.
    `class` | `FilterRankingStrategy` FilterRankingStrategy reorders filter- and order-steps according to their rank.
    `class` | `IdentityRemovalStrategy` `IdentityRemovalStrategy` looks for `IdentityStep` instances and removes them.
    `class` | `IncidentToAdjacentStrategy` This strategy looks for `.outE().inV()`, `.inE().outV()` and `.bothE().otherV()` and replaces these step sequences with `.out()`, `.in()` or `.both()` respectively.
    `class` | `InlineFilterStrategy` InlineFilterStrategy analyzes filter-steps with child traversals that themselves are pure filters.
    `class` | `LazyBarrierStrategy`
    `class` | `MatchPredicateStrategy` MatchWhereStrategy will fold any post-`where()` step that maintains a traversal constraint into `match()`.
    `class` | `OrderLimitStrategy`
    `class` | `PathProcessorStrategy` PathProcessStrategy is an OLAP strategy that does its best to turn non-local children in `where()` and `select()` into local children by inlining components of the non-local child.
    `class` | `PathRetractionStrategy`
    `class` | `RepeatUnrollStrategy`

  - ### Uses of TraversalStrategy in org.apache.tinkerpop.gremlin.process.traversal.strategy.verification

    Classes in org.apache.tinkerpop.gremlin.process.traversal.strategy.verification that implement TraversalStrategy
    Modifier and Type | Class and Description
    --- | ---
    `class` | `AbstractWarningVerificationStrategy` Base `TraversalStrategy` class that is configurable to throw warnings or exceptions.
    `class` | `ComputerVerificationStrategy`
    `class` | `EdgeLabelVerificationStrategy` `EdgeLabelVerificationStrategy` does not allow edge traversal steps to have no label specified.
    `class` | `LambdaRestrictionStrategy` `LambdaRestrictionStrategy` does not allow lambdas to be used in a `Traversal`.
    `class` | `ReadOnlyStrategy` Detects steps marked with `Mutating` and throws an `IllegalStateException` if one is found.
    `class` | `ReservedKeysVerificationStrategy` This verification strategy detects property keys that should not be used by the traversal.
    `class` | `StandardVerificationStrategy`

  - ### Uses of TraversalStrategy in org.apache.tinkerpop.gremlin.process.traversal.util

    Fields in org.apache.tinkerpop.gremlin.process.traversal.util with type parameters of type TraversalStrategy
    Modifier and Type | Field and Description
    --- | ---
    `protected Set<TraversalStrategy<?>>` | DefaultTraversalStrategies.`traversalStrategies`

    Methods in org.apache.tinkerpop.gremlin.process.traversal.util with type parameters of type TraversalStrategy
    Modifier and Type | Method and Description
    --- | ---
    `<T extends TraversalStrategy> Optional<T>` | DefaultTraversalStrategies.`getStrategy(Class<T> traversalStrategyClass)`

    Methods in org.apache.tinkerpop.gremlin.process.traversal.util that return types with arguments of type TraversalStrategy
    Modifier and Type | Method and Description
    --- | ---
    `List<TraversalStrategy<?>>` | EmptyTraversalStrategies.`toList()`
    `List<TraversalStrategy<?>>` | DefaultTraversalStrategies.`toList()`

    Methods in org.apache.tinkerpop.gremlin.process.traversal.util with parameters of type TraversalStrategy
    Modifier and Type | Method and Description
    --- | ---
    `TraversalStrategies` | EmptyTraversalStrategies.`addStrategies(TraversalStrategy<?>... strategies)`
    `TraversalStrategies` | DefaultTraversalStrategies.`addStrategies(TraversalStrategy<?>... strategies)`

    Method parameters in org.apache.tinkerpop.gremlin.process.traversal.util with type arguments of type TraversalStrategy
    Modifier and Type | Method and Description
    --- | ---
    `static void` | TraversalHelper.`applySingleLevelStrategies(Traversal.Admin<?,?> parentTraversal, Traversal.Admin<?,?> childTraversal, Class<? extends TraversalStrategy> stopAfterStrategy)`

  - ### Uses of TraversalStrategy in org.apache.tinkerpop.gremlin.spark.process.computer.traversal.strategy.optimization

    Classes in org.apache.tinkerpop.gremlin.spark.process.computer.traversal.strategy.optimization that implement TraversalStrategy
    Modifier and Type | Class and Description
    --- | ---
    `class` | `SparkInterceptorStrategy`
    `class` | `SparkSingleIterationStrategy`

  - ### Uses of TraversalStrategy in org.apache.tinkerpop.gremlin.structure.util

    Methods in org.apache.tinkerpop.gremlin.structure.util with parameters of type TraversalStrategy
    Modifier and Type | Method and Description
    --- | ---
    `static String` | StringFactory.`traversalStrategyString(TraversalStrategy traversalStrategy)`

  - ### Uses of TraversalStrategy in org.apache.tinkerpop.gremlin.tinkergraph.process.traversal.strategy.optimization

    Classes in org.apache.tinkerpop.gremlin.tinkergraph.process.traversal.strategy.optimization that implement TraversalStrategy
    Modifier and Type | Class and Description
    --- | ---
    `class` | `TinkerGraphCountStrategy` This strategy will do a direct `TinkerHelper.getVertices(org.apache.tinkerpop.gremlin.tinkergraph.structure.TinkerVertex, org.apache.tinkerpop.gremlin.structure.Direction, java.lang.String...)` size call if the traversal is a count of the vertices and edges of the graph or a one-to-one map chain thereof.
    `class` | `TinkerGraphStepStrategy`

Copyright © 2013–2020 Apache Software Foundation. All rights reserved.