Class GroovyTranslateVisitor
- java.lang.Object
-
- org.antlr.v4.runtime.tree.AbstractParseTreeVisitor<Void>
-
- org.apache.tinkerpop.gremlin.language.translator.TranslateVisitor
-
- org.apache.tinkerpop.gremlin.language.translator.GroovyTranslateVisitor
-
- All Implemented Interfaces:
org.antlr.v4.runtime.tree.ParseTreeVisitor<Void>
,GremlinVisitor<Void>
public class GroovyTranslateVisitor extends TranslateVisitor
Converts a Gremlin traversal string into a Groovy source code representation of that traversal with an aim at sacrificing some formatting for the ability to compile correctly. The translations may require use of TinkerPop's sugar syntax and therefore requires use of theGremlinLoader
in the gremlin-groovy module unless you are specifically certain that your translations will not result in the use of that syntax. If in doubt, prefer theJavaTranslateVisitor
instead.- Normalize numeric suffixes to lower case
- If floats are not suffixed they will translate as BigDecimal
- Makes anonymous traversals explicit with double underscore
- Makes enums explicit with their proper name
-
-
Field Summary
-
Fields inherited from class org.apache.tinkerpop.gremlin.language.translator.TranslateVisitor
graphTraversalSourceName, parameters, sb
-
-
Constructor Summary
Constructors Constructor Description GroovyTranslateVisitor()
GroovyTranslateVisitor(String graphTraversalSourceName)
-
Method Summary
-
Methods inherited from class org.apache.tinkerpop.gremlin.language.translator.TranslateVisitor
appendAnonymousSpawn, appendArgumentSeparator, appendExplicitNaming, appendStepClose, appendStepOpen, appendStepSeparator, getParameters, getTranslated, processGremlinSymbol, removeFirstAndLastCharacters, visitBooleanArgument, visitBooleanLiteral, visitChainedParentOfGraphTraversal, visitChainedTraversal, visitClassType, visitClassTypeExpr, visitClassTypeList, visitConfiguration, visitConnectedComponentConstants, visitConnectedComponentConstants_component, visitConnectedComponentConstants_edges, visitConnectedComponentConstants_propertyName, visitConnectedComponentStringConstant, visitDateArgument, visitDateLiteral, visitEmptyQuery, visitFloatArgument, visitGenericLiteral, visitGenericLiteralArgument, visitGenericLiteralCollection, visitGenericLiteralExpr, visitGenericLiteralList, visitGenericLiteralListArgument, visitGenericLiteralMap, visitGenericLiteralMapArgument, visitGenericLiteralMapNullableArgument, visitGenericLiteralRange, visitGenericLiteralVarargs, visitIntegerArgument, visitIoOptionsConstants_graphml, visitIoOptionsConstants_graphson, visitIoOptionsConstants_gryo, visitIoOptionsConstants_reader, visitIoOptionsConstants_writer, visitIoOptionsKeys, visitIoOptionsStringConstant, visitIoOptionsValues, visitKeyword, visitMapEntry, visitNanLiteral, visitNestedTraversal, visitNestedTraversalExpr, visitNestedTraversalList, visitNullableGenericLiteralMap, visitNumericLiteral, visitP, visitPageRankConstants, visitPageRankConstants_edges, visitPageRankConstants_propertyName, visitPageRankConstants_times, visitPageRankStringConstant, visitPeerPressureConstants, visitPeerPressureConstants_edges, visitPeerPressureConstants_propertyName, visitPeerPressureConstants_times, visitPeerPressureStringConstant, visitQuery, visitQueryList, visitRootTraversal, visitShortestPathConstants, visitShortestPathConstants_distance, visitShortestPathConstants_edges, visitShortestPathConstants_includeEdges, visitShortestPathConstants_maxDistance, visitShortestPathConstants_target, visitShortestPathStringConstant, visitStringArgument, visitStringLiteralExpr, visitStringLiteralList, visitStringLiteralVarargs, visitStringLiteralVarargsLiterals, visitStringNullableArgument, visitStringNullableLiteral, visitStructureVertexArgument, visitTerminal, visitTerminatedTraversal, visitTransactionPart, visitTraversalBarrier, visitTraversalBiFunction, visitTraversalCardinality, visitTraversalColumn, visitTraversalComparator, visitTraversalDirection, visitTraversalDT, visitTraversalFunction, visitTraversalMerge, visitTraversalMethod, visitTraversalMethod_addE_String, visitTraversalMethod_addE_Traversal, visitTraversalMethod_addV_Empty, visitTraversalMethod_addV_String, visitTraversalMethod_addV_Traversal, visitTraversalMethod_aggregate_Scope_String, visitTraversalMethod_aggregate_String, visitTraversalMethod_all_P, visitTraversalMethod_and, visitTraversalMethod_any_P, visitTraversalMethod_as, visitTraversalMethod_asDate, visitTraversalMethod_asString_Empty, visitTraversalMethod_asString_Scope, visitTraversalMethod_barrier_Consumer, visitTraversalMethod_barrier_Empty, visitTraversalMethod_barrier_int, visitTraversalMethod_both, visitTraversalMethod_bothE, visitTraversalMethod_bothV, visitTraversalMethod_branch, visitTraversalMethod_by_Comparator, visitTraversalMethod_by_Empty, visitTraversalMethod_by_Function, visitTraversalMethod_by_Function_Comparator, visitTraversalMethod_by_Order, visitTraversalMethod_by_String, visitTraversalMethod_by_String_Comparator, visitTraversalMethod_by_T, visitTraversalMethod_by_Traversal, visitTraversalMethod_by_Traversal_Comparator, visitTraversalMethod_call_string, visitTraversalMethod_call_string_map, visitTraversalMethod_call_string_map_traversal, visitTraversalMethod_call_string_traversal, visitTraversalMethod_cap, visitTraversalMethod_choose_Function, visitTraversalMethod_choose_Predicate_Traversal, visitTraversalMethod_choose_Predicate_Traversal_Traversal, visitTraversalMethod_choose_Traversal, visitTraversalMethod_choose_Traversal_Traversal, visitTraversalMethod_choose_Traversal_Traversal_Traversal, visitTraversalMethod_coalesce, visitTraversalMethod_coin, visitTraversalMethod_combine_Object, visitTraversalMethod_concat_String, visitTraversalMethod_concat_Traversal_Traversal, visitTraversalMethod_conjoin_String, visitTraversalMethod_connectedComponent, visitTraversalMethod_constant, visitTraversalMethod_count_Empty, visitTraversalMethod_count_Scope, visitTraversalMethod_cyclicPath, visitTraversalMethod_dateAdd, visitTraversalMethod_dateDiff_Date, visitTraversalMethod_dateDiff_Traversal, visitTraversalMethod_dedup_Scope_String, visitTraversalMethod_dedup_String, visitTraversalMethod_difference_Object, visitTraversalMethod_disjunct_Object, visitTraversalMethod_drop, visitTraversalMethod_E, visitTraversalMethod_element, visitTraversalMethod_elementMap, visitTraversalMethod_emit_Empty, visitTraversalMethod_emit_Predicate, visitTraversalMethod_emit_Traversal, visitTraversalMethod_fail_Empty, visitTraversalMethod_fail_String, visitTraversalMethod_filter_Predicate, visitTraversalMethod_filter_Traversal, visitTraversalMethod_flatMap, visitTraversalMethod_fold_Empty, visitTraversalMethod_fold_Object_BiFunction, visitTraversalMethod_format_String, visitTraversalMethod_from_String, visitTraversalMethod_from_Traversal, visitTraversalMethod_from_Vertex, visitTraversalMethod_group_Empty, visitTraversalMethod_group_String, visitTraversalMethod_groupCount_Empty, visitTraversalMethod_groupCount_String, visitTraversalMethod_has_String, visitTraversalMethod_has_String_Object, visitTraversalMethod_has_String_P, visitTraversalMethod_has_String_String_Object, visitTraversalMethod_has_String_String_P, visitTraversalMethod_has_String_Traversal, visitTraversalMethod_has_T_Object, visitTraversalMethod_has_T_P, visitTraversalMethod_has_T_Traversal, visitTraversalMethod_hasId_Object_Object, visitTraversalMethod_hasId_P, visitTraversalMethod_hasKey_P, visitTraversalMethod_hasKey_String_String, visitTraversalMethod_hasLabel_P, visitTraversalMethod_hasNot, visitTraversalMethod_hasValue_Object_Object, visitTraversalMethod_hasValue_P, visitTraversalMethod_id, visitTraversalMethod_identity, visitTraversalMethod_in, visitTraversalMethod_index, visitTraversalMethod_inE, visitTraversalMethod_intersect_Object, visitTraversalMethod_inV, visitTraversalMethod_is_Object, visitTraversalMethod_is_P, visitTraversalMethod_key, visitTraversalMethod_label, visitTraversalMethod_length_Empty, visitTraversalMethod_length_Scope, visitTraversalMethod_limit_long, visitTraversalMethod_limit_Scope_long, visitTraversalMethod_local, visitTraversalMethod_loops_Empty, visitTraversalMethod_loops_String, visitTraversalMethod_lTrim_Empty, visitTraversalMethod_lTrim_Scope, visitTraversalMethod_map, visitTraversalMethod_match, visitTraversalMethod_math, visitTraversalMethod_max_Empty, visitTraversalMethod_max_Scope, visitTraversalMethod_mean_Empty, visitTraversalMethod_mean_Scope, visitTraversalMethod_merge_Object, visitTraversalMethod_mergeE_empty, visitTraversalMethod_mergeE_Map, visitTraversalMethod_mergeE_Traversal, visitTraversalMethod_mergeV_empty, visitTraversalMethod_mergeV_Map, visitTraversalMethod_mergeV_Traversal, visitTraversalMethod_min_Empty, visitTraversalMethod_min_Scope, visitTraversalMethod_none_P, visitTraversalMethod_not, visitTraversalMethod_option_Merge_Map, visitTraversalMethod_option_Merge_Map_Cardinality, visitTraversalMethod_option_Merge_Traversal, visitTraversalMethod_option_Object_Traversal, visitTraversalMethod_option_Predicate_Traversal, visitTraversalMethod_option_Traversal, visitTraversalMethod_optional, visitTraversalMethod_or, visitTraversalMethod_order_Empty, visitTraversalMethod_order_Scope, visitTraversalMethod_otherV, visitTraversalMethod_out, visitTraversalMethod_outE, visitTraversalMethod_outV, visitTraversalMethod_pageRank_double, visitTraversalMethod_pageRank_Empty, visitTraversalMethod_path, visitTraversalMethod_peerPressure, visitTraversalMethod_product_Object, visitTraversalMethod_profile_Empty, visitTraversalMethod_profile_String, visitTraversalMethod_project, visitTraversalMethod_properties, visitTraversalMethod_property_Cardinality_Object, visitTraversalMethod_property_Cardinality_Object_Object_Object, visitTraversalMethod_property_Object, visitTraversalMethod_property_Object_Object_Object, visitTraversalMethod_propertyMap, visitTraversalMethod_range_long_long, visitTraversalMethod_range_Scope_long_long, visitTraversalMethod_read, visitTraversalMethod_repeat_String_Traversal, visitTraversalMethod_repeat_Traversal, visitTraversalMethod_replace_Scope_String_String, visitTraversalMethod_replace_String_String, visitTraversalMethod_reverse_Empty, visitTraversalMethod_rTrim_Empty, visitTraversalMethod_rTrim_Scope, visitTraversalMethod_sack_BiFunction, visitTraversalMethod_sack_Empty, visitTraversalMethod_sample_int, visitTraversalMethod_sample_Scope_int, visitTraversalMethod_select_Column, visitTraversalMethod_select_Pop_String, visitTraversalMethod_select_Pop_String_String_String, visitTraversalMethod_select_Pop_Traversal, visitTraversalMethod_select_String, visitTraversalMethod_select_String_String_String, visitTraversalMethod_select_Traversal, visitTraversalMethod_shortestPath, visitTraversalMethod_sideEffect, visitTraversalMethod_simplePath, visitTraversalMethod_skip_long, visitTraversalMethod_skip_Scope_long, visitTraversalMethod_split_Scope_String, visitTraversalMethod_split_String, visitTraversalMethod_store, visitTraversalMethod_subgraph, visitTraversalMethod_substring_int, visitTraversalMethod_substring_int_int, visitTraversalMethod_substring_Scope_int, visitTraversalMethod_substring_Scope_int_int, visitTraversalMethod_sum_Empty, visitTraversalMethod_sum_Scope, visitTraversalMethod_tail_Empty, visitTraversalMethod_tail_long, visitTraversalMethod_tail_Scope, visitTraversalMethod_tail_Scope_long, visitTraversalMethod_timeLimit, visitTraversalMethod_times, visitTraversalMethod_to_Direction_String, visitTraversalMethod_to_String, visitTraversalMethod_to_Traversal, visitTraversalMethod_to_Vertex, visitTraversalMethod_toE, visitTraversalMethod_toLower_Empty, visitTraversalMethod_toLower_Scope, visitTraversalMethod_toUpper_Empty, visitTraversalMethod_toUpper_Scope, visitTraversalMethod_toV, visitTraversalMethod_tree_Empty, visitTraversalMethod_tree_String, visitTraversalMethod_trim_Empty, visitTraversalMethod_trim_Scope, visitTraversalMethod_unfold, visitTraversalMethod_union, visitTraversalMethod_until_Predicate, visitTraversalMethod_until_Traversal, visitTraversalMethod_V, visitTraversalMethod_value, visitTraversalMethod_valueMap_boolean_String, visitTraversalMethod_valueMap_String, visitTraversalMethod_values, visitTraversalMethod_where_P, visitTraversalMethod_where_String_P, visitTraversalMethod_where_Traversal, visitTraversalMethod_with_String, visitTraversalMethod_with_String_Object, visitTraversalMethod_write, visitTraversalOperator, visitTraversalOrder, visitTraversalPick, visitTraversalPop, visitTraversalPredicate, visitTraversalPredicate_between, visitTraversalPredicate_containing, visitTraversalPredicate_endingWith, visitTraversalPredicate_eq, visitTraversalPredicate_gt, visitTraversalPredicate_gte, visitTraversalPredicate_inside, visitTraversalPredicate_lt, visitTraversalPredicate_lte, visitTraversalPredicate_neq, visitTraversalPredicate_not, visitTraversalPredicate_notContaining, visitTraversalPredicate_notEndingWith, visitTraversalPredicate_notRegex, visitTraversalPredicate_notStartingWith, visitTraversalPredicate_outside, visitTraversalPredicate_regex, visitTraversalPredicate_startingWith, visitTraversalPredicate_within, visitTraversalPredicate_without, visitTraversalSackMethod, visitTraversalScope, visitTraversalSelfMethod, visitTraversalSelfMethod_discard, visitTraversalSource, visitTraversalSourceSelfMethod, visitTraversalSourceSelfMethod_with, visitTraversalSourceSelfMethod_withBulk, visitTraversalSourceSelfMethod_withoutStrategies, visitTraversalSourceSelfMethod_withPath, visitTraversalSourceSelfMethod_withSack, visitTraversalSourceSelfMethod_withSideEffect, visitTraversalSourceSelfMethod_withStrategies, visitTraversalSourceSpawnMethod, visitTraversalSourceSpawnMethod_addE, visitTraversalSourceSpawnMethod_addV, visitTraversalSourceSpawnMethod_call_empty, visitTraversalSourceSpawnMethod_call_string, visitTraversalSourceSpawnMethod_call_string_map, visitTraversalSourceSpawnMethod_call_string_map_traversal, visitTraversalSourceSpawnMethod_call_string_traversal, visitTraversalSourceSpawnMethod_E, visitTraversalSourceSpawnMethod_io, visitTraversalSourceSpawnMethod_mergeE_Map, visitTraversalSourceSpawnMethod_mergeE_Traversal, visitTraversalSourceSpawnMethod_mergeV_Map, visitTraversalSourceSpawnMethod_mergeV_Traversal, visitTraversalSourceSpawnMethod_union, visitTraversalSourceSpawnMethod_V, visitTraversalStrategyExpr, visitTraversalStrategyList, visitTraversalTerminalMethod, visitTraversalTerminalMethod_explain, visitTraversalTerminalMethod_hasNext, visitTraversalTerminalMethod_iterate, visitTraversalTerminalMethod_next, visitTraversalTerminalMethod_toBulkSet, visitTraversalTerminalMethod_toList, visitTraversalTerminalMethod_toSet, visitTraversalTerminalMethod_tryNext, visitTraversalToken, visitVariable, visitWithOptionKeys, visitWithOptionsConstants_all, visitWithOptionsConstants_ids, visitWithOptionsConstants_indexer, visitWithOptionsConstants_keys, visitWithOptionsConstants_labels, visitWithOptionsConstants_list, visitWithOptionsConstants_map, visitWithOptionsConstants_none, visitWithOptionsConstants_tokens, visitWithOptionsConstants_values, visitWithOptionsStringConstant, visitWithOptionsValues
-
Methods inherited from class org.antlr.v4.runtime.tree.AbstractParseTreeVisitor
aggregateResult, defaultResult, shouldVisitNextChild, visit, visitChildren, visitErrorNode
-
-
-
-
Constructor Detail
-
GroovyTranslateVisitor
public GroovyTranslateVisitor()
-
GroovyTranslateVisitor
public GroovyTranslateVisitor(String graphTraversalSourceName)
-
-
Method Detail
-
visitStructureVertex
public Void visitStructureVertex(GremlinParser.StructureVertexContext ctx)
Description copied from interface:GremlinVisitor
Visit a parse tree produced byGremlinParser.structureVertex()
.- Specified by:
visitStructureVertex
in interfaceGremlinVisitor<Void>
- Overrides:
visitStructureVertex
in classTranslateVisitor
- Parameters:
ctx
- the parse tree- Returns:
- the visitor result
-
visitIntegerLiteral
public Void visitIntegerLiteral(GremlinParser.IntegerLiteralContext ctx)
Description copied from interface:GremlinVisitor
Visit a parse tree produced byGremlinParser.integerLiteral()
.- Specified by:
visitIntegerLiteral
in interfaceGremlinVisitor<Void>
- Overrides:
visitIntegerLiteral
in classTranslateVisitor
- Parameters:
ctx
- the parse tree- Returns:
- the visitor result
-
visitFloatLiteral
public Void visitFloatLiteral(GremlinParser.FloatLiteralContext ctx)
Description copied from interface:GremlinVisitor
Visit a parse tree produced byGremlinParser.floatLiteral()
.- Specified by:
visitFloatLiteral
in interfaceGremlinVisitor<Void>
- Overrides:
visitFloatLiteral
in classTranslateVisitor
- Parameters:
ctx
- the parse tree- Returns:
- the visitor result
-
visitInfLiteral
public Void visitInfLiteral(GremlinParser.InfLiteralContext ctx)
Description copied from interface:GremlinVisitor
Visit a parse tree produced byGremlinParser.infLiteral()
.- Specified by:
visitInfLiteral
in interfaceGremlinVisitor<Void>
- Overrides:
visitInfLiteral
in classTranslateVisitor
- Parameters:
ctx
- the parse tree- Returns:
- the visitor result
-
visitNullLiteral
public Void visitNullLiteral(GremlinParser.NullLiteralContext ctx)
Description copied from interface:GremlinVisitor
Visit a parse tree produced byGremlinParser.nullLiteral()
.- Specified by:
visitNullLiteral
in interfaceGremlinVisitor<Void>
- Overrides:
visitNullLiteral
in classTranslateVisitor
- Parameters:
ctx
- the parse tree- Returns:
- the visitor result
-
visitGenericLiteralSet
public Void visitGenericLiteralSet(GremlinParser.GenericLiteralSetContext ctx)
Description copied from interface:GremlinVisitor
Visit a parse tree produced byGremlinParser.genericLiteralSet()
.- Specified by:
visitGenericLiteralSet
in interfaceGremlinVisitor<Void>
- Overrides:
visitGenericLiteralSet
in classTranslateVisitor
- Parameters:
ctx
- the parse tree- Returns:
- the visitor result
-
visitStringLiteral
public Void visitStringLiteral(GremlinParser.StringLiteralContext ctx)
Description copied from interface:GremlinVisitor
Visit a parse tree produced byGremlinParser.stringLiteral()
.- Specified by:
visitStringLiteral
in interfaceGremlinVisitor<Void>
- Overrides:
visitStringLiteral
in classTranslateVisitor
- Parameters:
ctx
- the parse tree- Returns:
- the visitor result
-
visitTraversalStrategy
public Void visitTraversalStrategy(GremlinParser.TraversalStrategyContext ctx)
Description copied from interface:GremlinVisitor
Visit a parse tree produced byGremlinParser.traversalStrategy()
.- Specified by:
visitTraversalStrategy
in interfaceGremlinVisitor<Void>
- Overrides:
visitTraversalStrategy
in classTranslateVisitor
- Parameters:
ctx
- the parse tree- Returns:
- the visitor result
-
visitTraversalSourceSpawnMethod_inject
public Void visitTraversalSourceSpawnMethod_inject(GremlinParser.TraversalSourceSpawnMethod_injectContext ctx)
Description copied from interface:GremlinVisitor
Visit a parse tree produced byGremlinParser.traversalSourceSpawnMethod_inject()
.- Specified by:
visitTraversalSourceSpawnMethod_inject
in interfaceGremlinVisitor<Void>
- Overrides:
visitTraversalSourceSpawnMethod_inject
in classTranslateVisitor
- Parameters:
ctx
- the parse tree- Returns:
- the visitor result
-
visitTraversalMethod_inject
public Void visitTraversalMethod_inject(GremlinParser.TraversalMethod_injectContext ctx)
Description copied from interface:GremlinVisitor
Visit a parse tree produced byGremlinParser.traversalMethod_inject()
.- Specified by:
visitTraversalMethod_inject
in interfaceGremlinVisitor<Void>
- Overrides:
visitTraversalMethod_inject
in classTranslateVisitor
- Parameters:
ctx
- the parse tree- Returns:
- the visitor result
-
visitTraversalMethod_hasLabel_String_String
public Void visitTraversalMethod_hasLabel_String_String(GremlinParser.TraversalMethod_hasLabel_String_StringContext ctx)
Description copied from interface:GremlinVisitor
Visit a parse tree produced by thetraversalMethod_hasLabel_String_String
labeled alternative inGremlinParser.traversalMethod_hasLabel()
.- Specified by:
visitTraversalMethod_hasLabel_String_String
in interfaceGremlinVisitor<Void>
- Overrides:
visitTraversalMethod_hasLabel_String_String
in classTranslateVisitor
- Parameters:
ctx
- the parse tree- Returns:
- the visitor result
-
-