RFR: JDK-8285932 Implementation of JEP-430 String Templates (Preview) [v3]

Rémi Forax forax at openjdk.org
Fri Oct 28 18:50:34 UTC 2022


On Fri, 28 Oct 2022 17:57:30 GMT, Jim Laskey <jlaskey at openjdk.org> wrote:

>> Enhance the Java programming language with string templates, which are similar to string literals but contain embedded expressions. A string template is interpreted at run time by replacing each expression with the result of evaluating that expression, possibly after further validation and transformation. This is a [preview language feature and API](http://openjdk.java.net/jeps/12).
>
> Jim Laskey has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Update TemplateRuntime::combine

src/java.base/share/classes/java/lang/AbstractStringBuilder.java line 32:

> 30: 
> 31: import java.io.IOException;
> 32: import java.util.*;

Please do not use import *.

src/java.base/share/classes/java/lang/invoke/StringConcatFactory.java line 36:

> 34: import java.lang.invoke.MethodHandles.Lookup;
> 35: import java.lang.template.StringTemplate;
> 36: import java.util.*;

Another import * here

src/java.base/share/classes/java/lang/invoke/StringConcatFactory.java line 118:

> 116:      * @since 20
> 117:      */
> 118:     public static final int MAX_INDY_CONCAT_ARG_SLOTS = 200;

I do not think it's a good idea to make that constant available for everybody given that it's an artefact of the implementation.

src/java.base/share/classes/java/lang/invoke/StringConcatFactory.java line 999:

> 997:      * Promote integral types to int.
> 998:      */
> 999:     private static Class<?> promoteIntType(Class<?> t) {

promoteToIntType ?

-------------

PR: https://git.openjdk.org/jdk/pull/10889


More information about the compiler-dev mailing list