Class GremlinAntlrToJava
- java.lang.Object
-
- org.antlr.v4.runtime.tree.AbstractParseTreeVisitor<T>
-
- org.apache.tinkerpop.gremlin.language.grammar.DefaultGremlinBaseVisitor<Object>
-
- org.apache.tinkerpop.gremlin.language.grammar.GremlinAntlrToJava
-
- All Implemented Interfaces:
org.antlr.v4.runtime.tree.ParseTreeVisitor<Object>,GremlinVisitor<Object>
- Direct Known Subclasses:
NoOpTerminalVisitor
public class GremlinAntlrToJava extends DefaultGremlinBaseVisitor<Object>
This is the entry point for converting the Gremlin Antlr grammar into Java. It is bound to aGraphinstance as that instance may spawn specificTraversalorTraversalSourcetypes. A new instance should be created for each parse execution.
-
-
Constructor Summary
Constructors Modifier Constructor Description GremlinAntlrToJava()Constructs a new instance and is bound to anEmptyGraph.protectedGremlinAntlrToJava(String traversalSourceName, Graph graph, Supplier<GraphTraversal<?,?>> createAnonymous)protectedGremlinAntlrToJava(String traversalSourceName, Graph graph, Supplier<GraphTraversal<?,?>> createAnonymous, GraphTraversalSource g, VariableResolver variableResolver)GremlinAntlrToJava(GraphTraversalSource g)Constructs a new instance that is bound to the specifiedGraphTraversalSourceand thus spawns theTraversalfrom this "g" rather than from a fresh one constructed from theGraphinstance.protectedGremlinAntlrToJava(GraphTraversalSource g, Supplier<GraphTraversal<?,?>> createAnonymous)Constructs a new instance that is bound to the specifiedGraphTraversalSourceand thus spawns theTraversalfrom this "g" rather than from a fresh one constructed from theGraphinstance.GremlinAntlrToJava(GraphTraversalSource g, VariableResolver variableResolver)Constructs a new instance that is bound to the specifiedGraphTraversalSourceand thus spawns theTraversalfrom this "g" rather than from a fresh one constructed from theGraphinstance.GremlinAntlrToJava(Graph graph)Constructs a new instance that is bound to the specifiedGraphinstance.protectedGremlinAntlrToJava(Graph graph, Supplier<GraphTraversal<?,?>> createAnonymous)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected ObjectaggregateResult(Object result, Object nextResult)Override the aggregate result behavior.ObjectvisitQuery(GremlinParser.QueryContext ctx)Visit a parse tree produced byGremlinParser.query().ObjectvisitQueryList(GremlinParser.QueryListContext ctx)Visit a parse tree produced byGremlinParser.queryList().-
Methods inherited from class org.apache.tinkerpop.gremlin.language.grammar.DefaultGremlinBaseVisitor
notImplemented, visitBooleanArgument, visitBooleanLiteral, visitChainedParentOfGraphTraversal, visitChainedTraversal, visitConnectedComponentConstants, visitConnectedComponentConstants_component, visitConnectedComponentConstants_edges, visitConnectedComponentConstants_propertyName, visitConnectedComponentStringConstant, visitDateLiteral, visitEmptyQuery, visitFloatArgument, visitFloatLiteral, visitGenericLiteral, visitGenericLiteralArgument, visitGenericLiteralCollection, visitGenericLiteralExpr, visitGenericLiteralList, visitGenericLiteralListArgument, visitGenericLiteralMap, visitGenericLiteralMapArgument, visitGenericLiteralMapNullableArgument, visitGenericLiteralRange, visitGenericLiteralVarargs, visitInfLiteral, visitIntegerArgument, visitIntegerLiteral, visitIoOptionsConstants_graphml, visitIoOptionsConstants_graphson, visitIoOptionsConstants_gryo, visitIoOptionsConstants_reader, visitIoOptionsConstants_writer, visitIoOptionsKeys, visitIoOptionsStringConstant, visitIoOptionsValues, visitMapEntry, visitNanLiteral, visitNestedTraversal, visitNestedTraversalExpr, visitNestedTraversalList, visitNullLiteral, visitNumericLiteral, visitPageRankConstants, visitPageRankConstants_edges, visitPageRankConstants_propertyName, visitPageRankConstants_times, visitPageRankStringConstant, visitPeerPressureConstants, visitPeerPressureConstants_edges, visitPeerPressureConstants_propertyName, visitPeerPressureConstants_times, visitPeerPressureStringConstant, visitRootTraversal, visitShortestPathConstants, visitShortestPathConstants_distance, visitShortestPathConstants_edges, visitShortestPathConstants_includeEdges, visitShortestPathConstants_maxDistance, visitShortestPathConstants_target, visitShortestPathStringConstant, visitStringArgument, visitStringLiteral, visitStringLiteralExpr, visitStringLiteralList, visitStringLiteralVarargs, visitStringNullableArgument, visitStringNullableLiteral, visitStructureVertex, visitStructureVertexArgument, visitTerminatedTraversal, visitTransactionPart, visitTraversalBiFunction, visitTraversalBiFunctionArgument, visitTraversalCardinality, visitTraversalCardinalityArgument, visitTraversalColumn, visitTraversalColumnArgument, visitTraversalComparator, visitTraversalComparatorArgument, visitTraversalDirection, visitTraversalDirectionArgument, visitTraversalFunction, visitTraversalFunctionArgument, visitTraversalMerge, visitTraversalMergeArgument, visitTraversalMethod, visitTraversalMethod_addE_String, visitTraversalMethod_addE_Traversal, visitTraversalMethod_addV_Empty, visitTraversalMethod_addV_String, visitTraversalMethod_addV_Traversal, visitTraversalMethod_aggregate_Scope_String, visitTraversalMethod_aggregate_String, visitTraversalMethod_and, visitTraversalMethod_as, 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_concat_String, visitTraversalMethod_concat_Traversal, visitTraversalMethod_connectedComponent, visitTraversalMethod_constant, visitTraversalMethod_count_Empty, visitTraversalMethod_count_Scope, visitTraversalMethod_cyclicPath, visitTraversalMethod_dedup_Scope_String, visitTraversalMethod_dedup_String, 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_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_hasLabel_String_String, visitTraversalMethod_hasNot, visitTraversalMethod_hasValue_Object_Object, visitTraversalMethod_hasValue_P, visitTraversalMethod_id, visitTraversalMethod_identity, visitTraversalMethod_in, visitTraversalMethod_index, visitTraversalMethod_inE, visitTraversalMethod_inject, visitTraversalMethod_inV, visitTraversalMethod_is_Object, visitTraversalMethod_is_P, visitTraversalMethod_key, visitTraversalMethod_label, visitTraversalMethod_limit_long, visitTraversalMethod_limit_Scope_long, visitTraversalMethod_local, visitTraversalMethod_loops_Empty, visitTraversalMethod_loops_String, visitTraversalMethod_map, visitTraversalMethod_match, visitTraversalMethod_math, visitTraversalMethod_max_Empty, visitTraversalMethod_max_Scope, visitTraversalMethod_mean_Empty, visitTraversalMethod_mean_Scope, 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_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_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_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_store, visitTraversalMethod_subgraph, 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_toV, visitTraversalMethod_tree_Empty, visitTraversalMethod_tree_String, 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, visitTraversalOrderArgument, visitTraversalPick, visitTraversalPop, visitTraversalPopArgument, 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, visitTraversalSackMethodArgument, visitTraversalScope, visitTraversalScopeArgument, visitTraversalSelfMethod, visitTraversalSelfMethod_none, visitTraversalSource, visitTraversalSourceSelfMethod, visitTraversalSourceSelfMethod_with, visitTraversalSourceSelfMethod_withBulk, 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_inject, visitTraversalSourceSpawnMethod_io, visitTraversalSourceSpawnMethod_mergeE_Map, visitTraversalSourceSpawnMethod_mergeE_Traversal, visitTraversalSourceSpawnMethod_mergeV_Map, visitTraversalSourceSpawnMethod_mergeV_Traversal, visitTraversalSourceSpawnMethod_union, visitTraversalSourceSpawnMethod_V, visitTraversalStrategy, visitTraversalStrategyArgs_EdgeLabelVerificationStrategy, visitTraversalStrategyArgs_PartitionStrategy, visitTraversalStrategyArgs_ProductiveByStrategy, visitTraversalStrategyArgs_ReservedKeysVerificationStrategy, visitTraversalStrategyArgs_SubgraphStrategy, visitTraversalStrategyExpr, visitTraversalStrategyList, visitTraversalTerminalMethod, visitTraversalTerminalMethod_explain, visitTraversalTerminalMethod_hasNext, visitTraversalTerminalMethod_iterate, visitTraversalTerminalMethod_next, visitTraversalTerminalMethod_toBulkSet, visitTraversalTerminalMethod_toList, visitTraversalTerminalMethod_toSet, visitTraversalTerminalMethod_tryNext, visitTraversalToken, visitTraversalTokenArgument, 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
defaultResult, shouldVisitNextChild, visit, visitChildren, visitErrorNode, visitTerminal
-
-
-
-
Constructor Detail
-
GremlinAntlrToJava
public GremlinAntlrToJava()
Constructs a new instance and is bound to anEmptyGraph. This form of construction is helpful for generatingBytecodeor for various forms of testing.Traversalinstances constructed from this form will not be capable of iterating. Assumes that "g" is the name of theGraphTraversalSource.
-
GremlinAntlrToJava
public GremlinAntlrToJava(Graph graph)
Constructs a new instance that is bound to the specifiedGraphinstance. Assumes that "g" is the name of theGraphTraversalSource.
-
GremlinAntlrToJava
public GremlinAntlrToJava(GraphTraversalSource g)
Constructs a new instance that is bound to the specifiedGraphTraversalSourceand thus spawns theTraversalfrom this "g" rather than from a fresh one constructed from theGraphinstance.
-
GremlinAntlrToJava
public GremlinAntlrToJava(GraphTraversalSource g, VariableResolver variableResolver)
Constructs a new instance that is bound to the specifiedGraphTraversalSourceand thus spawns theTraversalfrom this "g" rather than from a fresh one constructed from theGraphinstance. Allows for specification of aVariableResolverto allow parameters to be resolved.
-
GremlinAntlrToJava
protected GremlinAntlrToJava(Graph graph, Supplier<GraphTraversal<?,?>> createAnonymous)
Constructs a new instance that is bound to the specifiedGraphinstance with an override to using__for constructing anonymousTraversalinstances. Assumes that "g" is the name of theGraphTraversalSource.
-
GremlinAntlrToJava
protected GremlinAntlrToJava(GraphTraversalSource g, Supplier<GraphTraversal<?,?>> createAnonymous)
Constructs a new instance that is bound to the specifiedGraphTraversalSourceand thus spawns theTraversalfrom this "g" rather than from a fresh one constructed from theGraphinstance.
-
GremlinAntlrToJava
protected GremlinAntlrToJava(String traversalSourceName, Graph graph, Supplier<GraphTraversal<?,?>> createAnonymous)
Constructs a new instance that is bound to the specifiedGraphinstance with an override to using__for constructing anonymousTraversalinstances.- Parameters:
traversalSourceName- The name of the traversal source which will be "g" if not specified.
-
GremlinAntlrToJava
protected GremlinAntlrToJava(String traversalSourceName, Graph graph, Supplier<GraphTraversal<?,?>> createAnonymous, GraphTraversalSource g, VariableResolver variableResolver)
Constructs a new instance that is bound to the specifiedGraphinstance with an override to using__for constructing anonymousTraversalinstances. If theGraphTraversalSourceis provided then theTraversalwill spawn from it as opposed to a fresh one from theGraphinstance. When aVariableResolveris supplied it will attempt to resolve parameters in the Gremlin to objects.- Parameters:
traversalSourceName- The name of the traversal source which will be "g" if not specified.
-
-
Method Detail
-
visitQuery
public Object visitQuery(GremlinParser.QueryContext ctx)
Visit a parse tree produced byGremlinParser.query().- Specified by:
visitQueryin interfaceGremlinVisitor<Object>- Overrides:
visitQueryin classDefaultGremlinBaseVisitor<Object>- Parameters:
ctx- the parse tree- Returns:
- the visitor result
-
visitQueryList
public Object visitQueryList(GremlinParser.QueryListContext ctx)
Visit a parse tree produced byGremlinParser.queryList().- Specified by:
visitQueryListin interfaceGremlinVisitor<Object>- Overrides:
visitQueryListin classDefaultGremlinBaseVisitor<Object>- Parameters:
ctx- the parse tree- Returns:
- the visitor result
-
aggregateResult
protected Object aggregateResult(Object result, Object nextResult)
Override the aggregate result behavior. If the next result isnull, return the current result. This is used to handle child EOF, which is the last child of theQueryListcontext. If the next Result is notnull, return the next result. This is used to handle multiple queries, and return only the last query result logic.- Overrides:
aggregateResultin classorg.antlr.v4.runtime.tree.AbstractParseTreeVisitor<Object>
-
-