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
This is the entry point for converting the Gremlin Antlr grammar into Java. It is bound to a
Graph instance
as that instance may spawn specific Traversal or TraversalSource types. A new instance should be
created for each parse execution.-
Constructor Summary
ConstructorsModifierConstructorDescriptionConstructs 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) 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) GremlinAntlrToJava(Graph graph, VariableResolver variableResolver) Constructs a new instance that is bound to the specifiedGraphinstance. -
Method Summary
Modifier and TypeMethodDescriptionprotected ObjectaggregateResult(Object result, Object nextResult) Override the aggregate result behavior.Visit a parse tree produced byGremlinParser.query().Visit a parse tree produced byGremlinParser.queryList().Methods inherited from class org.apache.tinkerpop.gremlin.language.grammar.DefaultGremlinBaseVisitor
notImplemented, visitBinaryLiteral, visitBooleanArgument, visitBooleanLiteral, visitChainedTraversal, visitCharacterLiteral, visitClassType, visitClassTypeExpr, visitClassTypeList, visitConfiguration, visitConnectedComponentConstants, visitConnectedComponentConstants_component, visitConnectedComponentConstants_edges, visitConnectedComponentConstants_propertyName, visitConnectedComponentStringConstant, visitDateArgument, visitDateLiteral, visitDurationLiteral, visitEmptyQuery, visitFloatLiteral, visitGenericArgument, visitGenericArgumentVarargs, visitGenericCollectionLiteral, visitGenericLiteral, visitGenericLiteralExpr, visitGenericLiteralVarargs, visitGenericMapArgument, visitGenericMapLiteral, visitGenericMapNullableArgument, visitGenericMapNullableLiteral, visitGenericRangeLiteral, visitGenericSetLiteral, visitInfLiteral, visitIntegerArgument, visitIntegerLiteral, visitIoOptionsConstants_graphml, visitIoOptionsConstants_graphson, visitIoOptionsConstants_gryo, visitIoOptionsConstants_reader, visitIoOptionsConstants_writer, visitIoOptionsKeys, visitIoOptionsStringConstant, visitIoOptionsValues, visitKeyword, visitMapEntry, visitMapKey, visitNakedKey, visitNanLiteral, visitNestedTraversal, visitNestedTraversalExpr, visitNestedTraversalList, visitNullableGenericLiteralMap, visitNullLiteral, visitNumericLiteral, visitPageRankConstants, visitPageRankConstants_edges, visitPageRankConstants_propertyName, visitPageRankConstants_times, visitPageRankStringConstant, visitPdtLiteral, visitPeerPressureConstants, visitPeerPressureConstants_edges, visitPeerPressureConstants_propertyName, visitPeerPressureConstants_times, visitPeerPressureStringConstant, visitRootTraversal, visitShortestPathConstants, visitShortestPathConstants_distance, visitShortestPathConstants_edges, visitShortestPathConstants_includeEdges, visitShortestPathConstants_maxDistance, visitShortestPathConstants_target, visitShortestPathStringConstant, visitStringArgument, visitStringArgumentVarargs, visitStringLiteral, visitStringLiteralVarargs, visitStringNullableArgument, visitStringNullableArgumentVarargs, visitStringNullableLiteral, visitStringNullableLiteralVarargs, visitTerminatedTraversal, visitTransactionPart, visitTraversalBarrier, visitTraversalBiFunction, visitTraversalCardinality, visitTraversalColumn, visitTraversalComparator, visitTraversalDirection, visitTraversalDirectionLong, visitTraversalDirectionShort, visitTraversalDT, visitTraversalFunction, visitTraversalGType, visitTraversalMerge, visitTraversalMethod, visitTraversalMethod_addE_String, visitTraversalMethod_addE_Traversal, visitTraversalMethod_addLabel_String, visitTraversalMethod_addLabel_Traversal, visitTraversalMethod_addV_Empty, visitTraversalMethod_addV_String, visitTraversalMethod_addV_Traversal, visitTraversalMethod_aggregate_String, visitTraversalMethod_all_P, visitTraversalMethod_and, visitTraversalMethod_any_P, visitTraversalMethod_as, visitTraversalMethod_asBool, visitTraversalMethod_asDate, visitTraversalMethod_asNumber_Empty, visitTraversalMethod_asNumber_traversalGType, 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_discard, visitTraversalMethod_disjunct_Object, visitTraversalMethod_drop, visitTraversalMethod_dropLabel_String, visitTraversalMethod_dropLabel_Traversal, visitTraversalMethod_dropLabels_Empty, 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_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_String_Traversal, 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_hasKey_Traversal, visitTraversalMethod_hasLabel_P, visitTraversalMethod_hasLabel_String_String, visitTraversalMethod_hasLabel_Traversal, visitTraversalMethod_hasNot, visitTraversalMethod_hasValue_Object_Object, visitTraversalMethod_hasValue_P, visitTraversalMethod_hasValue_Traversal, visitTraversalMethod_id, visitTraversalMethod_identity, visitTraversalMethod_in, visitTraversalMethod_index, visitTraversalMethod_inE, visitTraversalMethod_inject, visitTraversalMethod_intersect_Object, visitTraversalMethod_inV, visitTraversalMethod_is_Object, visitTraversalMethod_is_P, visitTraversalMethod_key, visitTraversalMethod_label, visitTraversalMethod_labels, 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_string, visitTraversalMethod_match_string_map, visitTraversalMethod_match_traversal, 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_Cardinality_Object_Traversal, visitTraversalMethod_property_Object, visitTraversalMethod_property_Object_Object_Object, visitTraversalMethod_property_Object_Traversal, visitTraversalMethod_property_Traversal, 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_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_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_typeOf, visitTraversalPredicate_within, visitTraversalPredicate_without, visitTraversalSackMethod, visitTraversalScope, visitTraversalSource, visitTraversalSourceSelfMethod, visitTraversalSourceSelfMethod_with, visitTraversalSourceSelfMethod_withBulk, visitTraversalSourceSelfMethod_withoutStrategies, visitTraversalSourceSelfMethod_withPath, visitTraversalSourceSelfMethod_withSack, visitTraversalSourceSelfMethod_withSideEffect, visitTraversalSourceSelfMethod_withStrategies, visitTraversalSourceSpawnMethod, visitTraversalSourceSpawnMethod_addE, visitTraversalSourceSpawnMethod_addV_Empty, visitTraversalSourceSpawnMethod_addV_String, visitTraversalSourceSpawnMethod_addV_Traversal, 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_match_string, visitTraversalSourceSpawnMethod_match_string_map, visitTraversalSourceSpawnMethod_mergeE_Map, visitTraversalSourceSpawnMethod_mergeE_Traversal, visitTraversalSourceSpawnMethod_mergeV_Map, visitTraversalSourceSpawnMethod_mergeV_Traversal, visitTraversalSourceSpawnMethod_union, visitTraversalSourceSpawnMethod_V, visitTraversalStrategy, visitTraversalStrategyExpr, visitTraversalStrategyVarargs, visitTraversalT, visitTraversalTerminalMethod, visitTraversalTerminalMethod_explain, visitTraversalTerminalMethod_hasNext, visitTraversalTerminalMethod_iterate, visitTraversalTerminalMethod_next, visitTraversalTerminalMethod_toBulkSet, visitTraversalTerminalMethod_toList, visitTraversalTerminalMethod_toSet, visitTraversalTerminalMethod_tryNext, visitTraversalTLong, visitTraversalTShort, visitUuidLiteral, visitVariable, visitWithOptionKeys, visitWithOptionsConstants_all, visitWithOptionsConstants_ids, visitWithOptionsConstants_indexer, visitWithOptionsConstants_keys, visitWithOptionsConstants_labels, visitWithOptionsConstants_list, visitWithOptionsConstants_map, visitWithOptionsConstants_none, visitWithOptionsConstants_tokens, visitWithOptionsConstants_values, visitWithOptionsStringConstant, visitWithOptionsValuesMethods inherited from class org.antlr.v4.runtime.tree.AbstractParseTreeVisitor
defaultResult, shouldVisitNextChild, visit, visitChildren, visitErrorNode, visitTerminalMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.antlr.v4.runtime.tree.ParseTreeVisitor
visit, visitChildren, visitErrorNode, visitTerminal
-
Constructor Details
-
GremlinAntlrToJava
public GremlinAntlrToJava()Constructs a new instance and is bound to anEmptyGraph. This form of construction is helpful for generatingGremlinLangor 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
Constructs a new instance that is bound to the specifiedGraphinstance. Assumes that "g" is the name of theGraphTraversalSource. -
GremlinAntlrToJava
Constructs a new instance that is bound to the specifiedGraphinstance. Assumes that "g" is the name of theGraphTraversalSource. -
GremlinAntlrToJava
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
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
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
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 Details
-
visitQuery
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
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
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>
-