<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/126577>126577</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            [HLSL] Implement Root Signature Parsing of Root Parameters
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            HLSL
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
            inbelic
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          inbelic
      </td>
    </tr>
</table>

<pre>
    This issues handles defining `RootCBV`, `RootSRV` and `RootUAV` in-memory representation and the extra keyword/enum tokens required for lexing. Then we implement a `ParseRootParameters` method to construct the struct using previously defined parse methods.

Dependent on:

AC:
- [ ] Define the required keyword/enums for the Lexer
- [ ] Define the parsing method
- [ ] Define the in-memory representation of `RootCBV`, `RootSRV` and `RootUAV`
- [ ] Add additional unit testing
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJyUU8Fu4yAQ_Rp8GSXC2CTNwYe0UbQr9VC13b1jM7HZYvDC0DZ_v8JxW_WQw56MnmfmvQdvVIymd4gNk7dMCONatKZjQjB5KFSiwYdmAYvW63PzPJgIJsaEEQbltMUIGk_GGdcD2_BH7-nu9jfbcCbuPoCnxwyAcvoD-bWfEeNWI44-nCHgFDCiI0XGu7mUBgR8p6DgBc9vPmgmjujSCORf0EUI-DeZgBpOPoDFd-P6NTwP6OANwYyTxREdgcqcDypEzMQPKqgRCUPM_CPS4DWQh867SCF1NNMuxxSzqyngq_Ep2vPFKWqY8rilO64Z3zO-P-CETmdG71i1v4D7u8txBUzeApMHOMwjZpZPA9_9xdlQLrjHdwzXurOGLO-i4lrV1Rv2p_9-rm8ce61BaW3yMGUhOUNAGMm4vtBNpXfVThXYlNtqJ8qai7IYmnarcCdRt1jpqt6IerPVN6dWVlyJWmBXmEZwIbkoebnjvLxZK7E7ybrjsmu3tewkqzmOyti1ta_j2oe-mLPYlGIjt9vCqhZtXML84_7pfklyaHL9qk19ZDW3JlL8mkCG7LwAc4M8wM_P7GTv8GR6pygFhIflyv3p8ucrTEUKthmIppjfWxyZOPaGhtSuOz8yccxky2c1Bf8HO2LieNkjJo6L_NdG_AsAAP__cJAqUA">