javolution.util.service.CollectionService Maven / Gradle / Ivy
The newest version!
/*
* Javolution - Java(TM) Solution for Real-Time and Embedded Systems
* Copyright (C) 2012 - Javolution (http://javolution.org/)
* All rights reserved.
*
* Permission to use, copy, modify, and distribute this software is
* freely granted, provided that this notice is preserved.
*/
package javolution.util.service;
import java.io.Serializable;
import java.util.Collection;
import javolution.util.function.Equality;
import javolution.util.function.Splittable;
/**
* The fundamental set of related functionalities required to implement
* fast collections.
*
* @author Jean-Marie Dautelle
* @version 6.0, July 21, 2013
*/
public interface CollectionService extends Collection,
Splittable>, Serializable, Cloneable {
/**
* Returns a copy of this collection; updates of the copy should not
* impact the original.
*/
CollectionService clone() throws CloneNotSupportedException;
/**
* Returns the comparator used for element equality or order if the
* collection is sorted.
*/
Equality super E> comparator();
/**
* Returns a thread-safe version of this service (used during
* parallel updates).
*/
CollectionService threadSafe();
}