Here are spec change documents for two new JVM instance creation features that 
have been proposed to support inline classes.

They're both fairly small, but involve a handful of different design choices. 
We can further discuss those design choices in this thread.

1) Abstract instance initialization methods

http://cr.openjdk.java.net/~dlsmith/special-methods/special-methods-20200210/specs/abstract-init-jvms.html

Classes with abstract <init> methods require no code execution to initialize 
instances, and so are candidates to be superclasses of inline classes.

2) Unnamed factory methods

http://cr.openjdk.java.net/~dlsmith/special-methods/special-methods-20200210/specs/factory-methods-jvms.html

The special name '<new>' can be used to declare static factory methods, 
including in an inline class. (In the previous iteration, we used '<init>' with 
a non-'void' return. We since discussed avoiding this overloading and 
associated complexity by choosing a different name.)

Reply via email to