Commit Graph

219 Commits

Author SHA1 Message Date
Mike Jensen
bd2ebfce07 Merge branch 'master' of https://github.com/ReadyTalk/avian 2013-04-29 11:45:32 -06:00
Mike Jensen
a41f8c0103 Added more to the avian classpath for the collection interface as well as the list interface
Added to collection:
public boolean containsAll(Collection<?> c);
public boolean removeAll(Collection<?> c);

Added to list:
public boolean addAll(int startIndex, Collection<? extends T> c);

Also where possible for inner classes I made them extend the abstract version instead of just implement the interface.  This helps reduce code duplication where possible.

These changes were necessary to support protobuf 2.5.0
2013-04-29 11:32:56 -06:00
Simon Ochsenreither
b1eb4b9718 Adds code to get the Scala REPL working 2013-01-30 04:31:38 +01:00
Joel Dice
852d77d0b5 implement Arrays.toString(byte[]) 2012-08-04 16:08:32 -06:00
Joel Dice
e85d079cfa Merge branch 'master' of https://github.com/joshuawarner32/avian 2012-07-24 11:34:18 -06:00
Joshua Warner
fffde5f445 add Arrays test for equals and hashCode, handle corner cases with null 2012-07-24 11:31:47 -06:00
Joel Dice
af34259a01 Merge branch 'master' of https://github.com/joshuawarner32/avian 2012-07-24 10:21:37 -06:00
Joshua Warner
b034d11221 Ungenerify Arrays.{hashCode|equals}, make Arrays.equals consider nulls equal 2012-07-24 10:03:19 -06:00
Joel Dice
52a878fa3e Merge branch 'master' of https://github.com/joshuawarner32/avian 2012-07-24 09:58:53 -06:00
Mike Keesey
b4ecec3034 Implementing add(T element) in AbstractList, which just calls add(size(), element) and returns true per the spec. 2012-07-23 18:55:11 -06:00
Joshua Warner
62ff8440ed implement Arrays.equals and Arrays.hashCode 2012-07-23 07:28:05 -06:00
Mike Keesey
59280c5780 Fixed isEmpty() on TreeSet, which actually returned !isEmpty(). 2012-07-13 15:46:01 -06:00
Joel Dice
2ab304acb8 Merge github.com:mkeesey/avian 2012-07-07 16:29:18 -06:00
Mike Keesey
ba1719f1ef EnumSet.allOf can take advantage of the bulk BitSet.set(start, end) operation to run faster instead of adding each element individually. 2012-07-06 23:47:42 -06:00
Mike Keesey
39ad6da290 made getTrueMask in BitSet a lot more rational with fewer code paths. 2012-07-06 23:42:54 -06:00
Mike Keesey
7947981b4b Fixed issue where BitSet didn't handle a range of 64 bits correctly on bulk operations - now just return the predefined MASK which has all the bits set when requesting that all the bits be set. 2012-07-06 23:33:05 -06:00
Dain
26209efac2 Fix an off-by-1 error in the remove method.
The change to only grow the array when the capacity has been reached
exposed a bug in the remove method when shifting the array elements.
2012-07-06 14:03:56 -06:00
Mike Keesey
9c9ee5c26d Made the bulk clear() fast like bulk set() and flip() for BitSet. 2012-07-05 22:16:19 -06:00
Mike Keesey
990f4fd154 Moved looping through the partitions to change and generating a mask for start and end values into an iterator. This is to use one code path for several bulk-modification operations like flip(start, end) and set(start, end). 2012-07-04 17:12:50 -06:00
Mike Keesey
0c806f82b5 Made the bulk set() function in BitSet a lot faster by applying an appropriate mask to each partition instead of setting each bit individually. 2012-07-04 16:00:12 -06:00
Mike Keesey
5f1b086150 Fixed an off-by-one error when deciding if we should grow BitSets. 2012-07-03 21:28:59 -06:00
Mike Keesey
53f229b84d Removed extraneous TODO. 2012-07-02 16:21:28 -06:00
Joel Dice
fcef9a7f57 remove Override annotations from EnumSet since they confuse Apple's Java 1.5 compiler 2012-07-02 16:15:38 -06:00
Mike Keesey
6e30366d07 Adding EnumSet, which is backed by a speedy BitSet. 2012-07-02 14:28:51 -06:00
Mike Keesey
d419899ac1 Adding both forms of flip() to BitSet. 2012-07-02 14:28:40 -06:00
Mike Keesey
31311160c3 Adding cardinality() to BitSet. 2012-07-02 14:28:34 -06:00
Joel Dice
153b78f479 fix ArrayList performance issue
The ArrayList(Collection) constructor was allocating two arrays
instead of one due to an off-by-one error in ArrayList.grow.  This
commit fixes that and makes grow and shrink more robust.
2012-06-14 10:55:03 -06:00
Mike Keesey
527526c5ea Defer to underlying PersistentSet for size. 2012-06-13 08:41:15 -06:00
Mike Keesey
1f7b1a74e8 Adding java.util.SortedSet. 2012-05-22 16:21:57 -06:00
Mike Keesey
97ffc5b15e Adding java.util.Queue interface and java.util.AbstractQueue. 2012-05-22 15:23:28 -06:00
Joel Dice
0addd8c814 update copyright years 2012-05-11 17:43:27 -06:00
Joel Dice
1119675b7a override InputStream.available for FileInputStream and the instance returned by ZipFile.getInputStream 2012-05-04 19:55:53 -06:00
Joshua Warner
8e6f5ac6e3 add ZipEntry.isDirectory (trivial implementation) 2012-03-21 10:38:30 -06:00
Joel Dice
9fe2d69b06 improve seed generation in java.util.Random
The previous code caused frequent seed collisions for successive calls
to the no-arg constructor, even for single threaded workloads.  This
patch should avoid such collisions in both single and multi-threaded
cases.
2012-02-14 15:17:07 -07:00
Joel Dice
7022b23b26 add AbstractCollection.toString implementation 2012-01-12 10:45:05 -07:00
Joel Dice
a2c6cc8882 implement ConcurrentLinkedQueue.clear 2011-11-07 15:52:42 -07:00
Joel Dice
21cc4c6a87 implement AbstractList.indexOf 2011-11-04 08:27:11 -06:00
Joel Dice
b862f5f90a add bare-bones UUID implementation 2011-09-29 18:27:34 -06:00
Joel Dice
296cb74847 add bare-bones ConcurrentLinkedQueue implementation 2011-09-29 18:26:50 -06:00
Joel Dice
a8bb0d074b implement first() and last() in TreeSet 2011-09-29 18:25:41 -06:00
Joel Dice
1c59aa51d8 add fields and methods to AbstractList for compatibility
Google Protocol Buffers relies on these.
2011-08-12 14:29:22 -06:00
Topher Lamey
10183a9870 Added AbstractMap for protobuf, and String getByte encoding for Latin-1 2011-08-12 13:30:51 -06:00
Joel Dice
792653e190 strip leading slashes from name in ZipFile.getEntry
This is necessary to allow resource loading of the form
Foo.class.getResourceAsStream("/foo.txt") from JAR files.
2011-07-26 09:09:04 -06:00
Anonymous
794a45cb79 fix various ObjectOutputStream/ObjectInputStream bugs 2011-07-01 08:43:43 -06:00
Topher Lamey
9700b7def1 Changes for protobuf support 2011-06-21 14:37:08 -06:00
Topher Lamey
9aae57ee03 Additions for Protobuf support 2011-06-17 11:23:09 -06:00
Topher Lamey
b891db43bc Additions for Protobuf support 2011-06-17 11:23:08 -06:00
Mike Jensen
6b4b4b0b8c Changes to add end function to Inflater and Deflater per the java spec 2011-05-31 14:31:06 -06:00
Joel Dice
d4da92d300 fix bugs in Deflater and DeflaterOutputStream
Previously, Deflater.deflate would pass Z_SYNC_FLUSH to zlib
unconditionally, which caused the output to be enormous when setInput
was called repeatedly with very small input buffers.  In order to
allow zlib to buffer output and thereby maximize compression, we must
use Z_NO_FLUSH until Deflater.finish is called, at which point we
switch to Z_FINISH.  We also modify DeflaterOutputStream.close to call
Deflater.finish and write any remaining output to the wrapped stream.
2011-05-16 17:12:41 -06:00
Joel Dice
e788a18bc7 implement java.util.zip.CRC32 2011-05-16 17:12:10 -06:00