public <R> Traverser.Admin<R> halt(final Traverser.Admin<R> traverser) {
        if (this.useReference)
            traverser.set(ReferenceFactory.detach(traverser.get()));
        else
            traverser.set(DetachedFactory.detach(traverser.get(), true));
        return traverser;
    }
@author Marko A. Rodriguez (http://markorodriguez.com)
gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/HaltedTraverserStrategy.java