< prev index next >

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

Print this page

 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         // not used
 68         VIRTUAL_THREADS,
 69         @JEP(number=442, title="Foreign Function & Memory API", status="Third Preview")
 70         FOREIGN,
 71         @JEP(number=430, title="String Templates", status="First Preview")
 72         STRING_TEMPLATES,
 73         @JEP(number=443, title="Unnamed Patterns and Variables")
 74         UNNAMED,
 75         @JEP(number=445, title="Unnamed Classes and Instance Main Methods")
 76         UNNAMED_CLASSES,




 77         /**
 78          * A key for testing.
 79          */
 80         @JEP(number=0, title="Test Feature")
 81         TEST,
 82         ;
 83     }
 84 
 85     /**
 86      * Annotation identifying the JEP associated with a preview feature.
 87      */
 88     @Target(ElementType.FIELD)
 89     @Retention(RetentionPolicy.CLASS)
 90     @interface JEP {
 91         /** JEP number */
 92         int number() default 0;
 93         /** JEP title in plain text */
 94         String title();
 95         /** JEP status such as "Preview", "Second Preview", etc */
 96         String status() default "Preview";

 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         // not used
 68         VIRTUAL_THREADS,
 69         @JEP(number=442, title="Foreign Function & Memory API", status="Third Preview")
 70         FOREIGN,
 71         @JEP(number=430, title="String Templates", status="First Preview")
 72         STRING_TEMPLATES,
 73         @JEP(number=443, title="Unnamed Patterns and Variables")
 74         UNNAMED,
 75         @JEP(number=445, title="Unnamed Classes and Instance Main Methods")
 76         UNNAMED_CLASSES,
 77         @JEP(number=446, title="Scoped Values", status="Preview")
 78         SCOPED_VALUES,
 79         @JEP(number=453, title="Structured Concurrency", status="Preview")
 80         STRUCTURED_CONCURRENCY,
 81         /**
 82          * A key for testing.
 83          */
 84         @JEP(number=0, title="Test Feature")
 85         TEST,
 86         ;
 87     }
 88 
 89     /**
 90      * Annotation identifying the JEP associated with a preview feature.
 91      */
 92     @Target(ElementType.FIELD)
 93     @Retention(RetentionPolicy.CLASS)
 94     @interface JEP {
 95         /** JEP number */
 96         int number() default 0;
 97         /** JEP title in plain text */
 98         String title();
 99         /** JEP status such as "Preview", "Second Preview", etc */
100         String status() default "Preview";
< prev index next >