
com.tinkerpop.gremlin.process.util.EmptyTraversal Maven / Gradle / Ivy
package com.tinkerpop.gremlin.process.util;
import com.tinkerpop.gremlin.process.Step;
import com.tinkerpop.gremlin.process.Traversal;
import com.tinkerpop.gremlin.process.Traverser;
import com.tinkerpop.gremlin.process.computer.GraphComputer;
import java.util.Collections;
import java.util.Iterator;
import java.util.List;
/**
* @author Marko A. Rodriguez (http://markorodriguez.com)
*/
public class EmptyTraversal implements Traversal {
private static final EmptyTraversal INSTANCE = new EmptyTraversal();
private static final Memory MEMORY = new DefaultMemory(); // TODO: make "empty memory?"
private static final Strategies TRAVERSAL_STRATEGIES = new DefaultStrategies(new EmptyTraversal<>());
public static EmptyTraversal instance() {
return INSTANCE;
}
public boolean hasNext() {
return false;
}
public E next() {
throw FastNoSuchElementException.instance();
}
public Memory memory() {
return MEMORY;
}
public Strategies strategies() {
return TRAVERSAL_STRATEGIES;
}
public void addStarts(final Iterator> starts) {
}
public > T addStep(final Step, E> step) {
return (T) this;
}
public List getSteps() {
return Collections.EMPTY_LIST;
}
public Traversal submit(final GraphComputer computer) {
return new EmptyTraversal<>();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy