Hi, Why can't it just return void?
Florent On Thu, Jun 4, 2020 at 9:22 PM Mandy Chung <mandy.ch...@oracle.com> wrote: > > > On 6/4/20 9:43 AM, Chris Hegarty wrote: > > Mandy, > > > > I think this looks good. Just a few minor comments... > > > > The spec wording is hard, since the method is offering a conditional > initialization. I guess I expected to see something like “initializes > targetClass, if it has not been initialized already”, or some such. > > I added: > "This method causes {@code targetClass} to be initialized if it has > not been already initialized." > > to make it clear. > > > > The input and output is the same class instance. I don’t quite get that > from the spec. Can these be coupled together more obviously by their > descriptions? Maybe "@return targetClass, that is initialized" > > @return the class that has been initialized. > > I changed it to: > * @return {@code targetClass} that has been initialized > > Mandy > > > > -Chris. > > > >> On 4 Jun 2020, at 00:16, Mandy Chung <mandy.ch...@oracle.com> wrote: > >> > >> This proposes a new `Lookup::ensureClassInitialized` API as a > replacement > >> for `sun.misc.Unsafe::ensureClassInitialized`.The Lookup object must > have > >> the access to the given class being initialized. > >> > >> CSR: https://bugs.openjdk.java.net/browse/JDK-8245871 > >> > >> webrev: > >> http://cr.openjdk.java.net/~mchung/jdk15/webrevs/8235521/webrev.01/ > >> > >> This patch converts the JDK use of > `jdk.internal.misc.Unsafe::ensureClassInitialized` to > >> call this new API where appropriate. `Unsafe::ensureClassInitialized` > remains for java.lang.invoke.* internal implementation use. > >> > >> A framework can use `Lookup::privateLookupIn` to access a class in > another module if the module authorizes it by opening the packages for it > to access. Or a user can produce a less privileged lookup by > Lookup::dropLookupMode and pass it to the framework. > >> > >> `Class::ensureInitialized` was considered as an alternative. The > downside for this option is that it would be caller sensitive in order to > ensure the caller has the proper access to this class. And it may not work > for frameworks which have no access to user classes. It would have to > fallback toClass::forName` limited solution. > >> > >> Thanks > >> Mandy > >> > > -- [image: Nuxeo Logo] <https://www.nuxeo.com/> Florent Guillaume Head of R&D [image: LinkedIn] <https://www.linkedin.com/in/fguillaume/> [image: Twitter] <https://twitter.com/efge> [image: Github] <https://github.com/efge> Nuxeo Content Services Platform. Stay ahead.