Currently, the highWater mark used in the inua.eio.Buffer class represents one
past the maximum accessible value. For example, capacity is highWater -
lowWater. When we are getting bytes and want to check that we are ok, we read
while we are less than bound (highWater).
If we are mapping memory to the ByteBuffer class, then we want the high water
mark to represent the top location we can reference because on a 64-bit address
system such as AMD64, max addr + 1 ends up being 0 as we roll over 64-bits.
In the aforementioned getting bytes from ByteBuffer, we want to continue while
the offset is less than equal to bound. Thus, we can specify 0xffffffffffffffff
l for the max.
Add a test testMemoryBufferCapacity() for it. The highWater is always be
0xffffffffffffffffL at 64-bit.
2007-11-22 Zhao Shujing <email@example.com>
* TestByteBuffer.java(testMemoryBufferCapacity()): New test.