diff options
| author | Yong He <yonghe@outlook.com> | 2021-08-26 10:30:35 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-08-26 10:30:35 -0700 |
| commit | b2ad8e99a82884bb157e1be76b1ad7eb0e481457 (patch) | |
| tree | 3f5357083b5972761d516b70cb51a4fa7ab72cd5 /tools/render-test/shader-input-layout.cpp | |
| parent | 33f7e1599cbecb32c23787b37b2bf3b34bdd5c84 (diff) | |
Add API to control interface specialization. (#1925)
Diffstat (limited to 'tools/render-test/shader-input-layout.cpp')
| -rw-r--r-- | tools/render-test/shader-input-layout.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/tools/render-test/shader-input-layout.cpp b/tools/render-test/shader-input-layout.cpp index 2e0741cea..7e6d290c8 100644 --- a/tools/render-test/shader-input-layout.cpp +++ b/tools/render-test/shader-input-layout.cpp @@ -837,6 +837,17 @@ namespace renderer_test parentForNewVal->addField(field); } + void parseTypeConformance(Misc::TokenReader& parser) + { + ShaderInputLayout::TypeConformanceVal conformance; + conformance.derivedTypeName = parseTypeName(parser); + parser.Read(":"); + conformance.baseTypeName = parseTypeName(parser); + if (parser.AdvanceIf("=")) + conformance.idOverride = parser.ReadInt(); + layout->typeConformances.add(conformance); + } + void parseLine(Misc::TokenReader& parser) { if (parser.LookAhead("entryPointSpecializationArg") @@ -872,6 +883,10 @@ namespace renderer_test { parseSetEntry(parser); } + else if (parser.AdvanceIf("type_conformance")) + { + parseTypeConformance(parser); + } else { parseValEntry(parser); |
