Prefer the instantiated version of GenericLiteralVisitor
Tried to retain the instance() method in as many places as possible but it seems like a new instance is simply just required for this to work right in places related to Traversal building CTR
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/language/grammar/TraversalMethodVisitor.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/language/grammar/TraversalMethodVisitor.java
index 111732c..72511bd 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/language/grammar/TraversalMethodVisitor.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/language/grammar/TraversalMethodVisitor.java
@@ -441,7 +441,7 @@
@Override
public GraphTraversal visitTraversalMethod_constant(final GremlinParser.TraversalMethod_constantContext ctx) {
return graphTraversal
- .constant(GenericLiteralVisitor.instance().visitGenericLiteral(ctx.genericLiteral()));
+ .constant(new GenericLiteralVisitor(antlr).visitGenericLiteral(ctx.genericLiteral()));
}
/**
@@ -571,7 +571,7 @@
@Override
public GraphTraversal visitTraversalMethod_fold_Object_BiFunction(final GremlinParser.TraversalMethod_fold_Object_BiFunctionContext ctx) {
return graphTraversal.fold(
- GenericLiteralVisitor.instance().visitGenericLiteral(ctx.genericLiteral()),
+ new GenericLiteralVisitor(antlr).visitGenericLiteral(ctx.genericLiteral()),
(BiFunction) TraversalEnumParser.parseTraversalEnumFromContext(Operator.class, ctx.getChild(4)));
}
@@ -628,7 +628,7 @@
*/
@Override
public GraphTraversal visitTraversalMethod_hasId_Object_Object(final GremlinParser.TraversalMethod_hasId_Object_ObjectContext ctx) {
- return graphTraversal.hasId(GenericLiteralVisitor.instance().visitGenericLiteral(ctx.genericLiteral()),
+ return graphTraversal.hasId(new GenericLiteralVisitor(antlr).visitGenericLiteral(ctx.genericLiteral()),
GenericLiteralVisitor.getGenericLiteralList(ctx.genericLiteralList()));
}
@@ -695,7 +695,7 @@
*/
@Override
public GraphTraversal visitTraversalMethod_hasValue_Object_Object(final GremlinParser.TraversalMethod_hasValue_Object_ObjectContext ctx) {
- return graphTraversal.hasValue(GenericLiteralVisitor.instance().visitGenericLiteral(ctx.genericLiteral()),
+ return graphTraversal.hasValue(new GenericLiteralVisitor(antlr).visitGenericLiteral(ctx.genericLiteral()),
GenericLiteralVisitor.getGenericLiteralList(ctx.genericLiteralList()));
}
@@ -740,7 +740,7 @@
public GraphTraversal visitTraversalMethod_has_String_String_Object(final GremlinParser.TraversalMethod_has_String_String_ObjectContext ctx) {
return graphTraversal.has(GenericLiteralVisitor.getStringLiteral(ctx.stringBasedLiteral(0)),
GenericLiteralVisitor.getStringLiteral(ctx.stringBasedLiteral(1)),
- GenericLiteralVisitor.instance().visitGenericLiteral(ctx.genericLiteral()));
+ new GenericLiteralVisitor(antlr).visitGenericLiteral(ctx.genericLiteral()));
}
/**
@@ -847,7 +847,7 @@
*/
@Override
public GraphTraversal visitTraversalMethod_is_Object(final GremlinParser.TraversalMethod_is_ObjectContext ctx) {
- return graphTraversal.is(GenericLiteralVisitor.instance().visitGenericLiteral(ctx.genericLiteral()));
+ return graphTraversal.is(new GenericLiteralVisitor(antlr).visitGenericLiteral(ctx.genericLiteral()));
}
/**
@@ -1219,8 +1219,8 @@
@Override
public GraphTraversal visitTraversalMethod_property_Cardinality_Object_Object_Object(final GremlinParser.TraversalMethod_property_Cardinality_Object_Object_ObjectContext ctx) {
return graphTraversal.property(TraversalEnumParser.parseTraversalEnumFromContext(VertexProperty.Cardinality.class, ctx.getChild(2)),
- GenericLiteralVisitor.instance().visitGenericLiteral(ctx.genericLiteral(0)),
- GenericLiteralVisitor.instance().visitGenericLiteral(ctx.genericLiteral(1)),
+ new GenericLiteralVisitor(antlr).visitGenericLiteral(ctx.genericLiteral(0)),
+ new GenericLiteralVisitor(antlr).visitGenericLiteral(ctx.genericLiteral(1)),
GenericLiteralVisitor.getGenericLiteralList(ctx.genericLiteralList()));
}
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/language/grammar/TraversalPredicateVisitor.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/language/grammar/TraversalPredicateVisitor.java
index e454bd5..b80679b 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/language/grammar/TraversalPredicateVisitor.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/language/grammar/TraversalPredicateVisitor.java
@@ -99,42 +99,48 @@
/**
* {@inheritDoc}
*/
- @Override public P visitTraversalPredicate_eq(final GremlinParser.TraversalPredicate_eqContext ctx) {
+ @Override
+ public P visitTraversalPredicate_eq(final GremlinParser.TraversalPredicate_eqContext ctx) {
return P.eq(getSingleGenericLiteralArgument(ctx));
}
/**
* {@inheritDoc}
*/
- @Override public P visitTraversalPredicate_neq(final GremlinParser.TraversalPredicate_neqContext ctx) {
+ @Override
+ public P visitTraversalPredicate_neq(final GremlinParser.TraversalPredicate_neqContext ctx) {
return P.neq(getSingleGenericLiteralArgument(ctx));
}
/**
* {@inheritDoc}
*/
- @Override public P visitTraversalPredicate_lt(final GremlinParser.TraversalPredicate_ltContext ctx) {
+ @Override
+ public P visitTraversalPredicate_lt(final GremlinParser.TraversalPredicate_ltContext ctx) {
return P.lt(getSingleGenericLiteralArgument(ctx));
}
/**
* {@inheritDoc}
*/
- @Override public P visitTraversalPredicate_lte(final GremlinParser.TraversalPredicate_lteContext ctx) {
+ @Override
+ public P visitTraversalPredicate_lte(final GremlinParser.TraversalPredicate_lteContext ctx) {
return P.lte(getSingleGenericLiteralArgument(ctx));
}
/**
* {@inheritDoc}
*/
- @Override public P visitTraversalPredicate_gt(final GremlinParser.TraversalPredicate_gtContext ctx) {
+ @Override
+ public P visitTraversalPredicate_gt(final GremlinParser.TraversalPredicate_gtContext ctx) {
return P.gt(getSingleGenericLiteralArgument(ctx));
}
/**
* {@inheritDoc}
*/
- @Override public P visitTraversalPredicate_gte(final GremlinParser.TraversalPredicate_gteContext ctx) {
+ @Override
+ public P visitTraversalPredicate_gte(final GremlinParser.TraversalPredicate_gteContext ctx) {
return P.gte(getSingleGenericLiteralArgument(ctx));
}
@@ -157,7 +163,8 @@
/**
* {@inheritDoc}
*/
- @Override public P visitTraversalPredicate_inside(final GremlinParser.TraversalPredicate_insideContext ctx) {
+ @Override
+ public P visitTraversalPredicate_inside(final GremlinParser.TraversalPredicate_insideContext ctx) {
final Object[] arguments = getDoubleGenericLiteralArgument(ctx);
return P.inside(arguments[0], arguments[1]);
}
@@ -165,7 +172,8 @@
/**
* {@inheritDoc}
*/
- @Override public P visitTraversalPredicate_outside(final GremlinParser.TraversalPredicate_outsideContext ctx) {
+ @Override
+ public P visitTraversalPredicate_outside(final GremlinParser.TraversalPredicate_outsideContext ctx) {
final Object[] arguments = getDoubleGenericLiteralArgument(ctx);
return P.outside(arguments[0], arguments[1]);
}
@@ -173,7 +181,8 @@
/**
* {@inheritDoc}
*/
- @Override public P visitTraversalPredicate_between(final GremlinParser.TraversalPredicate_betweenContext ctx) {
+ @Override
+ public P visitTraversalPredicate_between(final GremlinParser.TraversalPredicate_betweenContext ctx) {
final Object[] arguments = getDoubleGenericLiteralArgument(ctx);
return P.between(arguments[0], arguments[1]);
}
@@ -181,7 +190,8 @@
/**
* {@inheritDoc}
*/
- @Override public P visitTraversalPredicate_within(final GremlinParser.TraversalPredicate_withinContext ctx) {
+ @Override
+ public P visitTraversalPredicate_within(final GremlinParser.TraversalPredicate_withinContext ctx) {
final int childIndexOfParameterValues = 2;
// called with no args which is valid for java/groovy
@@ -205,7 +215,8 @@
/**
* {@inheritDoc}
*/
- @Override public P visitTraversalPredicate_without(final GremlinParser.TraversalPredicate_withoutContext ctx) {
+ @Override
+ public P visitTraversalPredicate_without(final GremlinParser.TraversalPredicate_withoutContext ctx) {
final int childIndexOfParameterValues = 2;
// called with no args which is valid for java/groovy
@@ -229,7 +240,8 @@
/**
* {@inheritDoc}
*/
- @Override public P visitTraversalPredicate_not(final GremlinParser.TraversalPredicate_notContext ctx) {
+ @Override
+ public P visitTraversalPredicate_not(final GremlinParser.TraversalPredicate_notContext ctx) {
final int childIndexOfParameterPredicate = 2;
return P.not(visitTraversalPredicate(castChildToTraversalPredicate(ctx, childIndexOfParameterPredicate)));
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/language/grammar/TraversalSourceSelfMethodVisitor.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/language/grammar/TraversalSourceSelfMethodVisitor.java
index 6e765bb..77eca7a 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/language/grammar/TraversalSourceSelfMethodVisitor.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/language/grammar/TraversalSourceSelfMethodVisitor.java
@@ -56,7 +56,7 @@
{
final int childIndexOfParameterUseBulk = 2;
- final Boolean useBulk = (Boolean)(GenericLiteralVisitor.instance().visitBooleanLiteral(
+ final Boolean useBulk = (Boolean)(new GenericLiteralVisitor(antlr).visitBooleanLiteral(
(GremlinParser.BooleanLiteralContext)(ctx.getChild(childIndexOfParameterUseBulk))));
return source.withBulk(useBulk);
@@ -80,12 +80,12 @@
final int childIndexOfParameterInitialValue = 2;
if (ctx.getChildCount() == 4) {
- return source.withSack(GenericLiteralVisitor.instance().visitGenericLiteral(
+ return source.withSack(new GenericLiteralVisitor(antlr).visitGenericLiteral(
ParseTreeContextCastHelper.castChildToGenericLiteral(ctx, childIndexOfParameterInitialValue)));
} else {
final int childIndexOfParameterMergeOperator = 4;
- return source.withSack(GenericLiteralVisitor.instance().visitGenericLiteral(
+ return source.withSack(new GenericLiteralVisitor(antlr).visitGenericLiteral(
ParseTreeContextCastHelper.castChildToGenericLiteral(ctx, childIndexOfParameterInitialValue)),
TraversalEnumParser.parseTraversalEnumFromContext(Operator.class, ctx.getChild(childIndexOfParameterMergeOperator)));
}
@@ -100,9 +100,9 @@
final int childIndexOfParameterKey = 2;
final int childIndexOfParameterInitialValue = 4;
- final String argument1 = (String)(GenericLiteralVisitor.instance().visitStringBasedLiteral(
+ final String argument1 = (String)(new GenericLiteralVisitor(antlr).visitStringBasedLiteral(
(GremlinParser.StringBasedLiteralContext)(ctx.getChild(childIndexOfParameterKey))));
- final Object argument2 = GenericLiteralVisitor.instance().visitGenericLiteral(
+ final Object argument2 = new GenericLiteralVisitor(antlr).visitGenericLiteral(
(GremlinParser.GenericLiteralContext)(ctx.getChild(childIndexOfParameterInitialValue)));
return source.withSideEffect(argument1, argument2);
@@ -136,15 +136,15 @@
final int childIndexOfParameterKey = 2;
if (ctx.getChildCount() == 4) {
- final String argument1 = (String)(GenericLiteralVisitor.instance().visitStringBasedLiteral(
+ final String argument1 = (String)(new GenericLiteralVisitor(antlr).visitStringBasedLiteral(
(GremlinParser.StringBasedLiteralContext)(ctx.getChild(childIndexOfParameterKey))));
return source.with(argument1);
} else {
final int childIndexOfParameterInitialValue = 4;
- final String argument1 = (String)(GenericLiteralVisitor.instance().visitStringBasedLiteral(
+ final String argument1 = (String)(new GenericLiteralVisitor(antlr).visitStringBasedLiteral(
(GremlinParser.StringBasedLiteralContext)(ctx.getChild(childIndexOfParameterKey))));
- final Object argument2 = GenericLiteralVisitor.instance().visitGenericLiteral(
+ final Object argument2 = new GenericLiteralVisitor(antlr).visitGenericLiteral(
(GremlinParser.GenericLiteralContext)(ctx.getChild(childIndexOfParameterInitialValue)));
return source.with(argument1, argument2);
}