public final class LambdaRestrictionStrategy extends AbstractTraversalStrategy<TraversalStrategy.VerificationStrategy> implements TraversalStrategy.VerificationStrategy
LambdaRestrictionStrategy
does not allow lambdas to be used in a Traversal
. The contents of a lambda
cannot be analyzed/optimized and thus, reduces the ability of other TraversalStrategy
instances to reason
about the traversal. This strategy is not activated by default. However, graph system providers may choose to make
this a default strategy in order to ensure their respective strategies are better able to operate.
__.out().map(v -> v.get().value("name")) // throws an IllegalStateException __.out().filter(v -> v.bulk() > 2) // throws an IllegalStateException __.choose(v -> v.sack() == 1,out(),in()) // throws an IllegalStateException __.select().by(v -> v.get().id()) // throws an IllegalStateException __.order().by(a,b -> a > b) // throws an IllegalStateException
TraversalStrategy.DecorationStrategy, TraversalStrategy.FinalizationStrategy, TraversalStrategy.OptimizationStrategy, TraversalStrategy.ProviderOptimizationStrategy, TraversalStrategy.VerificationStrategy
Modifier and Type | Method and Description |
---|---|
void |
apply(Traversal.Admin<?,?> traversal) |
static LambdaRestrictionStrategy |
instance() |
equals, hashCode, toString
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
compareTo, getTraversalCategory
applyPost, applyPrior
public void apply(Traversal.Admin<?,?> traversal)
apply
in interface TraversalStrategy<TraversalStrategy.VerificationStrategy>
public static LambdaRestrictionStrategy instance()
Copyright © 2013–2016 Apache Software Foundation. All rights reserved.