jopt.csp.util
Class IntSet

java.lang.Object
  extended byjopt.csp.util.IntSet
All Implemented Interfaces:
NumSet
Direct Known Subclasses:
IntIntervalSet, IntSparseSet

public abstract class IntSet
extends java.lang.Object
implements NumSet

Base class for integer sets


Constructor Summary
IntSet()
          Creates a new set
 
Method Summary
abstract  void add(int val)
          Adds a value to set
abstract  void add(int start, int end)
          Adds a range of values to set
 void addAll(NumSet set)
          Adds all values to set
abstract  void clear()
          Removes all values from the set
abstract  java.lang.Object clone()
          Creates a duplicate of this set
abstract  boolean contains(int val)
          Returns true if value is contained in set
abstract  int getMax()
          Returns maximum value for set
abstract  int getMin()
          Returns minimum value for set
abstract  int getNextHigher(int val)
          Returns the next higher value in the domain or current value if none exists
abstract  int getNextLower(int val)
          Returns the next lower value in the domain or current value if none exists
abstract  void remove(int val)
          Removes a value from the set
abstract  void remove(int start, int end)
          Removes a range of values from the set
 void removeAll(NumSet set)
          Removes all values in a given set
abstract  void removeEndingAt(int val)
          Removes all values below and including given value
 void removeEndingBefore(int val)
          Removes all values below given value
 void removeStartingAfter(int val)
          Removes all values above given value
abstract  void removeStartingFrom(int val)
          Removes all values above and including given value
 void retainAll(NumSet set)
          Retains only given values in a given set
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface jopt.csp.util.NumSet
size, values
 

Constructor Detail

IntSet

public IntSet()
Creates a new set

Method Detail

clear

public abstract void clear()
Removes all values from the set

Specified by:
clear in interface NumSet

getMin

public abstract int getMin()
Returns minimum value for set


getMax

public abstract int getMax()
Returns maximum value for set


contains

public abstract boolean contains(int val)
Returns true if value is contained in set


add

public abstract void add(int val)
Adds a value to set


add

public abstract void add(int start,
                         int end)
Adds a range of values to set


addAll

public final void addAll(NumSet set)
Adds all values to set

Specified by:
addAll in interface NumSet

remove

public abstract void remove(int val)
Removes a value from the set


remove

public abstract void remove(int start,
                            int end)
Removes a range of values from the set


removeStartingAfter

public final void removeStartingAfter(int val)
Removes all values above given value


removeStartingFrom

public abstract void removeStartingFrom(int val)
Removes all values above and including given value


removeEndingBefore

public final void removeEndingBefore(int val)
Removes all values below given value


removeEndingAt

public abstract void removeEndingAt(int val)
Removes all values below and including given value


removeAll

public final void removeAll(NumSet set)
Removes all values in a given set

Specified by:
removeAll in interface NumSet

retainAll

public final void retainAll(NumSet set)
Retains only given values in a given set

Specified by:
retainAll in interface NumSet

getNextHigher

public abstract int getNextHigher(int val)
Returns the next higher value in the domain or current value if none exists


getNextLower

public abstract int getNextLower(int val)
Returns the next lower value in the domain or current value if none exists


clone

public abstract java.lang.Object clone()
Creates a duplicate of this set

Specified by:
clone in interface NumSet