/*
 * Copyright (c) 2008 Harold Cooper. All rights reserved.
 * Licensed under the MIT License.
 * See LICENSE file in the project root for full license information.
 */

/** */
package org.pcollections;

import java.util.Collection;
import java.util.Queue;

A persistent queue.
Author:mtklein
/** * A persistent queue. * * @author mtklein */
public interface PQueue<E> extends PCollection<E>, Queue<E> { // TODO i think PQueue should extend PSequence, // even though the methods will be inefficient -- H /* Guaranteed to stay as a PQueue, i.e. guaranteed-fast methods */ public PQueue<E> minus(); public PQueue<E> plus(E e); public PQueue<E> plusAll(Collection<? extends E> list); /* May switch to other PCollection, i.e. may-be-slow methods */ public PCollection<E> minus(Object e); public PCollection<E> minusAll(Collection<?> list); @Deprecated boolean offer(E o); @Deprecated E poll(); @Deprecated E remove(); }