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

- Packages that use TraversalStrategy
  Package | Description
  --- | ---
  org.apache.tinkerpop.gremlin |
  org.apache.tinkerpop.gremlin.groovy.jsr223.dsl.credential |
  org.apache.tinkerpop.gremlin.language.grammar |
  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.computer.traversal.strategy.verification |
  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.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.structure.io.binary.types |
  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
    --- | ---
    `default GraphTraversalSource` | GraphProvider.`traversal(Graph graph, TraversalStrategy... strategies)` Create a `GraphTraversalSource` from a `Graph` instance.
    `GraphTraversalSource` | GraphManager.ManagedGraphProvider.`traversal(Graph graph, TraversalStrategy... strategies)`

  - ### Uses of TraversalStrategy in org.apache.tinkerpop.gremlin.groovy.jsr223.dsl.credential

    Methods in org.apache.tinkerpop.gremlin.groovy.jsr223.dsl.credential with parameters of type TraversalStrategy
    Modifier and Type | Method and Description
    --- | ---
    `CredentialTraversalSource` | CredentialTraversalSource.`withStrategies(TraversalStrategy... traversalStrategies)`

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

    Fields in org.apache.tinkerpop.gremlin.language.grammar with type parameters of type TraversalStrategy
    Modifier and Type | Field and Description
    --- | ---
    `protected GremlinBaseVisitor<TraversalStrategy>` | GenericLiteralVisitor.`traversalStrategyVisitor`

    Methods in org.apache.tinkerpop.gremlin.language.grammar that return TraversalStrategy
    Modifier and Type | Method and Description
    --- | ---
    `static TraversalStrategy[]` | GenericLiteralVisitor.`getTraversalStrategyList(GremlinParser.TraversalStrategyListContext traversalStrategyListContext, GremlinBaseVisitor<TraversalStrategy> traversalStrategyVisitor)` Parse a TraversalStrategy literal list context and return a string array
    `TraversalStrategy` | TraversalStrategyVisitor.`visitTraversalStrategy(GremlinParser.TraversalStrategyContext ctx)`

    Method parameters in org.apache.tinkerpop.gremlin.language.grammar with type arguments of type TraversalStrategy
    Modifier and Type | Method and Description
    --- | ---
    `static TraversalStrategy[]` | GenericLiteralVisitor.`getTraversalStrategyList(GremlinParser.TraversalStrategyListContext traversalStrategyListContext, GremlinBaseVisitor<TraversalStrategy> traversalStrategyVisitor)` Parse a TraversalStrategy literal list context and return a string array

  - ### 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.computer.traversal.strategy.verification

    Classes in org.apache.tinkerpop.gremlin.process.computer.traversal.strategy.verification that implement TraversalStrategy
    Modifier and Type | Class and Description
    --- | ---
    `class` | `VertexProgramRestrictionStrategy` Detects the presence of a `VertexProgramStrategy` and throws an `IllegalStateException` if it is found.

  - ### 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
    --- | ---
    `Iterator<TraversalStrategy<?>>` | TraversalStrategies.`iterator()` Return an `Iterator` of the `TraversalStrategy` instances.
    `static Set<TraversalStrategy<?>>` | TraversalStrategies.`sortStrategies(Set<TraversalStrategy<?>> strategies)` Sorts the list of provided strategies such that the `applyPost()` and `applyPrior()` dependencies are respected.
    `default List<TraversalStrategy<?>>` | TraversalStrategies.`toList()` Return an immutable list of the `TraversalStrategy` instances.

    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.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>` This class is for use with `Bytecode` and for serialization purposes.

    Classes in org.apache.tinkerpop.gremlin.process.traversal.strategy that implement TraversalStrategy
    Modifier and Type | Class and Description
    --- | ---
    `class` | `AbstractTraversalStrategy<S extends TraversalStrategy>`
    `class` | `TraversalStrategyProxy<T extends TraversalStrategy>` This class is for use with `Bytecode` and for serialization purposes.

  - ### 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` | `OptionsStrategy` This strategy will not alter the traversal.
    `class` | `PartitionStrategy` `PartitionStrategy` partitions the vertices, edges and vertex properties of a graph into String named partitions (i.e.
    `class` | `RequirementsStrategy`
    `class` | `SackStrategy` The `SackStrategy` is used internal to the `withSack()` steps of `TraversalSource` and is not typically constructed directly.
    `class` | `SeedStrategy` A strategy that resets the specified `seed` value for `Seedable` steps, which in turn will produce deterministic results from those steps.
    `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`
    `class` | `ReferenceElementStrategy` A strategy that detaches traversers with graph elements as references (i.e.

  - ### 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` | `ByModulatorOptimizationStrategy` This strategy looks for standard traversals in by-modulators and replaces them with more optimized traversals (e.g.
    `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 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` This strategy analyzes filter-steps with child traversals that themselves are pure filters.
    `class` | `LazyBarrierStrategy` `LazyBarrierStrategy` is an OLTP-only strategy that automatically inserts a `NoOpBarrierStep` after every `FlatMapStep` if neither path-tracking nor partial path-tracking is required, and the next step is not the traversal's last step or a `Barrier`.
    `class` | `MatchPredicateStrategy` `MatchWhereStrategy` will fold any post-`where()` step that maintains a traversal constraint into `match()`.
    `class` | `OrderLimitStrategy` `OrderLimitStrategy` is an OLAP strategy that folds a `RangeGlobalStep` into a preceding `OrderGlobalStep`.
    `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` | `ProductiveByStrategy` Takes an argument of `by()` and wraps it `CoalesceStep` so that the result is either the initial `Traversal` argument or `null`.
    `class` | `RepeatUnrollStrategy` `RepeatUnrollStrategy` is an OLTP-only strategy that unrolls any `RepeatStep` if it uses a constant number of loops (`times(x)`) and doesn't emit intermittent elements.

  - ### 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 List<org.javatuples.Pair<TraversalStrategy,Traversal.Admin<?,?>>>` | TraversalExplanation.`strategyTraversals`
    `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
    --- | ---
    `static <A extends TraversalStrategy> Iterator<A>` | BytecodeHelper.`findStrategies(Bytecode bytecode, Class<A> clazz)` Parses `Bytecode` to find `TraversalStrategy` objects added in the source instructions.
    `<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<org.javatuples.Pair<TraversalStrategy,Traversal.Admin<?,?>>>` | TraversalExplanation.`getStrategyTraversals()` Get the list of `TraversalStrategy` applications.
    `List<org.javatuples.Pair<TraversalStrategy,Traversal.Admin<?,?>>>` | ImmutableExplanation.`getStrategyTraversals()`
    `Iterator<TraversalStrategy<?>>` | EmptyTraversalStrategies.`iterator()`
    `Iterator<TraversalStrategy<?>>` | DefaultTraversalStrategies.`iterator()`
    `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)` Deprecated. As of release 3.5.2, not replaced as strategies are not applied in this fashion after 3.5.0

  - ### Uses of TraversalStrategy in org.apache.tinkerpop.gremlin.structure.io.binary.types

    Methods in org.apache.tinkerpop.gremlin.structure.io.binary.types that return TraversalStrategy
    Modifier and Type | Method and Description
    --- | ---
    `protected TraversalStrategy` | TraversalStrategySerializer.`readValue(Buffer buffer, GraphBinaryReader context)`

    Methods in org.apache.tinkerpop.gremlin.structure.io.binary.types with parameters of type TraversalStrategy
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | TraversalStrategySerializer.`writeValue(TraversalStrategy value, Buffer buffer, GraphBinaryWriter context)`

  - ### 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–2022 Apache Software Foundation. All rights reserved.