11 "include": "#preprocessor"
20 "include": "#builtin_types"
23 "include": "#keywords"
40 "name": "comment.line.double-slash.tablegen"
47 "name": "comment.block.tablegen"
52 "include": "#comments"
55 "name": "comment.block.tablegen"
62 "match": "^#ifdef\\s+(\\w+)",
63 "name": "keyword.control.ifdef.tablegen",
66 "name": "entity.name.function.preprocessor.tablegen"
71 "match": "^#ifndef\\s+(\\w+)",
72 "name": "keyword.control.ifndef.tablegen",
75 "name": "entity.name.function.preprocessor.tablegen"
81 "name": "keyword.control.else.tablegen"
85 "name": "keyword.control.endif.tablegen"
88 "match": "#define\\s+(\\w+)",
89 "name": "keyword.control.ifndef.tablegen",
92 "name": "entity.name.function.preprocessor.tablegen"
97 "match": "^include\\s+",
98 "name": "keyword.control.include.tablegen"
105 "name": "string.quoted.double.tablegen",
110 "name": "punctuation.definition.string.begin.tablegen"
115 "match": "\\\\['nt\"]",
116 "name": "constant.character.escape.tablegen"
121 "name": "punctuation.definition.string.end.tablegen"
126 "name": "string.quoted.triple.tablegen",
131 "name": "punctuation.definition.string.begin.tablegen"
136 "match": "\\\\[nt\"]",
137 "name": "constant.character.escape.tablegen"
142 "name": "punctuation.definition.string.end.tablegen"
151 "match": "\\b\\d+\\b",
152 "name": "constant.numeric.tablegen"
155 "match": "\\b0[xX][a-fA-F0-9]+\\b",
156 "name": "constant.numeric.hex.tablegen"
159 "match": "\\b0b[01]+\\b",
160 "name": "constant.numeric.binary.tablegen"
167 "match": "\\b(?:bit|code|dag|int|string)\\b",
168 "name": "entity.name.type.tablegen"
171 "begin": "\\b(bits)\\<",
174 "name": "entity.name.type.tablegen"
179 "include": "#integer"
185 "begin": "\\b(list)\\<",
188 "name": "entity.name.type.tablegen"
203 "include": "#builtin_types"
206 "match": "\\b(\\w+)\\b",
207 "name": "entity.name.type.tablegen"
214 "begin": "(\\!cast|\\!getdagop|\\!isa)\\<",
217 "name": "entity.name.function"
228 "match": "(\\!\\w+)\\b",
229 "name": "entity.name.function"
236 "match": "\\b(assert|else|foreach|defset|defvar|field|if|in|let|then)\\b",
237 "name": "keyword.other.tablegen"
247 "match": "\\b(\\w+)\\b",
248 "name": "entity.name.type.tablegen"
266 "include": "#keywords"
269 "include": "#builtin_types"
272 "match": "\\b(\\w+\\s+)?\\b(\\w+)\\b\\s+\\=",
275 "name": "entity.name.type.tablegen"
278 "name": "variable.other.tablegen"
291 "begin": "\\b(multiclass|class)\\b\\s+(\\w+)\\b",
294 "name": "keyword.other.class.tablegen"
297 "name": "entity.name.type.tablegen"
305 "include": "#builtin_types"
308 "match": "\\b(\\w+\\s+)?\\b(\\w+)\\b",
311 "name": "entity.name.type.tablegen"
314 "name": "variable.other.tablegen"
331 "include": "#record_body"
337 "begin": "\\b(defm|def)\\b",
340 "name": "keyword.other.def.tablegen"
345 "include": "#record_body"
356 "include": "#builtin_types"
359 "include": "#bang_operators"
362 "include": "#classes"
368 "include": "#comments"
371 "include": "#integer"
374 "include": "#strings"
377 "match": "\\b(?:false|true)\\b",
378 "name": "keyword.other.tablegen"
382 "name": "keyword.other.tablegen"
403 "begin": "\\]\\s*\\<",
421 "include": "#keywords"
424 "begin": "\\b(\\w+)\\<",
427 "name": "entity.name.type.tablegen"
438 "match": "(\\$\\w+)\\b",
439 "name": "variable.other.enummember.tablegen"
442 "match": "\\b(\\w+)\\b",
443 "name": "variable.other.tablegen"
446 "include": "#preprocessor"
451 "scopeName": "source.tablegen"