Package

org.opencypher.gremlin.translation.ir

rewrite

Permalink

package rewrite

Visibility
  1. Public
  2. All

Type Members

  1. trait GremlinRewriter extends (Seq[GremlinStep]) ⇒ Seq[GremlinStep]

    Permalink

Value Members

  1. object CosmosDbFlavor extends GremlinRewriter

    Permalink

    This is a set of rewrites to adapt the translation to Cosmos DB.

  2. object GroupStepFilters extends GremlinRewriter

    Permalink

    This rewriter relocates label and property predicates from normalized WHERE expressions to the related as step as has steps.

    This rewriter relocates label and property predicates from normalized WHERE expressions to the related as step as has steps. This should allow Gremlin provider optimization strategies to fold generated has steps into the adjacent vertex step.

  3. object InlineMapTraversal extends GremlinRewriter

    Permalink

    Generated map steps with traversal argument can be replaced with just the traversal for the same effect.

  4. object RemoveImmediateReselect extends GremlinRewriter

    Permalink

    This rule removes select steps that immediately follow an as step with the same label.

    This rule removes select steps that immediately follow an as step with the same label. Since the expected value is already in the traverser, this is a useless operation. This rewrite also enables some cases of RemoveUnusedAliases rewrites.

  5. object RemoveUnusedAliases extends GremlinRewriter

    Permalink

    This rewriter removes many cases of as steps that have been generated, but are not actually used in the traversal.

    This rewriter removes many cases of as steps that have been generated, but are not actually used in the traversal. This enables some default Gremlin optimization strategies like org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.IncidentToAdjacentStrategy and allows bulking by keeping traversers compact.

  6. object RemoveUselessSteps extends GremlinRewriter

    Permalink

    This rewriter removes different sequences of steps that are no-op or otherwise useless.

    This rewriter removes different sequences of steps that are no-op or otherwise useless. These sequences can sometimes appear in the generated traversal when results of several walkers are combined together.

  7. object SimplifyPropertySetters extends GremlinRewriter

    Permalink

    Property setters where value is a constant can be simplified to avoid empty traversal checks and set or unset the property directly.

  8. object SimplifyRenamedAliases extends GremlinRewriter

    Permalink

    Match patterns that start with renaming an existing alias can simply select the existing alias from the traversal.

  9. object SimplifySingleProjections extends GremlinRewriter

    Permalink

    Remove select in case of single key and UNUSED workaround

Ungrouped