/** This interface specifies queue operations needed in a search. The operations are mostly JGL-compliant, but removeFront() is used in preference to pop() because its meaning is clearer. */ public interface GeneralQueue { /** Add a new object to the queue. */ public void add(SearchNode object); /** Remove the next object in queue order. */ public SearchNode removeFront(); /** Predicate to determine if queue is empty. */ public boolean isEmpty(); }