blob: be27105913552a3a9a2f29086784a92de03c27ec [file] [log] [blame]
Ryan Harrisondbc13af2022-02-21 15:19:07 +00001{{- /*
2--------------------------------------------------------------------------------
Ben Claytoncde50092022-07-26 15:46:44 +00003Template file for use with tools/src/cmd/gen to generate parameter_usage.cc
Ryan Harrisondbc13af2022-02-21 15:19:07 +00004
Ben Claytona123b892022-07-27 16:36:35 +00005To update the generated file, run:
6 ./tools/run gen
7
Ryan Harrisondbc13af2022-02-21 15:19:07 +00008See:
Ben Claytoncde50092022-07-26 15:46:44 +00009* tools/src/cmd/gen for structures used by this template
Ryan Harrisondbc13af2022-02-21 15:19:07 +000010* https://golang.org/pkg/text/template/ for documentation on the template syntax
11--------------------------------------------------------------------------------
12*/ -}}
13
Ben Clayton2dffb3c2023-08-07 12:35:33 +000014{{- $I := LoadIntrinsics "src/tint/lang/core/core.def" -}}
15
Ben Clayton015fbe72023-08-09 07:46:44 +000016#include "src/tint/lang/core/parameter_usage.h"
Ryan Harrisondbc13af2022-02-21 15:19:07 +000017
Ben Clayton015fbe72023-08-09 07:46:44 +000018namespace tint::core {
Ryan Harrisondbc13af2022-02-21 15:19:07 +000019
Ben Clayton015fbe72023-08-09 07:46:44 +000020std::string_view ToString(ParameterUsage usage) {
Ben Clayton507a6712022-05-03 16:15:43 +000021 switch (usage) {
22 case ParameterUsage::kNone:
23 return "none";
Ben Clayton2dffb3c2023-08-07 12:35:33 +000024{{- range $I.Sem.UniqueParameterNames }}
Ben Clayton507a6712022-05-03 16:15:43 +000025 case ParameterUsage::k{{PascalCase .}}:
26 return "{{.}}";
Ryan Harrisondbc13af2022-02-21 15:19:07 +000027{{- end }}
Ben Clayton507a6712022-05-03 16:15:43 +000028 }
29 return "<unknown>";
Ryan Harrisondbc13af2022-02-21 15:19:07 +000030}
31
Ben Clayton015fbe72023-08-09 07:46:44 +000032} // namespace tint::core