<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body>
    <font size="4"><font face="monospace">Regarding #1, I actually would
        have thought we'd have integrated the "jdk types" into the JDK
        as RFEs already and they'd be removed by the time we integrated
        the bytecode API, so hadn't given a lot of thought to package
        naming.  If this won't be the case, then we should probably let
        the package name reflect the final resting place, so something
        like jdk.i.c.java.lang.constant?  <br>
        <br>
        Assuming that the package will go after upstreaming
        {Module,Package}Desc, I think what you're suggesting is that we
        will eventually put the Signature stuff somewhere outside the
        bytecode library as well?  I think this is a bigger question,
        which is: for types related to quantities in classfiles that are
        not tied to the bytecode library, where should they live?  These
        include things like descriptor parsing and validation (which are
        duplicated in a dozen places in the JDK), signature parsing,
        conversion between internal and external names, etc.  <br>
        <br>
        <br>
        <br>
      </font></font><br>
    <div class="moz-cite-prefix">On 3/1/2023 4:24 AM, Adam Sotona wrote:<br>
    </div>
    <blockquote type="cite" cite="mid:CY4PR1001MB215085BDF028E6BB055FE38E8CAD9@CY4PR1001MB2150.namprd10.prod.outlook.com">
      
      <meta name="Generator" content="Microsoft Word 15 (filtered
        medium)">
      <style>@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;
        mso-fareast-language:EN-US;}p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
        {mso-style-priority:34;
        margin-top:0cm;
        margin-right:0cm;
        margin-bottom:0cm;
        margin-left:36.0pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;
        mso-fareast-language:EN-US;}.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;
        mso-fareast-language:EN-US;}div.WordSection1
        {page:WordSection1;}ol
        {margin-bottom:0cm;}ul
        {margin-bottom:0cm;}</style>
      <div class="WordSection1">
        <p class="MsoNormal"><span lang="EN-US">Hi,<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">Based on PR feedback I
            would like to propose two possible API changes:<o:p></o:p></span></p>
        <ol style="margin-top:0cm" type="1" start="1">
          <li class="MsoListParagraph" style="margin-left:0cm;mso-list:l0 level1 lfo1"><span lang="EN-US">Rename
            </span><span style="font-family:Consolas" lang="EN-US">jdk.internal.classfile.jdktypes</span><span lang="EN-US"> package to
            </span><span style="font-family:Consolas" lang="EN-US">jdk.internal.classfile.constant</span><span lang="EN-US"> to reflect the fact that
            </span><span style="font-family:Consolas" lang="EN-US">PackageDesc</span><span lang="EN-US"> and
            </span><span style="font-family:Consolas" lang="EN-US">ModuleDesc</span><span lang="EN-US"> are complementing
            </span><span style="font-family:Consolas" lang="EN-US">java.lang.constant</span><span lang="EN-US"> package content.<o:p></o:p></span></li>
          <li class="MsoListParagraph" style="margin-left:0cm;mso-list:l0 level1 lfo1"><span lang="EN-US">Move
            </span><span style="font-family:Consolas" lang="EN-US">Signature</span><span lang="EN-US">,
            </span><span style="font-family:Consolas" lang="EN-US">MethodSignature</span><span lang="EN-US"> and
            </span><span style="font-family:Consolas" lang="EN-US">ClassSignature</span><span lang="EN-US"> from
            </span><span style="font-family:Consolas" lang="EN-US">jdk.internal.classfile</span><span lang="EN-US"> package to the same package as #1, as the
              signature models are similar to descriptor models and
              serve the same purpose.<o:p></o:p></span></li>
        </ol>
        <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">Please let me know if
            you agree or disagree individually with #1 and #2.<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">Thank you,<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">Adam<o:p></o:p></span></p>
      </div>
    </blockquote>
    <br>
  </body>
</html>