1 dojo.provide("calitha.collections.INavigableSet");
  2 dojo.require("calitha.collections.ISortedSet");
  3 dojo.require("calitha.exception.VirtualFunctionException");
  4 
  5 /**
  6  * @name calitha.collections.INavigableSet
  7  * @class A SortedSet extended with navigation methods reporting closest matches for given search targets.
  8  * <p>
  9  * It is based on the
 10  * <a href="http://java.sun.com/javase/6/docs/api/java/util/NavigableSet.html">Java NavigableSet interface</a>.
 11  * @extends calitha.collections.ISortedSet
 12  */
 13 dojo.declare("calitha.collections.INavigableSet", calitha.collections.ISortedSet,
 14 /** @lends calitha.collections.INavigableSet# */
 15 {
 16     /**
 17      * @function
 18      * @param e the value to match 
 19      * @returns {Object} the least element greater than or equal to e, or null if there is no such element
 20      * @description Returns the least element in this set greater than or equal to the given element,
 21      * or null if there is no such element.
 22      */
 23     ceiling: function(/**Object*/ e)
 24     {throw new calitha.exception.VirtualFunctionException(Error());}
 25     ,
 26     /**
 27      * @function
 28      * @returns {calitha.collections.IIterator} an iterator over the elements in this set, in descending order
 29      * @description Returns an iterator over the elements in this set, in descending order.
 30      */
 31     descendingIterator: function()
 32     {throw new calitha.exception.VirtualFunctionException(Error());}
 33     ,
 34     /**
 35      * @function
 36      * @returns {calitha.collections.INavigableSet} a reverse order view of this set
 37      * @description Returns a reverse order view of the elements contained in this set.
 38      */
 39     descendingSet: function()
 40     {throw new calitha.exception.VirtualFunctionException(Error());}
 41     ,
 42     /**
 43      * @function
 44      * @param e the value to match 
 45      * @returns {Object} the greatest element less than or equal to e, or null if there is no such element  
 46      * @description Returns the greatest element in this set less than or equal to the given element,
 47      * or null if there is no such element.
 48      */
 49     floor: function(/**Object*/ e)
 50     {throw new calitha.exception.VirtualFunctionException(Error());}
 51     ,
 52     /**
 53      * @function
 54      * @param e the value to match
 55      * @returns {Object} the least element greater than e, or null if there is no such element 
 56      * @description Returns the least element in this set strictly greater than the given element, or null if there is no such element.
 57      */
 58     higher: function(/**Object*/ e)
 59     {throw new calitha.exception.VirtualFunctionException(Error());}
 60     ,
 61     /**
 62      * @function
 63      * @returns {calitha.collections.IIterator} an iterator over the elements in this set, in ascending order
 64      * @description Returns an iterator over the elements in this set, in ascending order.
 65      */
 66     iterator: function()
 67     {throw new calitha.exception.VirtualFunctionException(Error());}
 68     ,
 69     /**
 70      * @function
 71      * @param e the value to match 
 72      * @returns {Object} the greatest element less than e, or null if there is no such element
 73      * @description Returns the greatest element in this set strictly less than the given element, or null if there is no such element.
 74      */
 75     lower: function(/**Object*/ e)
 76     {throw new calitha.exception.VirtualFunctionException(Error());}
 77     ,
 78     /**
 79      * @function
 80      * @returns {Object} the first element, or null if this set is empty
 81      * @description Retrieves and removes the first (lowest) element, or returns null if this set is empty.
 82      */
 83     pollFirst: function()
 84     {throw new calitha.exception.VirtualFunctionException(Error());}
 85     ,
 86     /**
 87      * @function
 88      * @returns {Object} the last element, or null if this set is empty
 89      * @description Retrieves and removes the last (highest) element, or returns null if this set is empty.
 90      */
 91     pollLast: function()
 92     {throw new calitha.exception.VirtualFunctionException(Error());}
 93 });
 94