On Wed, 5 Feb 2025 23:41:19 GMT, Chen Liang <li...@openjdk.org> wrote:

> `MethodHandles.byteArrayViewVarHandle` exposes checked multi-byte access to 
> byte arrays via VarHandle. This larger access speeds up many operations, yet 
> it cannot be used in early bootstrap, and as a result, people tend to use 
> `Unsafe` which can threaten memory safety of the Java Platform.
> 
> To promote the safe use of multi-byte access, I propose to move the checked 
> implementations from VarHandle to ByteArray to allow earlier use and reduce 
> maintenance costs. In addition, ByteArrayLittleEndian is consolidated, and 
> now the access methods are distinguished by BO (byte order) / BE (big endian) 
> / LE (little endian) suffixes to indicate their access features.

src/java.base/share/classes/jdk/internal/util/ByteArray.java line 57:

> 55:     }
> 56: 
> 57:     public static short getShortBO(byte[] array, int index, boolean big) {

If we have methods `getShortBE` and `getShortLE` then perhaps this method 
should just be called `getShort`.

src/java.base/share/classes/jdk/internal/util/ByteArray.java line 62:

> 60:     }
> 61: 
> 62:     public static int getIntBO(byte[] array, int index, boolean big) {

I suggest to rename `big` to `bigEndian` to use the same naming conventions as 
in `Unsafe`.

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/23478#discussion_r1944819768
PR Review Comment: https://git.openjdk.org/jdk/pull/23478#discussion_r1944817837

Reply via email to