Hi Vicente,
On 12/05/2018 09:13 PM, Vicente Romero wrote:
Hi Roger,
Thanks for your comments, see my comments below. I have published
another iteration at [1]
Thanks,
Vicente
[1] http://cr.openjdk.java.net/~vromero/8210031/webrev.12/
- bootStrapArgs() - the return is always non-null, with zero length
array for non args?
it has to be, IMO, as the private constructor that is the only one
that assigns a value to field bootstrapArgs makes sure that the
assigned value is non-null
My point is that the javadoc is a specification; so the reader should
not need to
look at an implementation to completely understand the required behavior.
DynamicConstantDesc.java:
- First sentences should end with period. "."
- ofCanonical: 2nd sentence, "Classes ... produces ... a
ConstantDesc"; grammar?
- of Canaonical(): So a conforming implementation is not required to
return the
well known values, only suggested.
ClassDesc.java:
- The create methods should not be required to create new
instances. Use "return" instead of "create".
- How are class descriptors created for 'nested' classes (as opposed
to inner classes).
It is worth describing or referencing how that should be done.
not sure I get what you mean. If you want to create a class descriptor
for a nested class you should be able to invoke inner() with an string
containing a number, what should be made more clear here in your opinion?
In other places in java specs, there is a distinction made between
'inner' classes and 'nested' classes.
If the same API is used for both, it would be clearer to the reader if
it mentioned nested.
Thanks, Roger
MethodTypeDesc.java:
- First sentences should end with period. "."
Regards, Roger
On 12/05/2018 01:12 PM, Mandy Chung wrote:
On 12/3/18 11:12 AM, Vicente Romero wrote:
Hi all,
Can I have the final nod to the JVM constants API, there have been
some changes since the last review iteration. Thanks to the
internal and external developers that have taken the time to
provide feedback so far. The links to the last versions are:
webrev: http://cr.openjdk.java.net/~vromero/8210031/webrev.10/
javadoc:
http://cr.openjdk.java.net/~vromero/8210031/javadoc.18/overview-summary.html
specdiff:
http://cr.openjdk.java.net/~vromero/8210031/specdiff.08/overview-summary.html
I reviewed webrev.10 and overall looks good to me. A couple of
minor comments and some of them seems to be fixed already in amber
repo. No need to generate a new webrev.
Nit: The javadoc of the new methods starts with "Returns", "Return",
"Produce", "Create", "Resolve", "Compares" etc. It'd be good to do a
pass and fix the verb form consistently.
src/java.base/share/classes/java/lang/Class.java
nit: Line 163 seems to have extra white-spaces, not aligned with
the other superinterfaces.
src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ClassWriterImpl.java
74 private static final Set<String> suppressSubtypesSet
75 = Set.of("java.lang.Object",
76 "org.omg.CORBA.Object");
This is not related to your change. CORBA is no longer in JDK.
Maybe this special casing is no longer needed. It may worth
filing a JBS issue to examine this.
ConstantDescs.java
64 // Don't change the order of these declarations!
Is there any code depending on this order?
DirectMethodHandleDesc.java
46 * {@link MethodHandle}. A {@linkplain
DirectMethodHandleDescImpl} corresponds to
typo: DirectMethodHandleDescImpl
57 /**
58 * Kinds of method handles that can be described with
{@linkplain DirectMethodHandleDesc}.
59 */
60 enum Kind {
This needs @since 12
DynamicCallSiteDesc.java
59 * @param bootstrapMethod a {@link
DirectMethodHandleDescImpl} describing the
60 * bootstrap method for the {@code
invokedynamic}
typo: DirectMethodHandleDescImpl and in a few other @param
Mandy