RFR 8135248: Add utility methods to check indexes and ranges

Peter Levart peter.levart at gmail.com
Wed Sep 30 07:34:11 UTC 2015

On 09/29/2015 10:01 PM, Paul Sandoz wrote:
>> >I think it's worth introducing Preconditions class. checkNotNull overloads are equally well suited for Objects as they are for Preconditions, so it's not wrong to have them in both, while checkIndex and friends don't really suit any of the existing classes. If I would have to search for them in among existing classes, Arrays would be the place to look first. List interface the 2nd. IndexOutOfBoundsException wouldn't come to my mind, as Exception(s) are usually not homes for logic, neither would Integer which is to abstract to mentally associate it with array or list index checks.
>> >
> The concern i have is once Preconditions is let loose the scope expands with proposals for “just one more method” (there is even the opportunity to bike shed over the names checkNotNull or requiresNotNull etc. etc.)  I don’t want to discuss such additional methods right now otherwise i will never make progress with the current set.
> A way forward is to initially include Preconditions with*only*  the check index methods, and in subsequent proposals selectively add more. At the moment i am still leaning towards Objects.
> Paul.

I promise I won't discuss any other methods - just checkIndex and 
friends (small steps...)
But having them in Objects would be very strange. Indexes are not 
objects - they are values.

Regards, Peter

More information about the core-libs-dev mailing list