Commit Graph

2744 Commits

Author SHA1 Message Date
karma@deadmoose.com 500e107857 Annotate overrides
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2804 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-08-17 17:19:36 +00:00
andrzej@threerings.net 8a45193748 Don't do anything on clear if the set is already empty.
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2803 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-08-17 04:48:13 +00:00
andrzej@threerings.net d1f5c4593f Added some explanatory comments.
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2802 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-08-11 19:57:54 +00:00
andrzej@threerings.net 756c2f44ad Added a HashIntSet class that uses hashing with linear probing to get most of
the memory benefits of ArrayIntSet and better performance than a
HashSet<Integer> (presumably because of less boxing and better spatial
locality).  The downside is that you need to pick a sentinel value that can't
be stored in the set, but that's not a problem in any application for which
I've ever used an IntSet.  In some (admittedly simplistic) Google Caliper
testing, HashIntSet was 22% faster than ArrayIntSet and 73% faster than
HashSet for arrays of size N=10, 100% faster than ArrayIntSet and 69% faster
than HashSet for N=100, and 357% faster than ArrayIntSet and 74% faster than
HashSet for N=1000.


git-svn-id: https://samskivert.googlecode.com/svn/trunk@2801 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-08-11 05:20:43 +00:00
ray.j.greenwell 9ed1bfeedc Annotate both of these with a @ReplacedBy.
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2800 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-07-19 21:02:10 +00:00
ray.j.greenwell 8d28d119db There's a perfectly valid replacement in java.util for this as of 1.5.
I haven't deprecated our version in CollectionUtil because it
copes with being passed a null array...


git-svn-id: https://samskivert.googlecode.com/svn/trunk@2799 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-07-16 19:03:37 +00:00
ray.j.greenwell 0b6b97e8c0 Update this @ReplacedBy annotation to show that we'd need nullsLast().
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2798 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-07-14 19:17:56 +00:00
ray.j.greenwell 1f9786d291 Use the char version of String.replace when possible.
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2797 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-07-13 00:56:07 +00:00
ray.j.greenwell ca1141f3ca Correct error in last commit.
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2796 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-07-13 00:45:45 +00:00
karma@deadmoose.com 83bfe030d8 It's deprecated, so don't use it.
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2795 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-07-13 00:38:02 +00:00
ray.j.greenwell 591211a399 Deprecate this, String itself has a replace() method.
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2794 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-07-08 23:48:20 +00:00
karma@deadmoose.com 32c1e824c5 Out, damned CRLFS! Out, I say!
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2793 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-07-06 17:54:54 +00:00
ray.j.greenwell 18ae646e57 Deprecate size(), add getSize().
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2792 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-07-06 17:19:22 +00:00
samskivert b2b7e974a3 Added getCanonicalPathElements() and computeRelativePath().
From Dave.


git-svn-id: https://samskivert.googlecode.com/svn/trunk@2791 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-06-16 23:38:35 +00:00
samskivert d3631f82e3 Some import tidying courtesy of Mr. Hoover.
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2790 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-06-16 23:37:42 +00:00
samskivert e13eb65866 Foreach loopification from Dave.
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2789 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-06-16 23:36:51 +00:00
samskivert 21be29d478 Javadoc clarifications from Dave.
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2788 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-06-16 23:36:29 +00:00
samskivert cc58b831d3 A javadoc fix from Dave. Javadoc apparently does not like generics.
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2787 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-06-16 23:35:55 +00:00
samskivert 1626ca0d44 Typo and line wrapping from Dave.
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2786 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-06-16 23:31:38 +00:00
samskivert b7d2aa2ef5 Have RecordIterator implement Iterator<E> to be clearer about its purpose in
life.


git-svn-id: https://samskivert.googlecode.com/svn/trunk@2785 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-06-13 18:21:50 +00:00
andrzej@threerings.net d931ccef0d Rather than letting the value determine the text field size, use a
fixed number of columns for easier editing.


git-svn-id: https://samskivert.googlecode.com/svn/trunk@2784 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-06-09 20:56:53 +00:00
ray.j.greenwell 634bacae14 Jamie Doornbos points out that I made a booboo here.
Our getOr() will skip the first argument if it is "blank"
(null, empty, or all whitespace), not just null.


git-svn-id: https://samskivert.googlecode.com/svn/trunk@2783 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-04-20 14:28:19 +00:00
ray.j.greenwell 668ad3ec55 - Fixed parsing of byte[]s to not parse them as strings and then
lose precision during the cast. Now it will freak out if the
  "byte" is out of range.
- A bit less hashing in our static initializer.


git-svn-id: https://samskivert.googlecode.com/svn/trunk@2782 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-04-20 01:50:37 +00:00
ray.j.greenwell edf86bdfec I won't deprecate replace() outright, but it's in String now.
(Although, the implementation builds a Pattern object, which
seems rather wasteful if the match sequence isn't found..)


git-svn-id: https://samskivert.googlecode.com/svn/trunk@2781 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-04-20 01:43:56 +00:00
ray.j.greenwell ab062e7e95 Let's go ahead and unmarshall to all the wrapper types, not just Integer.
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2780 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-04-17 00:06:43 +00:00
ray.j.greenwell 835f1268d0 This class can now accurately store null.
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2779 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-04-16 01:13:36 +00:00
ray.j.greenwell 181eb3faf0 Gah! Gringos falling from the sky?
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2778 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-04-16 01:12:27 +00:00
ray.j.greenwell 40e36046d0 Whitespace patrol.
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2777 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-04-16 00:57:08 +00:00
ray.j.greenwell 5fa1380c5c @ReplacedBy something in guava.
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2776 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-04-16 00:56:39 +00:00
ray.j.greenwell 12c107bd29 Why is this <T extends Object>?
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2775 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-04-16 00:56:06 +00:00
ray.j.greenwell 3ad9520cb0 Everything here can be @ReplacedBy something else.
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2774 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-04-16 00:55:42 +00:00
ray.j.greenwell 0454f1cf84 After some discussion, two changes:
- If there is only one element in the Iterable, compare it to itself to
  make sure it's not "bogus", like null in the Comparable version.
- Use our own natural ordering Comparator, as the one in Comparators is null-safe. Gah!


git-svn-id: https://samskivert.googlecode.com/svn/trunk@2773 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-04-16 00:55:13 +00:00
ray.j.greenwell ae67d873e8 Added maxList() and minList().
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2772 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-04-15 23:57:05 +00:00
samskivert 25f93f6bed Switch to JUnit4 style.
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2771 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-04-15 23:33:20 +00:00
ray.j.greenwell a072d4f1a4 Replace both of these by HashMultiset.
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2770 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-04-05 18:34:32 +00:00
ray.j.greenwell 5b1a640433 I thought since @ReplacedBy was both @Documented and @Inherited, that it would
show up on HashIntMap when I added it to IntMap. Not so. Apparently it only works
for superclasses, no implemented interfaces, and it may also not apply to
non-runtime annotations.

So: add @ReplacedBy to these IntMap-related classes.
I've not yet used @ReplacedBy on IntSet, and I guess some people still
really like their ArrayIntSet, but the memory gain is minimal and it's actually
usually a loss in terms of performance.


git-svn-id: https://samskivert.googlecode.com/svn/trunk@2769 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-04-05 18:31:29 +00:00
andrzej@threerings.net b7273518b8 getRange -> getInRange.
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2768 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-03-31 22:35:04 +00:00
ray.j.greenwell e42c8e8b60 getRange() -> getInRange().
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2767 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-03-31 22:09:00 +00:00
ray.j.greenwell dc4bbffb48 - Change ReplacedBy values...
- CollectionUtil.limit doesn't need to know the Collection type.


git-svn-id: https://samskivert.googlecode.com/svn/trunk@2766 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-03-31 21:11:08 +00:00
ray.j.greenwell a4d53dcbb8 Added getRange(), in int and float versions, and deprecated getInt(high, low),
because the parameter ordering and exclusive-of-low makes everybody cry.


git-svn-id: https://samskivert.googlecode.com/svn/trunk@2765 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-03-31 21:06:04 +00:00
ray.j.greenwell d68ba4d9a1 Allow a reason to be specified on ReplacedBy. Annotate IntMap.
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2764 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-03-31 17:41:41 +00:00
ray.j.greenwell ac30065aab Some more @ReplacedBy annotating.
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2763 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-03-29 21:49:25 +00:00
samskivert ed9f8502e0 No need for this kooky inner assignment.
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2762 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-03-29 16:57:24 +00:00
ray.j.greenwell aab57210e5 Use @ReplacedBy a few more places.
I'm going to start adding this more aggressively as I come across "old things".


git-svn-id: https://samskivert.googlecode.com/svn/trunk@2761 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-03-26 17:57:47 +00:00
ray.j.greenwell b168db60f4 Let's have this annotation be inherited.
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2760 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-03-26 17:57:06 +00:00
samskivert bfc97858b6 Patch from Dave to excise all remaining tabs.
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2759 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-03-24 21:37:44 +00:00
charlie.groves 1eec46f02a 1.5 compatibility for yohoho
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2758 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-03-08 09:33:55 +00:00
samskivert 8d3dbe9346 If PERF_TRACK was set to false, start was never initialized, so compilation
would fail.


git-svn-id: https://samskivert.googlecode.com/svn/trunk@2757 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-03-07 19:19:19 +00:00
samskivert 6facd3d12f 1.7 javac is apparently more perceptive than ejc when it comes to warning about
raw type usage. I'm surprised that the Eclipse code hygienist failed to catch
these. Also had to be slightly more blatant in a few places where we're
subverting the generics type system because the 1.7 javac is less tolerant of
the fast and loose.

For future reference, that usually means first assigning a reference to a
wildcard and then casting that to what you want:

Foo<?> fc = someFooWithCrazyAssParameters;
@SuppressWarnings("unchecked") Foo<Object> fo = (Foo<Object>)fc;

instead of just:

@SuppressWarnings("unchecked") Foo<Object> fo =
    (Foo<Object>)someFooWithCrazyAssParameters;

because javac won't let you do casts that are inconvertible and it's smarter
about what sort of generic types are convertible to one another.

Hopefully this future reference won't be needed because we won't be needing to
subvert the type system. But when reflection is involved, it's hard not to end
up doing a bit of the old Father Knows Best.


git-svn-id: https://samskivert.googlecode.com/svn/trunk@2756 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-03-07 18:10:10 +00:00
ray.j.greenwell 82083248a6 Typo. Caught by Charlie Groves. I shoulda just used his diff directly
but I omitted one thing and... well, look where it got me.


git-svn-id: https://samskivert.googlecode.com/svn/trunk@2755 6335cc39-0255-0410-8fd6-9bcaacd3b74c
2010-03-05 01:02:27 +00:00