< prev index next >

src/java.base/share/classes/jdk/internal/javac/PreviewFeature.java

Print this page

 47          ElementType.PACKAGE,
 48          ElementType.MODULE,
 49          ElementType.TYPE})
 50  // CLASS retention will hopefully be sufficient for the purposes at hand
 51 @Retention(RetentionPolicy.CLASS)
 52 // *Not* @Documented
 53 public @interface PreviewFeature {
 54     /**
 55      * Name of the preview feature the annotated API is associated
 56      * with.
 57      */
 58     public Feature feature();
 59 
 60     public boolean reflective() default false;
 61 
 62     /**
 63      * Enum of preview features in the current release.
 64      * Values should be annotated with the feature's {@code JEP}.
 65      */
 66     public enum Feature {



 67         // while building the interim javac, the ClassReader will produce a warning when loading a class
 68         // keeping the constant of a feature that has been integrated or dropped, serves the purpose of muting such warnings.
 69 
 70         //---
 71         @JEP(number=495, title="Simple Source Files and Instance Main Methods", status="Fourth Preview")
 72         IMPLICIT_CLASSES,
 73         @JEP(number=487, title="Scoped Values", status="Fourth Preview")
 74         SCOPED_VALUES,
 75         @JEP(number=499, title="Structured Concurrency", status="Fourth Preview")
 76         STRUCTURED_CONCURRENCY,
 77         CLASSFILE_API,
 78         STREAM_GATHERERS,
 79         @JEP(number=494, title="Module Import Declarations", status="Second Preview")
 80         MODULE_IMPORTS,
 81         @JEP(number=478, title="Key Derivation Function API", status="Preview")
 82         KEY_DERIVATION,
 83         LANGUAGE_MODEL,
 84         /**
 85          * A key for testing.
 86          */
 87         @JEP(number=2_147_483_647, title="Test Feature")
 88         TEST,
 89         ;

 47          ElementType.PACKAGE,
 48          ElementType.MODULE,
 49          ElementType.TYPE})
 50  // CLASS retention will hopefully be sufficient for the purposes at hand
 51 @Retention(RetentionPolicy.CLASS)
 52 // *Not* @Documented
 53 public @interface PreviewFeature {
 54     /**
 55      * Name of the preview feature the annotated API is associated
 56      * with.
 57      */
 58     public Feature feature();
 59 
 60     public boolean reflective() default false;
 61 
 62     /**
 63      * Enum of preview features in the current release.
 64      * Values should be annotated with the feature's {@code JEP}.
 65      */
 66     public enum Feature {
 67         @JEP(number=401, title="Value Classes and Objects", status = "Preview")
 68         VALUE_OBJECTS,
 69 
 70         // while building the interim javac, the ClassReader will produce a warning when loading a class
 71         // keeping the constant of a feature that has been integrated or dropped, serves the purpose of muting such warnings.

 72         //---
 73         @JEP(number=495, title="Simple Source Files and Instance Main Methods", status="Fourth Preview")
 74         IMPLICIT_CLASSES,
 75         @JEP(number=487, title="Scoped Values", status="Fourth Preview")
 76         SCOPED_VALUES,
 77         @JEP(number=499, title="Structured Concurrency", status="Fourth Preview")
 78         STRUCTURED_CONCURRENCY,
 79         CLASSFILE_API,
 80         STREAM_GATHERERS,
 81         @JEP(number=494, title="Module Import Declarations", status="Second Preview")
 82         MODULE_IMPORTS,
 83         @JEP(number=478, title="Key Derivation Function API", status="Preview")
 84         KEY_DERIVATION,
 85         LANGUAGE_MODEL,
 86         /**
 87          * A key for testing.
 88          */
 89         @JEP(number=2_147_483_647, title="Test Feature")
 90         TEST,
 91         ;
< prev index next >