Classfile API `ConstantPool::entryCount` and `ConstantPool::entryByIndex` methods are confusing and unsafe to use without knowledge of constant pool specification. This patch renames `ConstantPool::entryCount` to `ConstantPool::size` and adds checks to `ConstantPool::entryByIndex` for invalid or unusable indexes. `ConstantPool` newly extends `Iterable<PoolEntry>` for simplified user iteration over all pool entries. Range checks for invalid index have been added also to `ConstantPoo::bootstrapMethodEntry` methods and several `@jvms` javadoc tags have been added to pool entries.
Please review. Thanks, Adam ------------- Commit messages: - 8315678: Classfile API ConstantPool::entryCount and ConstantPool::entryByIndex is confusing Changes: https://git.openjdk.org/jdk/pull/15567/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=15567&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8315678 Stats: 100 lines in 27 files changed: 68 ins; 6 del; 26 mod Patch: https://git.openjdk.org/jdk/pull/15567.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/15567/head:pull/15567 PR: https://git.openjdk.org/jdk/pull/15567