/** * Return a {@link TraversalExplanation} that shows how this traversal will mutate with each applied {@link TraversalStrategy}. * * @return a traversal explanation */ public default TraversalExplanation explain() { if (this.asAdmin().isLocked()) throw new IllegalStateException("The traversal is locked and can not be explained on a strategy-by-strategy basis"); return new TraversalExplanation(this.asAdmin()); }
/** * Return a {@link TraversalExplanation} that shows how this traversal will mutate with each applied {@link TraversalStrategy}. * * @return a traversal explanation */ public default TraversalExplanation explain() { if (this.asAdmin().isLocked()) throw new IllegalStateException("The traversal is locked and can not be explained on a strategy-by-strategy basis"); return new TraversalExplanation(this.asAdmin()); }