This is an automated email from the ASF dual-hosted git repository.

spmallette pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git

commit c39e4cebb3aa187f194fa41bb6832f24feb68be5
Author: Stephen Mallette <stepm...@amazon.com>
AuthorDate: Wed Jun 25 14:26:45 2025 -0400

    Added javadoc for TraverserRequirement
---
 .../traversal/traverser/TraverserRequirement.java  | 40 ++++++++++++++++++++++
 1 file changed, 40 insertions(+)

diff --git 
a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/traverser/TraverserRequirement.java
 
b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/traverser/TraverserRequirement.java
index ce7de2deae..791f3fe211 100644
--- 
a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/traverser/TraverserRequirement.java
+++ 
b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/traverser/TraverserRequirement.java
@@ -31,14 +31,54 @@ import 
org.apache.tinkerpop.gremlin.process.traversal.Traverser;
  */
 public enum TraverserRequirement {
 
+    /**
+     * Indicates that the {@link Traverser} maintains a bulk count, which 
represents the multiplicity of
+     * traversers being processed. This allows optimization by grouping 
multiple traversers with the same
+     * state and treating them as a single entity to reduce computational 
overhead.
+     */
     BULK,
+    /**
+     * Represents a {@link TraverserRequirement} indicating that the traverser 
must track labeled paths.
+     * A labeled path is a collection of steps where specific steps have 
associated labels, enabling
+     * retrieval of intermediate or final results based on these labels during 
a traversal.This requirement ensures
+     * that the traverser has the capability to maintain and access  this 
labeled path information as it progresses
+     * through the traversal.
+     */
     LABELED_PATH,
+    /**
+     * Indicates that a {@link Traverser} supports handling nested loops 
within a traversal. This requirement is
+     * relevant for traversals where steps can be executed within the context 
of multiple, potentially recursive
+     * loop iterations, enabling complex traversal structures and control flow.
+     */
     NESTED_LOOP,
+    /**
+     * Denotes that a traverser is required to carry an arbitrary object as 
its state.
+     */
     OBJECT,
+    /**
+     * Represents a traverser requirement where each traverser instance is 
guaranteed to have a bulk of one. This
+     * ensures that the traverser is processed individually and not in 
aggregated bulk.
+     */
     ONE_BULK,
+    /**
+     * Represents the requirement for a traverser to maintain a path of the 
elements it has visited. This ensures that
+     * the traverser can track its journey through the traversal graph to 
support path-based computations.
+     */
     PATH,
+    /**
+     * Indicates that a traverser carries a "sack", which is a mutable 
structure used to hold aggregated or
+     * intermediate results during the traversal process. This requirement 
allows steps to both read from and write to
+     * the sack, enabling computations that span across multiple steps in a 
traversal.
+     */
     SACK,
+    /**
+     * Indicates that a traverser is expected to interact with and leverage 
side-effects during the traversal process.
+     * Side-effects are data that are collected, shared, or mutated as part of 
the traversal.
+     */
     SIDE_EFFECTS,
+    /**
+     * Indicates that the traverser is required to support single loop 
iteration during the traversal.
+     */
     SINGLE_LOOP
 
 }

Reply via email to