Ryan Harrison | dbc13af | 2022-02-21 15:19:07 +0000 | [diff] [blame] | 1 | {{- /* |
| 2 | -------------------------------------------------------------------------------- |
Ben Clayton | cde5009 | 2022-07-26 15:46:44 +0000 | [diff] [blame] | 3 | Template file for use with tools/src/cmd/gen to generate parameter_usage.cc |
Ryan Harrison | dbc13af | 2022-02-21 15:19:07 +0000 | [diff] [blame] | 4 | |
Ben Clayton | a123b89 | 2022-07-27 16:36:35 +0000 | [diff] [blame] | 5 | To update the generated file, run: |
| 6 | ./tools/run gen |
| 7 | |
Ryan Harrison | dbc13af | 2022-02-21 15:19:07 +0000 | [diff] [blame] | 8 | See: |
Ben Clayton | cde5009 | 2022-07-26 15:46:44 +0000 | [diff] [blame] | 9 | * tools/src/cmd/gen for structures used by this template |
Ryan Harrison | dbc13af | 2022-02-21 15:19:07 +0000 | [diff] [blame] | 10 | * https://golang.org/pkg/text/template/ for documentation on the template syntax |
| 11 | -------------------------------------------------------------------------------- |
| 12 | */ -}} |
| 13 | |
Ben Clayton | 2dffb3c | 2023-08-07 12:35:33 +0000 | [diff] [blame] | 14 | {{- $I := LoadIntrinsics "src/tint/lang/core/core.def" -}} |
| 15 | |
Ben Clayton | 015fbe7 | 2023-08-09 07:46:44 +0000 | [diff] [blame] | 16 | #include "src/tint/lang/core/parameter_usage.h" |
Ryan Harrison | dbc13af | 2022-02-21 15:19:07 +0000 | [diff] [blame] | 17 | |
Ben Clayton | 015fbe7 | 2023-08-09 07:46:44 +0000 | [diff] [blame] | 18 | namespace tint::core { |
Ryan Harrison | dbc13af | 2022-02-21 15:19:07 +0000 | [diff] [blame] | 19 | |
Ben Clayton | 015fbe7 | 2023-08-09 07:46:44 +0000 | [diff] [blame] | 20 | std::string_view ToString(ParameterUsage usage) { |
Ben Clayton | 507a671 | 2022-05-03 16:15:43 +0000 | [diff] [blame] | 21 | switch (usage) { |
| 22 | case ParameterUsage::kNone: |
| 23 | return "none"; |
Ben Clayton | 2dffb3c | 2023-08-07 12:35:33 +0000 | [diff] [blame] | 24 | {{- range $I.Sem.UniqueParameterNames }} |
Ben Clayton | 507a671 | 2022-05-03 16:15:43 +0000 | [diff] [blame] | 25 | case ParameterUsage::k{{PascalCase .}}: |
| 26 | return "{{.}}"; |
Ryan Harrison | dbc13af | 2022-02-21 15:19:07 +0000 | [diff] [blame] | 27 | {{- end }} |
Ben Clayton | 507a671 | 2022-05-03 16:15:43 +0000 | [diff] [blame] | 28 | } |
| 29 | return "<unknown>"; |
Ryan Harrison | dbc13af | 2022-02-21 15:19:07 +0000 | [diff] [blame] | 30 | } |
| 31 | |
Ben Clayton | 015fbe7 | 2023-08-09 07:46:44 +0000 | [diff] [blame] | 32 | } // namespace tint::core |