java.lang.Object
org.apache.tinkerpop.gremlin.process.traversal.strategy.AbstractTraversalStrategy<TraversalStrategy.OptimizationStrategy>
org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.EarlyLimitStrategy
All Implemented Interfaces:
Serializable, Comparable<Class<? extends TraversalStrategy>>, TraversalStrategy<TraversalStrategy.OptimizationStrategy>, TraversalStrategy.OptimizationStrategy

This strategy looks for RangeGlobalSteps that can be moved further left in the traversal and thus be applied earlier. It will also try to merge multiple RangeGlobalSteps into one. If the logical consequence of one or multiple RangeGlobalSteps is an empty result, the strategy will remove as many steps as possible and add a DiscardStep instead.
Author:
Daniel Kuppitz (http://gremlin.guru)
See Also:
Example:
 __.out().valueMap().limit(5)                          // becomes __.out().limit(5).valueMap()
 __.outE().range(2, 10).valueMap().limit(5)            // becomes __.outE().range(2, 7).valueMap()
 __.outE().limit(5).valueMap().range(2, -1)            // becomes __.outE().range(2, 5).valueMap()
 __.outE().limit(5).valueMap().range(5, 10)            // becomes __.outE().discard()
 __.outE().limit(5).valueMap().range(5, 10).cap("a")   // becomes __.outE().discard().cap("a")