Date: 13 May 2019 Changes classes: PrimeFinder.java Use already sorted array instead of sorting primes in the class initalizer to avoid exposing not-yet-sorted primes. Date: 24 August 2016 Changed classes: T*Hash, T*ObjectMap, TObject*Map, THashMap, T**Map, T*List - made empty collections consume less memory Date: 25 February 2015 Changed classes: T*Map, T*Set - toString() added T*Byte* - added byte/Object to byte/Object maps and sets specializations T* - made compilable under JDK 5 (no @Override in interfaces) TObject*HashMap - added hashCode() T*ObjectHashMap - clone() fixed to fully copy _set array Date: 02 April 2013 Changed classes: T*Map, T*Decorator, T*List, T*Procedure, T*Function, T*Iterator, T*Hash, T*Set - made them autogenerated from templates "T*.template" in the util/src/gnu/trove/generate directory T*ObjectHashMap - removed state array, now state is stored in the values array, can be one of the TObjectHash.REMOVED, TObjectHash.NULL or the value itself T*Map.insertionIndex() - changed algorithm for determining index to insert new element at. Now it returns the first index of previously removed element, if any, instead of the next free/removed cell after the removed element cell. *.* - converted tabs to spaces T*.java - @Override added T*Decorator - bug fixed: inner class in entrySet() should override correct add() method TObjectHash#throwObjectContractViolation - more information added to the error message T*Map.HashProcedure, T*Map.EqProcedure - generified, explicit constructors added to reduce .class file count from 216 to 195 directory layout changed: - .idea/* - directory added containing Intellij IDEA project files. - core/* - directory added containing the main classes - artifacts/* - directory added containing output trove4j.jar and trove4j_src.jar To rebuild trove4j.jar and trove4j_src.jar invoke Build/Artifacts - generated/* - directory added containing T*.java classes generated from templates To regenerate sources, run Generate class - util/* - benchmark classes, templates (T*.template) files and the Generate class - classes/* - directory containing compiled classes from the "core" and "generated" modules - test/* - directory added containing embryo tests for T*Map correctness - trove4j_changes.txt - this file Date: 4 Feb 2013 Changed classes: THashMap - fixed bug in the Entry.setValue() gnu.trove.benchmark.* - moved to the util/gnu.trove.benchmark package Date: 5 May 2012 Changed classes: TPrimitiveHash - fixed manual setUp in constructor (capacity, load_factor) as proper super call will do it properly Date: 16 Apr 2012 Changed classes: THash TPrimitiveHash TObjectHash TIterator gnu.trove.benchmark.Main and many others - implement autocompact on removing keys. Failure to do so leads to linear access time Date: 15 Jan 2008 Changed classes: THashMap - fixed bug in put() method for null value Date: 17 Oct 2006 Changed classes: gnu.trove.T*ArrayList - fixed bug in set() method Date: 31 Jan 2006 Changed classes: THash TPrimitiveHash - removed unnecessary usages of Math.floor and Math.ceil as those are native functions and thus very slow. Date: 20 Sep 2004 Added classes: gnu.trove.generate.Generate - class to generate gnu.trove.decorator classes Added files: util/src/gnu/trove/generate/O2PMapDecorator.template - template to generate Object to primitive HashMap decorators util/src/gnu/trove/generate/P2OMapDecorator.template - template to generate primitive to Object HashMap decorators util/src/gnu/trove/generate/P2PMapDecorator.template - template to generate primitive to primitive HashMap decorators util/src/gnu/trove/generate/SetDecorator.template - template to generate HashSet decorators Following classes were generified (i.e JDK 5.0 generics type parameters were added to class definitions): gnu.trove.decorator.TDoubleDoubleHashMapDecorator gnu.trove.decorator.TDoubleFloatHashMapDecorator gnu.trove.decorator.TDoubleHashSetDecorator gnu.trove.decorator.TDoubleIntHashMapDecorator gnu.trove.decorator.TDoubleLongHashMapDecorator gnu.trove.decorator.TDoubleObjectHashMapDecorator gnu.trove.decorator.TFloatDoubleHashMapDecorator gnu.trove.decorator.TFloatFloatHashMapDecorator gnu.trove.decorator.TFloatHashSetDecorator gnu.trove.decorator.TFloatIntHashMapDecorator gnu.trove.decorator.TFloatLongHashMapDecorator gnu.trove.decorator.TFloatObjectHashMapDecorator gnu.trove.decorator.TIntDoubleHashMapDecorator gnu.trove.decorator.TIntFloatHashMapDecorator gnu.trove.decorator.TIntHashSetDecorator gnu.trove.decorator.TIntIntHashMapDecorator gnu.trove.decorator.TIntLongHashMapDecorator gnu.trove.decorator.TIntObjectHashMapDecorator gnu.trove.decorator.TLongDoubleHashMapDecorator gnu.trove.decorator.TLongFloatHashMapDecorator gnu.trove.decorator.TLongHashSetDecorator gnu.trove.decorator.TLongIntHashMapDecorator gnu.trove.decorator.TLongLongHashMapDecorator gnu.trove.decorator.TLongObjectHashMapDecorator gnu.trove.decorator.TObjectDoubleHashMapDecorator gnu.trove.decorator.TObjectFloatHashMapDecorator gnu.trove.decorator.TObjectIntHashMapDecorator gnu.trove.decorator.TObjectLongHashMapDecorator CanonicalEquality Equality IdentityEquality gnu.trove.TDoubleObjectHashMap gnu.trove.TDoubleObjectIterator gnu.trove.TDoubleObjectProcedure gnu.trove.TFloatObjectHashMap gnu.trove.TFloatObjectIterator gnu.trove.TFloatObjectProcedure THashIterator THashMap THashSet gnu.trove.TIntObjectHashMap gnu.trove.TIntObjectIterator gnu.trove.TIntObjectProcedure TLinkedList gnu.trove.TLongObjectHashMap gnu.trove.TLongObjectIterator gnu.trove.TLongObjectProcedure TObjectCanonicalHashingStrategy gnu.trove.TObjectDoubleHashMap gnu.trove.TObjectDoubleIterator gnu.trove.TObjectDoubleProcedure gnu.trove.TObjectFloatHashMap gnu.trove.TObjectFloatIterator gnu.trove.TObjectFloatProcedure TObjectFunction TObjectHash TObjectHashIterator TObjectHashingStrategy TObjectIdentityHashingStrategy gnu.trove.TObjectIntHashMap gnu.trove.TObjectIntIterator gnu.trove.TObjectIntProcedure gnu.trove.TObjectLongHashMap gnu.trove.TObjectLongIterator gnu.trove.TObjectLongProcedure TObjectObjectProcedure TObjectProcedure ToObjectArrayProcedure Date: 20 April 2004 Added classes: CanonicalEquality Equality IdentityEquality TObjectCanonicalHashingStrategy Modified classes: THash - default load factor and default capacity changed THashMap - method clear (line 365) does nothing when map is empty; reorder imports gnu.trove.TIntArrayList - default capacity reduced (line 46); reorder imports TIntStack - added copy constructor (line 46) TObjectHash - methods boolean equals(Object, Object) (line 295) and int computeHashCode(Object) (line 281) accepts nulls as parameters. Hash code of null is 0. Reorder imports: gnu.trove.TDoubleHashSet gnu.trove.TFloatHashSet THashSet gnu.trove.TIntHashSet TLinkedList gnu.trove.TLongHashSet