GitHub user okram opened a pull request:

    https://github.com/apache/tinkerpop/pull/748

    TINKERPOP-1834: Consider iterate() as a first class step

    https://issues.apache.org/jira/browse/TINKERPOP-1834
    
    When a user triggers a "terminal method" (e.g. `toList()`, `toSet()`, 
`iterate()`), that method is now appended to the traversal's `Bytecode`. This 
allows providers to know what the user's intention is for the results of the 
traversal. This can allow them to make internal optimizations about how to 
execute the traversal. The drawback of this is that `Translators` need to know 
about which steps are "terminal" and to avoid applying them during translation. 
To make this easy, `Translator.TERMINAL_STEPS` is a `public static final` field 
to allow easy introspection.
    
    VOTE +1.

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/apache/tinkerpop TINKERPOP-1834

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/tinkerpop/pull/748.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #748
    
----
commit 3adfe7ec66d8cf24f3e8090ffe8dd557600b5b6c
Author: Marko A. Rodriguez <[email protected]>
Date:   2017-11-15T16:11:26Z

    Added terminal method to the Traversal bytecode so providers know what the 
user used to trigger the evaluation.

----


---

Reply via email to