You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tinkerpop.apache.org by ok...@apache.org on 2016/06/17 21:46:46 UTC

tinkerpop git commit: bindings can happen at spawns and sources in gremlin-python.

Repository: tinkerpop
Updated Branches:
  refs/heads/TINKERPOP-1278 d4dde2632 -> f9e4a820a


bindings can happen at spawns and sources in gremlin-python.


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/f9e4a820
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/f9e4a820
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/f9e4a820

Branch: refs/heads/TINKERPOP-1278
Commit: f9e4a820a1281c2300820f8f1713869cb7920fd5
Parents: d4dde26
Author: Marko A. Rodriguez <ok...@gmail.com>
Authored: Fri Jun 17 15:46:42 2016 -0600
Committer: Marko A. Rodriguez <ok...@gmail.com>
Committed: Fri Jun 17 15:46:42 2016 -0600

----------------------------------------------------------------------
 .../jython/gremlin_python/gremlin_python.py     | 60 ++++++++++++++++++++
 1 file changed, 60 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/f9e4a820/gremlin-variant/src/main/jython/gremlin_python/gremlin_python.py
----------------------------------------------------------------------
diff --git a/gremlin-variant/src/main/jython/gremlin_python/gremlin_python.py b/gremlin-variant/src/main/jython/gremlin_python/gremlin_python.py
index dbe0e2a..9b6427f 100644
--- a/gremlin-variant/src/main/jython/gremlin_python/gremlin_python.py
+++ b/gremlin-variant/src/main/jython/gremlin_python/gremlin_python.py
@@ -35,50 +35,110 @@ class PythonGraphTraversalSource(object):
   def E(self, *args):
     traversal = PythonGraphTraversal(self.translator, self.remote_connection)
     traversal.translator.addSpawnStep(traversal, "E", *args)
+    for arg in args:
+      if isinstance(arg, tuple) and 2 == len(arg) and isinstance(arg[0], str):
+        self.bindings[arg[0]] = arg[1]
+      elif isinstance(arg, RawExpression):
+        self.bindings.update(arg.bindings)
     return traversal
   def V(self, *args):
     traversal = PythonGraphTraversal(self.translator, self.remote_connection)
     traversal.translator.addSpawnStep(traversal, "V", *args)
+    for arg in args:
+      if isinstance(arg, tuple) and 2 == len(arg) and isinstance(arg[0], str):
+        self.bindings[arg[0]] = arg[1]
+      elif isinstance(arg, RawExpression):
+        self.bindings.update(arg.bindings)
     return traversal
   def addV(self, *args):
     traversal = PythonGraphTraversal(self.translator, self.remote_connection)
     traversal.translator.addSpawnStep(traversal, "addV", *args)
+    for arg in args:
+      if isinstance(arg, tuple) and 2 == len(arg) and isinstance(arg[0], str):
+        self.bindings[arg[0]] = arg[1]
+      elif isinstance(arg, RawExpression):
+        self.bindings.update(arg.bindings)
     return traversal
   def inject(self, *args):
     traversal = PythonGraphTraversal(self.translator, self.remote_connection)
     traversal.translator.addSpawnStep(traversal, "inject", *args)
+    for arg in args:
+      if isinstance(arg, tuple) and 2 == len(arg) and isinstance(arg[0], str):
+        self.bindings[arg[0]] = arg[1]
+      elif isinstance(arg, RawExpression):
+        self.bindings.update(arg.bindings)
     return traversal
   def withBulk(self, *args):
     source = PythonGraphTraversalSource(self.translator, self.remote_connection)
     source.translator.addSource(source, "withBulk", *args)
+    for arg in args:
+      if isinstance(arg, tuple) and 2 == len(arg) and isinstance(arg[0], str):
+        self.bindings[arg[0]] = arg[1]
+      elif isinstance(arg, RawExpression):
+        self.bindings.update(arg.bindings)
     return source
   def withComputer(self, *args):
     source = PythonGraphTraversalSource(self.translator, self.remote_connection)
     source.translator.addSource(source, "withComputer", *args)
+    for arg in args:
+      if isinstance(arg, tuple) and 2 == len(arg) and isinstance(arg[0], str):
+        self.bindings[arg[0]] = arg[1]
+      elif isinstance(arg, RawExpression):
+        self.bindings.update(arg.bindings)
     return source
   def withPath(self, *args):
     source = PythonGraphTraversalSource(self.translator, self.remote_connection)
     source.translator.addSource(source, "withPath", *args)
+    for arg in args:
+      if isinstance(arg, tuple) and 2 == len(arg) and isinstance(arg[0], str):
+        self.bindings[arg[0]] = arg[1]
+      elif isinstance(arg, RawExpression):
+        self.bindings.update(arg.bindings)
     return source
   def withSack(self, *args):
     source = PythonGraphTraversalSource(self.translator, self.remote_connection)
     source.translator.addSource(source, "withSack", *args)
+    for arg in args:
+      if isinstance(arg, tuple) and 2 == len(arg) and isinstance(arg[0], str):
+        self.bindings[arg[0]] = arg[1]
+      elif isinstance(arg, RawExpression):
+        self.bindings.update(arg.bindings)
     return source
   def withSideEffect(self, *args):
     source = PythonGraphTraversalSource(self.translator, self.remote_connection)
     source.translator.addSource(source, "withSideEffect", *args)
+    for arg in args:
+      if isinstance(arg, tuple) and 2 == len(arg) and isinstance(arg[0], str):
+        self.bindings[arg[0]] = arg[1]
+      elif isinstance(arg, RawExpression):
+        self.bindings.update(arg.bindings)
     return source
   def withStrategies(self, *args):
     source = PythonGraphTraversalSource(self.translator, self.remote_connection)
     source.translator.addSource(source, "withStrategies", *args)
+    for arg in args:
+      if isinstance(arg, tuple) and 2 == len(arg) and isinstance(arg[0], str):
+        self.bindings[arg[0]] = arg[1]
+      elif isinstance(arg, RawExpression):
+        self.bindings.update(arg.bindings)
     return source
   def withTranslator(self, *args):
     source = PythonGraphTraversalSource(self.translator, self.remote_connection)
     source.translator.addSource(source, "withTranslator", *args)
+    for arg in args:
+      if isinstance(arg, tuple) and 2 == len(arg) and isinstance(arg[0], str):
+        self.bindings[arg[0]] = arg[1]
+      elif isinstance(arg, RawExpression):
+        self.bindings.update(arg.bindings)
     return source
   def withoutStrategies(self, *args):
     source = PythonGraphTraversalSource(self.translator, self.remote_connection)
     source.translator.addSource(source, "withoutStrategies", *args)
+    for arg in args:
+      if isinstance(arg, tuple) and 2 == len(arg) and isinstance(arg[0], str):
+        self.bindings[arg[0]] = arg[1]
+      elif isinstance(arg, RawExpression):
+        self.bindings.update(arg.bindings)
     return source