summaryrefslogtreecommitdiff
path: root/deps/v8/tools/torque/vscode-torque/syntaxes/torque.tmLanguage.json
blob: ece8527c2de4a733e9c5d887fe687c76febffb57 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
{
	"$schema": "https://raw.githubusercontent.com/martinring/tmlanguage/master/tmlanguage.json",
	"name": "Torque",
	"patterns": [
		{
			"include": "#keywords"
		},
		{
			"include": "#strings"
		},
		{
			"name": "comment.line.double-slash.torque",
			"begin": "//",
			"end": "$"
		},
		{
			"name": "comment.block.torque",
			"begin": "/\\*",
			"end": "\\*/"
		},
		{
			"name": "string.quoted.single.torque",
			"begin": "'",
			"end": "'",
			"patterns": [
				{
					"name": "constant.character.escape.torque",
					"match": "\\\\."
				}]
		},
		{
			"name": "support.function.torque",
			"match": "\\b(min|max|assert|check|debug|unreachable)\\b"
		},
    {
      "name": "support.variable.torque",
      "match": "\\b(true|True|false|False|Undefined|Hole|Null)\\b"
    },
    {
      "begin": "<(?=[A-Za-z][0-9A-Za-z_]*>)",
      "end": ">",
      "patterns": [
        {
          "name": "support.type.torque",
          "match": "([A-Za-z][0-9A-Za-z_]*)"
        }
      ]
    },
    {
      "begin": ":(\\s*)?",
      "end": "(?=[^0-9A-Za-z_])",
      "patterns": [
        {
          "name": "support.type.torque",
          "match": "([A-Za-z][0-9A-Za-z_]*)"
        }
      ]
    }
	],
	"repository": {
		"keywords": {
			"patterns": [{
				"name": "keyword.control.torque",
				"match": "\\b(if|else|while|for|return|continue|break|goto|otherwise|try|catch)\\b"
			},
			{
				"name": "keyword.other.torque",
				"match": "\\b(constexpr|module|macro|builtin|runtime|javascript|implicit|deferred|cast|convert|label|labels|tail|isnt|is|let|generates|type|extends|extern|const)\\b"
			},
			{
				"name": "keyword.operator.torque",
				"match": "\\b(=|\\*=)\\b"
			}]
		},
		"strings": {
			"name": "string.quoted.double.torque",
			"begin": "\"",
			"end": "\"",
			"patterns": [
				{
					"name": "constant.character.escape.torque",
					"match": "\\\\."
				}
			]
		}
	},
	"scopeName": "source.torque"
}