blob: 2655ada5b35d72c64c087c4e39fe78b73d1d3e0b [file] [log] [blame]
{{- /*
--------------------------------------------------------------------------------
Template file for use with tools/src/cmd/gen to generate dictionary.txt
To update the generated file, run:
./tools/run gen
See:
* tools/src/cmd/gen for structures used by this template
* https://golang.org/pkg/text/template/ for documentation on the template syntax
--------------------------------------------------------------------------------
*/ -}}
{{- SetCommentPrefix "#" -}}
{{- $W := LoadIntrinsics "src/tint/lang/wgsl/wgsl.def" -}}
{{- $C := LoadIntrinsics "src/tint/lang/core/core.def" -}}
{{- $tokens := List}}
{{- /* ========================= Operators & Keywords ======================== */ -}}
{{- $tokens = Append $tokens
"!"
"!="
"%"
"%="
"&"
"&&"
"&="
"("
")"
"*"
"*="
"+"
"++"
"+="
","
"-"
"--"
"-="
"->"
"."
"/"
"/="
":"
";"
"<"
"<<"
"<<="
"<="
"="
"=="
">"
">="
">>"
">>="
"@"
"["
"]"
"^"
"^="
"_"
"{"
"|"
"|="
"||"
"}"
"~"
"alias"
"break"
"case"
"const"
"const_assert"
"continue"
"continuing"
"diagnostic"
"discard"
"default"
"else"
"enable"
"fallthrough"
"false"
"fn"
"for"
"if"
"let"
"loop"
"override"
"return"
"requires"
"struct"
"switch"
"true"
"var"
"while"
-}}
{{- /* ============================== Swizzles =============================== */ -}}
{{- $tokens = Append $tokens
"x" "y" "z" "w"
"r" "g" "b" "a"
-}}
{{- /* ============================ Boolean values =========================== */ -}}
{{- $tokens = Append $tokens
"true" "false"
-}}
{{- /* =========================== Base64 comments =========================== */ -}}
{{- $tokens = Append $tokens
"// AAAA"
"// AAAB"
"// ABBB"
"// BAAA"
"// BBBA"
"// BBBB"
-}}
{{- /* ========================= Interesting patterns ======================== */ -}}
{{- $tokens = Append $tokens
"for (;true;) {}"
-}}
{{- /* ========================== Builtin functions ========================== */ -}}
{{- range $W.Sem.Builtins}}{{$tokens = Append $tokens .Name}}{{end -}}
{{- /* ================================ Types ================================ */ -}}
{{- range $W.Sem.Types}}{{$tokens = Append $tokens .Name}}{{end -}}
{{- /* ============================= Enumerators ============================= */ -}}
{{- range $W.Sem.Enums}}
{{- range .Entries}}
{{- $tokens = Append $tokens .Name}}
{{- end}}
{{- end}}
{{- range $C.Sem.Enums}}
{{- range .Entries}}
{{- $tokens = Append $tokens .Name}}
{{- end}}
{{- end}}
{{- $tokens = SortUnique $tokens}}
{{- range $tokens}}"{{.}}"
{{end -}}