On May 20, 2015, at 7:32 PM, Ivan Gerasimov <ivan.gerasi...@oracle.com> wrote:
>> Just had an idea... I believe static intializers are executed in textual 
>> order. So you could have a static code block after all static UnicodeBlock 
>> instances have been defined that asserts the size == 510 (or is <= 1024 * 
>> 0.75). In that case i would argue a static final representing the expected 
>> size is justified.
>>  Then your test can derive the initial capacity from mapSize.
> 
> I've just checked www.unicode.org to see how many new entries we can expect 
> in the nearest future.
> Unicode 7 will add 32 new blocks (96 with aliases): 
> http://www.unicode.org/versions/Unicode7.0.0/
> Unicode 8 will add 10 more blocks (30 with aliases): 
> http://www.unicode.org/versions/beta-8.0.0.html
> 
> So, after implementing Unicode 7 and 8 in java we're going to have 510+96+30 
> = 636 entries in the map.
> The internal array of size 1024 (as it will be, if (510/.75 + 1) is used for 
> the initial capacity), is going to be sufficient to hold all these.
> 

Nice investigation. What you have written above would be useful in a comment on 
the map.

Paul.

> So, I think we're going to be good for a few next years.
> And once the number of entries exceeds 768, the resgression test will warn us.
> 
> 
> Here's the update with the corrections to the test as you suggested:
> http://cr.openjdk.java.net/~igerasim/8080535/03/webrev/
> 
> Sincerely yours,
> Ivan

Reply via email to