Changes and bug fixes in JGL 2.0.2 (3-12-97): * Fixed OrderedSet.put(); it wasn't replacing values as it should have. * Made InsertResult an inner class. * Changed full name of library from "Java(tm) Generic Library" to "JGL: Generic Collection Library for Java(tm)." Changes and bug fixes in JGL 2.0.1 (2-19-97): * Added classes DividesNumber, MinusNumber, ModulusNumber, NegateNumber, PlusNumber, TimesNumber, GreaterEqualNumber, GreaterNumber, LessEqualNumber, LessNumber, NegativeNumber, PositiveNumber, EqualNumber, and NotEqualNumber; deprecated similar *Integer family * Deprecated classes HashMultiMap, HashMultiSet, OrderedMultiMap, and OrderedMultiSet; added the functionality into the various Maps and Sets. * Added Counting.accumulate() and Counting.adjacentDifference() algorithms. * Improved synchronized usage in the containers. * Added InstanceOf function object. * remove() methods that can erase more than one object now return the number of objects erased except for in containers derived from Dictionary * Deprecated abstract class Map. * Removed classes GreatedCollatedString, GreaterEqualCollatedString, LessCollatedString, and LessEqualCollatedString because the class java.text.CollatedString was removed from the JDK * Renamed comparator classes LessCollation, LessEqualCollation, GreaterCollation, GreaterEqualCollation to LessCollator, etc. because of the underlying name changes in JDK 1.1 * Renamed comparator classes LessSortKey, LessEqualSortKey, GreaterSortKey, GreaterEqualSortKey to LessCollationKey, etc. because of the underlying name changes in JDK 1.1 * Added comparator classes EqualCollator, NotEqualCollator, EqualCollationKey, NotEqualCollationKey, EqualString, NotEqualString Changes and bug fixes in JGL 2.0 (1-22-97): * Added Serialization support to all containers. Iterators from any JGL sequential container may also be serialized. * Added ObjectOutputStreamIterator, an iterator that can be used to easily write objects to an ObjectOutputStream. * Made TreeNode, DListNode, SListNode, HashMapNode, and HashSetNode inner classes. * Added comparator classes LessCollation, LessEqualCollation, GreaterCollation, GreaterEqualCollation, LessSortKey, LessEqualSortKey, GreaterSortKey, GreaterEqualSortKey, LessCollatedString, LessEqualCollatedString, GreaterCollatedString, and GreaterEqualCollatedString. * Changed package name to COM.objectspace.jgl as suggested in Section 6.8.1 of the Java language specification. * Added SwappedBinaryPredicate, a function object that returns the result of applying its operands to a BinaryPredicate in the opposite order they were received. * Added allowExpansion() and expansionAllowed() to the hashing containers * Implemented Pair.hashCode(). * Made Pair aware of nulls. * Made Printing.toString() public. * Made SList.add() synchronized. * Fixed problem with OutOfBoundsException being erroneously thrown from Array.insert(). * Deque.pushFront() now works with an empty collection. * HashMap.equalRange() and HashSet.equalRange() now return Range( end(), end() ) instead of null when elements not found. * Added classes HashMultiMap, HashMultiSet, OrderedMultiMap, and OrderedMultiSet, deprecating the duplicate functionality of Maps and Sets. * Added default constructors to adaptive arrays. * Fixed problem with OrderedMap.lowerBound() and .upperBound(). * Added delimiter to OutputStreamIterator. * Added remove( Object, int ) to most containers. * Added lowerBound() and upperBound() to HashSet and HashMap. * Improved Hashing.orderedHash(). * Added Set.count(). * Added abstract class Map. * Concrete ForwardIterators (from HashMap, HashSet, and SList) now throw an exception when advance() is passed a negative offset. * Added Array.setSize(), mirroring the functionality of java.util.Vector.setSize().