Currently annotation values are limited to what is encodable as a constant in
the constant pool.
With Condy, we can expand the number of values that can be encodable as a
constant in the constant pool to the infinity by allowing a reference to any
non-mutable class to be encoded as an annotation values.
For that we need to have a 'protocol' that
- encode an instance of a user defined non-mutable class as a condy by the
- decode an instance of a user defined non-mutable class by the JDK runtime.
Records with their constructors do not provide enough meta-information for
that, the parameter names of the constructors may not be available at runtime.
So i think the constructors parameter names of a Record should be always
recorded (as with --parameters was specified for the constructors) to enable
non-mutable records to be annotation values.