<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body style="overflow-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;">
Thank you.<br>
<div><br>
<blockquote type="cite">
<div>On Mar 23, 2023, at 1:29 PM, Gavin Bierman <gavin.bierman@oracle.com> wrote:</div>
<br class="Apple-interchange-newline">
<div>
<div style="overflow-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;">
I have updated the spec change document: https://cr.openjdk.org/~gbierman/jep430/latest/
<div><br>
</div>
<div>Thanks,</div>
<div>Gavin<br>
<div><br>
<blockquote type="cite">
<div>On 17 Mar 2023, at 13:24, Jim Laskey <james.laskey@oracle.com> wrote:</div>
<br class="Apple-interchange-newline">
<div>
<div style="overflow-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;">
<div style="font-size: 14px;">This is a  heads up about some name changes coming to the string template feature with the intent of eliminating the “java.lang.template” package along with clarifying the processor hierarchy,</div>
<div><br>
</div>
<div>
<table border="0" cellpadding="0" cellspacing="0" width="641" style="border-collapse: collapse; width: 481pt;">
<colgroup><col width="353" style="width: 265pt;"><col width="288" style="width: 216pt;"></colgroup>
<tbody>
<tr height="21" style="height: 16pt;">
<td height="21" width="353" style="padding-top: 1px; padding-right: 1px; padding-left: 1px; font-size: 12pt; vertical-align: bottom; border: none; white-space: nowrap; height: 16pt; width: 265pt;">
<u><font face="Consolas">Old</font></u></td>
<td width="288" style="padding-top: 1px; padding-right: 1px; padding-left: 1px; font-size: 12pt; vertical-align: bottom; border: none; white-space: nowrap; width: 216pt;">
<u><font face="Consolas">New</font></u></td>
</tr>
<tr height="21" style="height: 16pt;">
<td height="21" style="padding-top: 1px; padding-right: 1px; padding-left: 1px; font-size: 12pt; vertical-align: bottom; border: none; white-space: nowrap; height: 16pt;">
<font face="Consolas">java.lang.template.Carriers*</font></td>
<td style="padding-top: 1px; padding-right: 1px; padding-left: 1px; font-size: 12pt; vertical-align: bottom; border: none; white-space: nowrap;">
<font face="Consolas">java.lang.runtime.Carriers*</font></td>
</tr>
<tr height="21" style="height: 16pt;">
<td height="21" style="padding-top: 1px; padding-right: 1px; padding-left: 1px; font-size: 12pt; vertical-align: bottom; border: none; white-space: nowrap; height: 16pt;">
<font face="Consolas">java.lang.template.ReferencedKeyMap*</font></td>
<td style="padding-top: 1px; padding-right: 1px; padding-left: 1px; font-size: 12pt; vertical-align: bottom; border: none; white-space: nowrap;">
<font face="Consolas">java.lang.runtime.ReferencedKeyMap*</font></td>
</tr>
<tr height="21" style="height: 16pt;">
<td height="21" style="padding-top: 1px; padding-right: 1px; padding-left: 1px; font-size: 12pt; vertical-align: bottom; border: none; white-space: nowrap; height: 16pt;">
<font face="Consolas">java.lang.template.ReferenceKey*</font></td>
<td style="padding-top: 1px; padding-right: 1px; padding-left: 1px; font-size: 12pt; vertical-align: bottom; border: none; white-space: nowrap;">
<font face="Consolas">java.lang.runtime.ReferenceKey*</font></td>
</tr>
<tr height="21" style="height: 16pt;">
<td height="21" style="padding-top: 1px; padding-right: 1px; padding-left: 1px; font-size: 12pt; vertical-align: bottom; border: none; white-space: nowrap; height: 16pt;">
<font face="Consolas">java.lang.template.StringTemplateImpl*</font></td>
<td style="padding-top: 1px; padding-right: 1px; padding-left: 1px; font-size: 12pt; vertical-align: bottom; border: none; white-space: nowrap;">
<font face="Consolas">java.lang.runtime.StringTemplateImpl*</font></td>
</tr>
<tr height="21" style="height: 16pt;">
<td height="21" style="padding-top: 1px; padding-right: 1px; padding-left: 1px; font-size: 12pt; vertical-align: bottom; border: none; white-space: nowrap; height: 16pt;">
<font face="Consolas">java.lang.template.StringTemplateImplFactory*  </font></td>
<td style="padding-top: 1px; padding-right: 1px; padding-left: 1px; font-size: 12pt; vertical-align: bottom; border: none; white-space: nowrap;">
<font face="Consolas">java.lang.runtime.StringTemplateImplFactory*</font></td>
</tr>
<tr height="21" style="height: 16pt;">
<td height="21" style="padding-top: 1px; padding-right: 1px; padding-left: 1px; font-size: 12pt; vertical-align: bottom; border: none; white-space: nowrap; height: 16pt;">
<font face="Consolas">java.lang.runtime.TemplateRuntime</font></td>
<td style="padding-top: 1px; padding-right: 1px; padding-left: 1px; font-size: 12pt; vertical-align: bottom; border: none; white-space: nowrap;">
<font face="Consolas">java.lang.runtime.TemplateRuntime</font></td>
</tr>
<tr height="21" style="height: 16pt;">
<td height="21" style="padding-top: 1px; padding-right: 1px; padding-left: 1px; font-size: 12pt; vertical-align: bottom; border: none; white-space: nowrap; height: 16pt;">
<font face="Consolas">java.lang.template.TemplateSupport*</font></td>
<td style="padding-top: 1px; padding-right: 1px; padding-left: 1px; font-size: 12pt; vertical-align: bottom; border: none; white-space: nowrap;">
<font face="Consolas">java.lang.runtime.TemplateSupport</font></td>
</tr>
<tr height="21" style="height: 16pt;">
<td height="21" style="padding-top: 1px; padding-right: 1px; padding-left: 1px; font-size: 12pt; vertical-align: bottom; border: none; white-space: nowrap; height: 16pt;">
<font face="Consolas">java.lang.template.StringTemplate</font></td>
<td style="padding-top: 1px; padding-right: 1px; padding-left: 1px; font-size: 12pt; vertical-align: bottom; border: none; white-space: nowrap;">
<font face="Consolas">java.lang.StringTemplate</font></td>
</tr>
<tr height="21" style="height: 16pt;">
<td height="21" style="padding-top: 1px; padding-right: 1px; padding-left: 1px; font-size: 12pt; vertical-align: bottom; border: none; white-space: nowrap; height: 16pt;">
<font face="Consolas">java.lang.template.ValidatingProcessor</font></td>
<td style="padding-top: 1px; padding-right: 1px; padding-left: 1px; font-size: 12pt; vertical-align: bottom; border: none; white-space: nowrap;">
<font face="Consolas">java.lang.StringTemplate.Processor</font></td>
</tr>
<tr height="21" style="height: 16pt;">
<td height="21" style="padding-top: 1px; padding-right: 1px; padding-left: 1px; font-size: 12pt; vertical-align: bottom; border: none; white-space: nowrap; height: 16pt;">
<font face="Consolas">java.lang.template.ProcessorLinkage</font></td>
<td style="padding-top: 1px; padding-right: 1px; padding-left: 1px; font-size: 12pt; vertical-align: bottom; border: none; white-space: nowrap;">
<font face="Consolas">java.lang.StringTemplate.Processor.Linkage</font></td>
</tr>
<tr height="21" style="height: 16pt;">
<td height="21" style="padding-top: 1px; padding-right: 1px; padding-left: 1px; font-size: 12pt; vertical-align: bottom; border: none; white-space: nowrap; height: 16pt;">
<font face="Consolas">java.lang.template.TemplateProcessor</font></td>
<td style="padding-top: 1px; padding-right: 1px; padding-left: 1px; font-size: 12pt; vertical-align: bottom; border: none; white-space: nowrap;">
<font face="Consolas">java.lang.StringTemplate.SimpleProcessor</font></td>
</tr>
<tr height="21" style="height: 16pt;">
<td height="21" style="padding-top: 1px; padding-right: 1px; padding-left: 1px; font-size: 12pt; vertical-align: bottom; border: none; white-space: nowrap; height: 16pt;">
<font face="Consolas">java.lang.template.StringProcessor</font></td>
<td style="padding-top: 1px; padding-right: 1px; padding-left: 1px; font-size: 12pt; vertical-align: bottom; border: none; white-space: nowrap;">
<font face="Consolas">java.lang.StringTemplate.StringProcessor</font></td>
</tr>
</tbody>
</table>
</div>
<div><font face="Consolas"><br>
</font></div>
<div><font face="Consolas">(*) - package private</font></div>
<div><br>
</div>
<div style="font-size: 14px;"><br>
</div>
<div style="font-size: 14px;">The new processor hierarchy will be;</div>
<div style="font-size: 14px;"><br>
</div>
<div><font face="Consolas"><span style="font-style: normal; font-size: 14px;">interface Processor<R, E></span></font></div>
<div><font face="Consolas"><span style="font-style: normal; font-size: 14px;">interface SimpleProcessor<R> extends Processor<R, RuntimeException></span></font></div>
<div><font face="Consolas"><span style="font-style: normal; font-size: 14px;">interface StringProcessor extends SimpleProcessor<String></span></font></div>
<div style="font-size: 14px;"><br>
</div>
<div style="font-size: 14px;">It will take me a few days to update the JEP, CSRs, PR and JLS, so stay tuned. As always, comments are welcome.</div>
<div style="font-size: 14px;"><br>
</div>
<div style="font-size: 14px;">Cheers,</div>
<div style="font-size: 14px;"><br>
</div>
<div style="font-size: 14px;">— Jim</div>
<div style="font-size: 14px;"><br>
</div>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</div>
</div>
</blockquote>
</div>
<br>
</body>
</html>