public final class DedupBijectionStrategy extends AbstractTraversalStrategy<TraversalStrategy.OptimizationStrategy> implements TraversalStrategy.OptimizationStrategy
DedupBijectionStrategy does deduplication prior to a non-mutating bijective step if there is no
by()-modulation on dedup(). Given that DedupGlobalStep reduces the number of
objects in the stream, it is cheaper to dedup prior.
__.order().dedup() // is replaced by __.dedup().order()
TraversalStrategy.DecorationStrategy, TraversalStrategy.FinalizationStrategy, TraversalStrategy.OptimizationStrategy, TraversalStrategy.VendorOptimizationStrategy, TraversalStrategy.VerificationStrategy| Modifier and Type | Method and Description |
|---|---|
void |
apply(Traversal.Admin<?,?> traversal) |
Set<Class<? extends TraversalStrategy.OptimizationStrategy>> |
applyPrior()
The set of strategies that must be executed before this strategy is executed.
|
static DedupBijectionStrategy |
instance() |
equals, hashCode, toStringclone, finalize, getClass, notify, notifyAll, wait, wait, waitcompareTo, getTraversalCategoryapplyPostpublic void apply(Traversal.Admin<?,?> traversal)
apply in interface TraversalStrategy<TraversalStrategy.OptimizationStrategy>public Set<Class<? extends TraversalStrategy.OptimizationStrategy>> applyPrior()
TraversalStrategyapplyPrior in interface TraversalStrategy<TraversalStrategy.OptimizationStrategy>public static DedupBijectionStrategy instance()
Copyright © 2013–2015 Apache Software Foundation. All rights reserved.