[ https://issues.apache.org/jira/browse/TINKERPOP-2978?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17768901#comment-17768901 ]
ASF GitHub Bot commented on TINKERPOP-2978: ------------------------------------------- Cole-Greer commented on code in PR #2228: URL: https://github.com/apache/tinkerpop/pull/2228#discussion_r1336356659 ########## docs/src/dev/provider/gremlin-semantics.asciidoc: ########## @@ -524,6 +524,58 @@ fully demonstrative of Gremlin step semantics. It is also hard to simply read th step is meant to behave. This section discusses the semantics for individual steps to help users and providers understand implementation expectations. +[[all-step]] +=== all() + +*Description:* Filters array data from the Traversal Stream if all of the array's items match the supplied predicate. + +*Syntax:* `all(Predicate)` + +[width="100%",options="header"] +|========================================================= +|Start Step |Mid Step |Modulated |Domain |Range +|N |Y |N |`List`/`array`/`Iterable`/`Iterator` |`List`/`array`/`Iterable`/`Iterator` +|========================================================= + +*Arguments:* + +* `Predicate` - The predicate to use to test each value in the array data. + +*Modulation:* + +None + +*Considerations:* + +Each value will be tested using the supplied predicate with any ERROR state being reduced to FALSE. Empty lists always +pass through and null/non-list traversers will be filtered out of the Traversal Stream. + +[[any-step]] +=== any() + +*Description:* Filters array data from the Traversal Stream if any of the array's items match the supplied predicate. + +*Syntax:* `any(Predicate)` + +[width="100%",options="header"] +|========================================================= +|Start Step |Mid Step |Modulated |Domain |Range +|N |Y |N |`List`/`array`/`Iterable`/`Iterator` |`List`/`array`/`Iterable`/`Iterator` Review Comment: Do these steps retain the initial `List`/`array`/`Iterable`/`Iterator` type or does everything get converted to `List`? > Add List Manipulation Steps to Gremlin > -------------------------------------- > > Key: TINKERPOP-2978 > URL: https://issues.apache.org/jira/browse/TINKERPOP-2978 > Project: TinkerPop > Issue Type: Improvement > Components: language > Reporter: Cole Greer > Priority: Major > > Today Gremlin requires that users fall back to closures to handle many common > list manipulation options that users want to do on data in the graph. This > is a problem for many users as many of the providers prevent the use of > closures due to the security risks so for these users there is no way to > manipulate lists directly. > A full list of proposed functions and semantics is detailed here: > https://github.com/apache/tinkerpop/blob/3.7.0/docs/src/dev/future/proposal-3-remove-closures.asciidoc -- This message was sent by Atlassian Jira (v8.20.10#820010)