Ben Clayton | 1934f59 | 2021-06-01 10:00:10 +0000 | [diff] [blame] | 1 | {{- /* |
| 2 | -------------------------------------------------------------------------------- |
Ben Clayton | b85e692 | 2022-02-02 23:07:11 +0000 | [diff] [blame] | 3 | Template file for use with tools/builtin-gen to generate parameter_usage.h |
Ben Clayton | 1934f59 | 2021-06-01 10:00:10 +0000 | [diff] [blame] | 4 | |
| 5 | See: |
Ben Clayton | b85e692 | 2022-02-02 23:07:11 +0000 | [diff] [blame] | 6 | * tools/cmd/builtin-gen/gen for structures used by this template |
Ben Clayton | 1934f59 | 2021-06-01 10:00:10 +0000 | [diff] [blame] | 7 | * https://golang.org/pkg/text/template/ for documentation on the template syntax |
| 8 | -------------------------------------------------------------------------------- |
| 9 | */ -}} |
| 10 | |
| 11 | #ifndef SRC_SEM_PARAMETER_USAGE_H_ |
| 12 | #define SRC_SEM_PARAMETER_USAGE_H_ |
| 13 | |
| 14 | namespace tint { |
| 15 | namespace sem { |
| 16 | |
| 17 | /// ParameterUsage is extra metadata for identifying a parameter based on its |
| 18 | /// overload position |
| 19 | enum class ParameterUsage { |
| 20 | kNone = -1, |
| 21 | {{- range .Sem.UniqueParameterNames }} |
| 22 | k{{PascalCase .}}, |
| 23 | {{- end }} |
| 24 | }; |
| 25 | |
| 26 | /// @returns a string representation of the given parameter usage. |
| 27 | const char* str(ParameterUsage usage); |
| 28 | |
| 29 | } // namespace sem |
| 30 | } // namespace tint |
| 31 | |
| 32 | #endif // SRC_SEM_PARAMETER_USAGE_H_ |