You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tinkerpop.apache.org by rd...@apache.org on 2018/08/17 19:48:07 UTC
[02/16] tinkerpop git commit: Add check for Column in `by(Function)`
Add check for Column in `by(Function)`
Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/a0a243b2
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/a0a243b2
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/a0a243b2
Branch: refs/heads/TINKERPOP-2023
Commit: a0a243b256dbfdf66bb5ce24958fc91c7e6eed03
Parents: 1b99323
Author: yatam <yu...@asg.com>
Authored: Mon Aug 6 15:57:06 2018 +0300
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Mon Aug 13 10:35:09 2018 -0400
----------------------------------------------------------------------
.../tinkerpop/gremlin/process/traversal/step/ByModulating.java | 2 ++
.../tinkerpop/gremlin/process/traversal/step/map/GroupStep.java | 2 ++
2 files changed, 4 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/a0a243b2/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/ByModulating.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/ByModulating.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/ByModulating.java
index bea1b56..01841fa 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/ByModulating.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/ByModulating.java
@@ -57,6 +57,8 @@ public interface ByModulating {
public default void modulateBy(final Function function) throws UnsupportedOperationException {
if (function instanceof T)
this.modulateBy((T) function);
+ else if (function instanceof Column)
+ this.modulateBy(new ColumnTraversal((Column) function));
else
this.modulateBy(__.map(new FunctionTraverser<>(function)).asAdmin());
}
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/a0a243b2/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/GroupStep.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/GroupStep.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/GroupStep.java
index 07ca4ae..127d562 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/GroupStep.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/GroupStep.java
@@ -23,6 +23,7 @@ import org.apache.tinkerpop.gremlin.process.traversal.Operator;
import org.apache.tinkerpop.gremlin.process.traversal.Traversal;
import org.apache.tinkerpop.gremlin.process.traversal.Traverser;
import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__;
+import org.apache.tinkerpop.gremlin.process.traversal.lambda.ColumnTraversal;
import org.apache.tinkerpop.gremlin.process.traversal.lambda.ElementValueTraversal;
import org.apache.tinkerpop.gremlin.process.traversal.lambda.FunctionTraverser;
import org.apache.tinkerpop.gremlin.process.traversal.lambda.IdentityTraversal;
@@ -176,6 +177,7 @@ public final class GroupStep<S, K, V> extends ReducingBarrierStep<S, Map<K, V>>
if (valueTraversal instanceof ElementValueTraversal ||
valueTraversal instanceof TokenTraversal ||
valueTraversal instanceof IdentityTraversal ||
+ valueTraversal instanceof ColumnTraversal ||
valueTraversal.getStartStep() instanceof LambdaMapStep && ((LambdaMapStep) valueTraversal.getStartStep()).getMapFunction() instanceof FunctionTraverser) {
return (Traversal.Admin<S, E>) __.map(valueTraversal).fold();
} else