> The API specification for descriptorString not being a strict inverse of > Class::forName and MethodType::fromDescriptorString are not entirely correct. > > 1. Class::descriptorString was never an inverse of Class::forName, which > takes a binary name instead. The note about different class loaders is moved > to getName, as ClassDesc requires an explicit lookup for resolution already. > 2. MethodType::toMethodDescriptorString ends with a meaningless sentence: > "fromMethodDescriptorString, because the latter requires a suitable class > loader argument.", and the "Note:" section can be replaced with an `@apiNote`. > 3. Both of these didn't mention hidden classes (or other > non-nominally-describable classes) as a reason that prevents the inversion > operation, in addition to distinct class loaders. Added valid method type > descriptor/binary name as a prerequisite for the distinct class loader > explanation. > > A few user-defined anchor links are replaced with updated javadoc link tag > format as well. The explicit html-style links in `@see` tags are unchanged in > order to retain the non-code output. > > The rendered specifications: > https://cr.openjdk.org/~liach/8309819/06/java.base/java/lang/Class.html > https://cr.openjdk.org/~liach/8309819/06/java.base/java/lang/invoke/MethodType.html
Chen Liang has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 15 additional commits since the last revision: - Merge branch 'master' into fix/descstring-spec - Update the distinct class note, thanks to mandy - Merge branch 'master' into fix/descstring-spec - produce identical component descriptors in descriptor strings -> cannot be distinguished in descriptor strings - Reword of the distinct-class-same-descriptor note - Missed recommendations from Alan - Review and updates for 8310242 - Merge branch 'master' into fix/descstring-spec - Update the note for getName - Convert the note in fromDescriptorString to apiNote - ... and 5 more: https://git.openjdk.org/jdk/compare/4ca10ecb...ef7004e4 ------------- Changes: - all: https://git.openjdk.org/jdk/pull/14411/files - new: https://git.openjdk.org/jdk/pull/14411/files/3bea7506..ef7004e4 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=14411&range=09 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=14411&range=08-09 Stats: 10497 lines in 446 files changed: 4025 ins; 3413 del; 3059 mod Patch: https://git.openjdk.org/jdk/pull/14411.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/14411/head:pull/14411 PR: https://git.openjdk.org/jdk/pull/14411