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/16 16:28:28 UTC

tinkerpop git commit: Found a simpler way to create Enums and thus, the GremlinPythonGenerator got simpler.

Repository: tinkerpop
Updated Branches:
  refs/heads/TINKERPOP-1278 146f47602 -> 749f874c8


Found a simpler way to create Enums and thus, the GremlinPythonGenerator got simpler.


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

Branch: refs/heads/TINKERPOP-1278
Commit: 749f874c8322a688cb1d40b30a7815f7917ac54d
Parents: 146f476
Author: Marko A. Rodriguez <ok...@gmail.com>
Authored: Thu Jun 16 10:28:25 2016 -0600
Committer: Marko A. Rodriguez <ok...@gmail.com>
Committed: Thu Jun 16 10:28:25 2016 -0600

----------------------------------------------------------------------
 .../python/GremlinPythonGenerator.groovy        |  6 ++---
 .../jython/gremlin_python/gremlin_python.py     | 27 +++++++-------------
 2 files changed, 12 insertions(+), 21 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/749f874c/gremlin-variant/src/main/groovy/org/apache/tinkerpop/gremlin/python/GremlinPythonGenerator.groovy
----------------------------------------------------------------------
diff --git a/gremlin-variant/src/main/groovy/org/apache/tinkerpop/gremlin/python/GremlinPythonGenerator.groovy b/gremlin-variant/src/main/groovy/org/apache/tinkerpop/gremlin/python/GremlinPythonGenerator.groovy
index 81cfe6e..9289d99 100644
--- a/gremlin-variant/src/main/groovy/org/apache/tinkerpop/gremlin/python/GremlinPythonGenerator.groovy
+++ b/gremlin-variant/src/main/groovy/org/apache/tinkerpop/gremlin/python/GremlinPythonGenerator.groovy
@@ -219,11 +219,11 @@ builtInRange = range
 // Enums //
 ///////////
         for (final Class<? extends Enum> enumClass : enumList) {
-            pythonClass.append("class ${enumClass.getSimpleName()}(Enum):\n  ");
+            pythonClass.append("${enumClass.getSimpleName()} = Enum('${enumClass.getSimpleName()}', '");
             enumClass.getEnumConstants().each { value ->
-                pythonClass.append(" ${methodMap[value.name()]},");
+                pythonClass.append("${methodMap[value.name()]} ");
             }
-            pythonClass.deleteCharAt(pythonClass.length() - 1).append(" = builtInRange(${enumClass.getEnumConstants().length})\n\n")
+            pythonClass.deleteCharAt(pythonClass.length() - 1).append("')\n\n")
             enumClass.getEnumConstants().each { value ->
                 pythonClass.append("statics['${methodMap[value.name()]}'] = ${value.getDeclaringClass().getSimpleName()}.${methodMap[value.name()]}\n");
             }

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/749f874c/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 0665462..23d53e6 100644
--- a/gremlin-variant/src/main/jython/gremlin_python/gremlin_python.py
+++ b/gremlin-variant/src/main/jython/gremlin_python/gremlin_python.py
@@ -1371,28 +1371,24 @@ def where(*args):
 statics['where'] = where
 
 
-class Cardinality(Enum):
-   single, list, set = builtInRange(3)
+Cardinality = Enum('Cardinality', 'single list set')
 
 statics['single'] = Cardinality.single
 statics['list'] = Cardinality.list
 statics['set'] = Cardinality.set
 
-class Column(Enum):
-   keys, values = builtInRange(2)
+Column = Enum('Column', 'keys values')
 
 statics['keys'] = Column.keys
 statics['values'] = Column.values
 
-class Direction(Enum):
-   OUT, IN, BOTH = builtInRange(3)
+Direction = Enum('Direction', 'OUT IN BOTH')
 
 statics['OUT'] = Direction.OUT
 statics['IN'] = Direction.IN
 statics['BOTH'] = Direction.BOTH
 
-class Operator(Enum):
-   sum, minus, mult, div, min, max, assign, _and, _or, addAll, sumLong = builtInRange(11)
+Operator = Enum('Operator', 'sum minus mult div min max assign _and _or addAll sumLong')
 
 statics['sum'] = Operator.sum
 statics['minus'] = Operator.minus
@@ -1406,8 +1402,7 @@ statics['_or'] = Operator._or
 statics['addAll'] = Operator.addAll
 statics['sumLong'] = Operator.sumLong
 
-class Order(Enum):
-   incr, decr, keyIncr, valueIncr, keyDecr, valueDecr, shuffle = builtInRange(7)
+Order = Enum('Order', 'incr decr keyIncr valueIncr keyDecr valueDecr shuffle')
 
 statics['incr'] = Order.incr
 statics['decr'] = Order.decr
@@ -1417,26 +1412,22 @@ statics['keyDecr'] = Order.keyDecr
 statics['valueDecr'] = Order.valueDecr
 statics['shuffle'] = Order.shuffle
 
-class Pop(Enum):
-   first, last, all = builtInRange(3)
+Pop = Enum('Pop', 'first last all')
 
 statics['first'] = Pop.first
 statics['last'] = Pop.last
 statics['all'] = Pop.all
 
-class Barrier(Enum):
-   normSack = builtInRange(1)
+Barrier = Enum('Barrier', 'normSack')
 
 statics['normSack'] = Barrier.normSack
 
-class Scope(Enum):
-   _global, local = builtInRange(2)
+Scope = Enum('Scope', '_global local')
 
 statics['_global'] = Scope._global
 statics['local'] = Scope.local
 
-class T(Enum):
-   label, id, key, value = builtInRange(4)
+T = Enum('T', 'label id key value')
 
 statics['label'] = T.label
 statics['id'] = T.id