| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- {
- "scopeName": "source.spirv",
- "name": "SPIR-V",
- "comment": "Generated by {{GenerateArguments}}. Do not modify this file directly.",
- "patterns": [
- {{range $o := .All.OperandKinds}}{{if len $o.Enumerants}} { "include": "#{{$o.Category}}_{{$o.Kind}}" },
- {{end}}{{end}} { "include": "#opcode" },
- { "include": "#extopcode" },
- { "include": "#identifier" },
- { "include": "#number" },
- { "include": "#string" },
- { "include": "#comment" },
- { "include": "#operator" }
- ],
- "repository": { {{range $o := .All.OperandKinds}}{{if len $o.Enumerants}}
- "{{$o.Category}}_{{$o.Kind}}": {
- "match": "\\b({{OperandKindsMatch $o}})\\b",
- "name": "keyword.spirv"
- },{{end}}{{end}}
- "opcode": {
- "match": "(Op[a-zA-Z]+)",
- "name": "entity.name.function.spirv"
- },
- "extopcode": {
- "match": "({{AllExtOpcodes}})",
- "name": "entity.name.function.ext"
- },
- "identifier": {
- "match": "%[a-zA-Z0-9_]+",
- "name": "variable.spirv"
- },
- "number": {
- "match": "\\b[0-9]+.?[0-9]*\\b",
- "name": "constant.numeric.spirv"
- },
- "comment": {
- "match": ";[^\n]*",
- "name": "comment.line.spirv"
- },
- "operator": {
- "match": "=",
- "name": "keyword.operator.spirv"
- },
- "string": {
- "begin": "\"",
- "beginCaptures": {
- "0": {
- "name": "punctuation.definition.string.begin.spirv"
- }
- },
- "end": "\"",
- "endCaptures": {
- "0": {
- "name": "punctuation.definition.string.end.spirv"
- }
- },
- "name": "string.quoted.double.spirv",
- "patterns": [ { "include": "#string_escaped_char" } ]
- },
- "string_escaped_char": {
- "patterns": [
- {
- "match": "\\\\([0-7]{3}|[abfnrtv\\\\'\"]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|U[0-9a-fA-F]{8})",
- "name": "constant.character.escape.spirv"
- }, {
- "match": "\\\\[^0-7xuUabfnrtv\\'\"]",
- "name": "invalid.illegal.unknown-escape.spirv"
- }
- ]
- }
- }
- }
|