github-linguist 6.0.1 → 6.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (70) hide show
  1. checksums.yaml +4 -4
  2. data/grammars/annotation.liquidhaskell.haskell.json +13 -4
  3. data/grammars/hint.haskell.json +13 -4
  4. data/grammars/hint.message.haskell.json +13 -4
  5. data/grammars/hint.type.haskell.json +13 -4
  6. data/grammars/source.angelscript.json +1 -1
  7. data/grammars/source.ballerina.json +25 -2
  8. data/grammars/source.batchfile.json +69 -38
  9. data/grammars/source.c.json +1 -1
  10. data/grammars/source.clarion.json +4 -4
  11. data/grammars/source.cs.json +3952 -780
  12. data/grammars/source.elixir.json +7 -7
  13. data/grammars/source.fortran.json +38 -35
  14. data/grammars/source.fortran.modern.json +6 -6
  15. data/grammars/source.graphql.json +55 -2
  16. data/grammars/source.haskell.json +13 -4
  17. data/grammars/source.hsig.json +13 -4
  18. data/grammars/source.hx.json +2309 -0
  19. data/grammars/source.hxml.json +37 -5
  20. data/grammars/source.isabelle.theory.json +7 -7
  21. data/grammars/source.js.json +39 -54
  22. data/grammars/source.js.regexp.json +11 -5
  23. data/grammars/source.julia.json +16 -5
  24. data/grammars/{source.Kotlin.json → source.kotlin.json} +118 -33
  25. data/grammars/source.mathematica.json +0 -1
  26. data/grammars/source.meson.json +4 -0
  27. data/grammars/source.mupad.json +36 -12
  28. data/grammars/source.netlinx.erb.json +1 -2
  29. data/grammars/source.netlinx.json +0 -3
  30. data/grammars/source.nextflow.json +7 -7
  31. data/grammars/source.perl.json +1 -1
  32. data/grammars/source.renpy.json +436 -648
  33. data/grammars/source.scala.json +133 -87
  34. data/grammars/source.sed.json +1520 -0
  35. data/grammars/source.shell.json +17 -17
  36. data/grammars/source.solidity.json +1 -1
  37. data/grammars/source.swift.json +1 -1
  38. data/grammars/source.terraform.json +1 -1
  39. data/grammars/source.ts.json +493 -122
  40. data/grammars/source.tsx.json +568 -191
  41. data/grammars/source.x86.json +295 -0
  42. data/grammars/source.yaml.json +41 -21
  43. data/grammars/source.yara.json +1 -1
  44. data/grammars/text.haml.json +15 -0
  45. data/grammars/text.html.creole.json +1 -1
  46. data/grammars/text.html.php.blade.json +2 -2
  47. data/grammars/text.html.php.json +55 -134
  48. data/grammars/text.html.smarty.json +25 -1
  49. data/grammars/text.html.vue.json +0 -6
  50. data/grammars/text.restructuredtext.json +110 -17
  51. data/grammars/text.tex.latex.haskell.json +13 -4
  52. data/lib/linguist/documentation.yml +1 -0
  53. data/lib/linguist/generated.rb +9 -1
  54. data/lib/linguist/heuristics.rb +2 -0
  55. data/lib/linguist/language.rb +0 -8
  56. data/lib/linguist/languages.json +1 -1
  57. data/lib/linguist/languages.yml +103 -7
  58. data/lib/linguist/linguist.bundle +0 -0
  59. data/lib/linguist/samples.json +1221 -262
  60. data/lib/linguist/shebang.rb +7 -4
  61. data/lib/linguist/strategy/extension.rb +15 -2
  62. data/lib/linguist/strategy/filename.rb +15 -2
  63. data/lib/linguist/vendor.yml +7 -0
  64. data/lib/linguist/version.rb +1 -1
  65. metadata +17 -19
  66. data/grammars/source.erazor.json +0 -118
  67. data/grammars/source.haxe.2.json +0 -1267
  68. data/grammars/source.hss.1.json +0 -442
  69. data/grammars/source.nmml.json +0 -81
  70. data/grammars/source.sbt.json +0 -39
@@ -3,17 +3,20 @@ module Linguist
3
3
  # Public: Use shebang to detect language of the blob.
4
4
  #
5
5
  # blob - An object that quacks like a blob.
6
+ # candidates - A list of candidate languages.
6
7
  #
7
8
  # Examples
8
9
  #
9
10
  # Shebang.call(FileBlob.new("path/to/file"))
10
11
  #
11
- # Returns an Array with one Language if the blob has a shebang with a valid
12
- # interpreter, or empty if there is no shebang.
13
- def self.call(blob, _ = nil)
12
+ # Returns an array of languages from the candidate list for which the
13
+ # blob's shebang is valid. Returns an empty list if there is no shebang.
14
+ # If the candidate list is empty, any language is a valid candidate.
15
+ def self.call(blob, candidates)
14
16
  return [] if blob.symlink?
15
17
 
16
- Language.find_by_interpreter interpreter(blob.data)
18
+ languages = Language.find_by_interpreter interpreter(blob.data)
19
+ candidates.any? ? candidates & languages : languages
17
20
  end
18
21
 
19
22
  # Public: Get the interpreter from the shebang
@@ -2,8 +2,21 @@ module Linguist
2
2
  module Strategy
3
3
  # Detects language based on extension
4
4
  class Extension
5
- def self.call(blob, _)
6
- Language.find_by_extension(blob.name.to_s)
5
+ # Public: Use the file extension to detect the blob's language.
6
+ #
7
+ # blob - An object that quacks like a blob.
8
+ # candidates - A list of candidate languages.
9
+ #
10
+ # Examples
11
+ #
12
+ # Extension.call(FileBlob.new("path/to/file"))
13
+ #
14
+ # Returns an array of languages associated with a blob's file extension.
15
+ # Selected languages must be in the candidate list, except if it's empty,
16
+ # in which case any language is a valid candidate.
17
+ def self.call(blob, candidates)
18
+ languages = Language.find_by_extension(blob.name.to_s)
19
+ candidates.any? ? candidates & languages : languages
7
20
  end
8
21
  end
9
22
  end
@@ -2,9 +2,22 @@ module Linguist
2
2
  module Strategy
3
3
  # Detects language based on filename
4
4
  class Filename
5
- def self.call(blob, _)
5
+ # Public: Use the filename to detect the blob's language.
6
+ #
7
+ # blob - An object that quacks like a blob.
8
+ # candidates - A list of candidate languages.
9
+ #
10
+ # Examples
11
+ #
12
+ # Filename.call(FileBlob.new("path/to/file"))
13
+ #
14
+ # Returns an array of languages with a associated blob's filename.
15
+ # Selected languages must be in the candidate list, except if it's empty,
16
+ # in which case any language is a valid candidate.
17
+ def self.call(blob, candidates)
6
18
  name = blob.name.to_s
7
- Language.find_by_filename(name)
19
+ languages = Language.find_by_filename(name)
20
+ candidates.any? ? candidates & languages : languages
8
21
  end
9
22
  end
10
23
  end
@@ -276,6 +276,13 @@
276
276
  - (^|/)gradlew\.bat$
277
277
  - (^|/)gradle/wrapper/
278
278
 
279
+ ## Java ##
280
+
281
+ # Maven
282
+ - (^|/)mvnw$
283
+ - (^|/)mvnw\.cmd$
284
+ - (^|/)\.mvn/wrapper/
285
+
279
286
  ## .NET ##
280
287
 
281
288
  # Visual Studio IntelliSense
@@ -1,3 +1,3 @@
1
1
  module Linguist
2
- VERSION = "6.0.1"
2
+ VERSION = "6.1.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: github-linguist
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.0.1
4
+ version: 6.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - GitHub
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-01-30 00:00:00.000000000 Z
11
+ date: 2018-04-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: charlock_holmes
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 0.7.5
19
+ version: 0.7.6
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 0.7.5
26
+ version: 0.7.6
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: escape_utils
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -182,30 +182,30 @@ dependencies:
182
182
  name: licensed
183
183
  requirement: !ruby/object:Gem::Requirement
184
184
  requirements:
185
- - - ">="
185
+ - - "~>"
186
186
  - !ruby/object:Gem::Version
187
- version: '0'
187
+ version: 1.0.0
188
188
  type: :development
189
189
  prerelease: false
190
190
  version_requirements: !ruby/object:Gem::Requirement
191
191
  requirements:
192
- - - ">="
192
+ - - "~>"
193
193
  - !ruby/object:Gem::Version
194
- version: '0'
194
+ version: 1.0.0
195
195
  - !ruby/object:Gem::Dependency
196
196
  name: licensee
197
197
  requirement: !ruby/object:Gem::Requirement
198
198
  requirements:
199
- - - "~>"
199
+ - - ">="
200
200
  - !ruby/object:Gem::Version
201
- version: 8.8.0
201
+ version: '0'
202
202
  type: :development
203
203
  prerelease: false
204
204
  version_requirements: !ruby/object:Gem::Requirement
205
205
  requirements:
206
- - - "~>"
206
+ - - ">="
207
207
  - !ruby/object:Gem::Version
208
- version: 8.8.0
208
+ version: '0'
209
209
  description: We use this library at GitHub to detect blob languages, highlight code,
210
210
  ignore binary files, suppress generated files in diffs, and generate language breakdown
211
211
  graphs.
@@ -233,7 +233,6 @@ files:
233
233
  - grammars/hint.message.haskell.json
234
234
  - grammars/hint.type.haskell.json
235
235
  - grammars/objdump.x86asm.json
236
- - grammars/source.Kotlin.json
237
236
  - grammars/source.LS.json
238
237
  - grammars/source.MCPOST.json
239
238
  - grammars/source.MOD.json
@@ -335,7 +334,6 @@ files:
335
334
  - grammars/source.elixir.json
336
335
  - grammars/source.elm.json
337
336
  - grammars/source.emacs.lisp.json
338
- - grammars/source.erazor.json
339
337
  - grammars/source.erlang.json
340
338
  - grammars/source.essl.json
341
339
  - grammars/source.factor.json
@@ -370,12 +368,11 @@ files:
370
368
  - grammars/source.groovy.json
371
369
  - grammars/source.harbour.json
372
370
  - grammars/source.haskell.json
373
- - grammars/source.haxe.2.json
374
371
  - grammars/source.hlsl.json
375
372
  - grammars/source.hsc2hs.json
376
373
  - grammars/source.hsig.json
377
- - grammars/source.hss.1.json
378
374
  - grammars/source.httpspec.json
375
+ - grammars/source.hx.json
379
376
  - grammars/source.hxml.json
380
377
  - grammars/source.ideal.json
381
378
  - grammars/source.idl-dlm.json
@@ -407,6 +404,7 @@ files:
407
404
  - grammars/source.json.json
408
405
  - grammars/source.julia.console.json
409
406
  - grammars/source.julia.json
407
+ - grammars/source.kotlin.json
410
408
  - grammars/source.lean.json
411
409
  - grammars/source.lid.json
412
410
  - grammars/source.lilypond.json
@@ -451,7 +449,6 @@ files:
451
449
  - grammars/source.ninja.json
452
450
  - grammars/source.nit.json
453
451
  - grammars/source.nix.json
454
- - grammars/source.nmml.json
455
452
  - grammars/source.nsis.json
456
453
  - grammars/source.nu.json
457
454
  - grammars/source.nut.json
@@ -529,7 +526,6 @@ files:
529
526
  - grammars/source.rust.json
530
527
  - grammars/source.sas.json
531
528
  - grammars/source.sass.json
532
- - grammars/source.sbt.json
533
529
  - grammars/source.scad.json
534
530
  - grammars/source.scala.json
535
531
  - grammars/source.scaml.json
@@ -537,6 +533,7 @@ files:
537
533
  - grammars/source.scilab.json
538
534
  - grammars/source.scss.json
539
535
  - grammars/source.sdbl.json
536
+ - grammars/source.sed.json
540
537
  - grammars/source.shaderlab.json
541
538
  - grammars/source.shell.json
542
539
  - grammars/source.shen.json
@@ -584,6 +581,7 @@ files:
584
581
  - grammars/source.webassembly.json
585
582
  - grammars/source.webidl.json
586
583
  - grammars/source.x10.json
584
+ - grammars/source.x86.json
587
585
  - grammars/source.x86asm.json
588
586
  - grammars/source.xc.json
589
587
  - grammars/source.xq.json
@@ -711,7 +709,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
711
709
  version: '0'
712
710
  requirements: []
713
711
  rubyforge_project:
714
- rubygems_version: 2.6.8
712
+ rubygems_version: 2.6.14
715
713
  signing_key:
716
714
  specification_version: 4
717
715
  summary: GitHub Language detection
@@ -1,118 +0,0 @@
1
- {
2
- "name": "Erazor (HTML)",
3
- "scopeName": "source.erazor",
4
- "patterns": [
5
- {
6
- "include": "#controlblock"
7
- },
8
- {
9
- "include": "#function"
10
- },
11
- {
12
- "include": "#else"
13
- },
14
- {
15
- "include": "#variables"
16
- },
17
- {
18
- "include": "#scriptblock"
19
- },
20
- {
21
- "include": "text.html.basic"
22
- }
23
- ],
24
- "repository": {
25
- "codeblock": {
26
- "name": "source.erazor",
27
- "begin": "\\{",
28
- "end": "\\}",
29
- "patterns": [
30
- {
31
- "include": "#codeblock"
32
- },
33
- {
34
- "include": "source.haxe.2"
35
- }
36
- ]
37
- },
38
- "controlblock": {
39
- "name": "source.erazor",
40
- "begin": "(@(if|else|while|for))(\\()",
41
- "end": "\\)",
42
- "patterns": [
43
- {
44
- "include": "source.haxe.2"
45
- }
46
- ],
47
- "beginCaptures": {
48
- "1": {
49
- "name": "keyword.control.haxe.flow-control.2"
50
- }
51
- }
52
- },
53
- "else": {
54
- "patterns": [
55
- {
56
- "name": "source.erazor",
57
- "match": "\\}(else)\\{",
58
- "captures": {
59
- "1": {
60
- "name": "keyword.control.haxe.flow-control.2"
61
- }
62
- }
63
- }
64
- ]
65
- },
66
- "function": {
67
- "name": "source.erazor",
68
- "begin": "(@([a-zA-Z.]+)?)(\\()",
69
- "end": "\\)",
70
- "patterns": [
71
- {
72
- "include": "source.haxe.2"
73
- }
74
- ],
75
- "beginCaptures": {
76
- "1": {
77
- "name": "entity.name.function.erazor"
78
- }
79
- }
80
- },
81
- "scriptblock": {
82
- "name": "source.hscript",
83
- "begin": "@\\{",
84
- "end": "\\}",
85
- "patterns": [
86
- {
87
- "include": "#codeblock"
88
- },
89
- {
90
- "include": "source.haxe.2"
91
- }
92
- ],
93
- "beginCaptures": {
94
- "0": {
95
- "name": "entity.name.tag.erazor"
96
- }
97
- },
98
- "endCaptures": {
99
- "0": {
100
- "name": "entity.name.tag.erazor"
101
- }
102
- }
103
- },
104
- "variables": {
105
- "patterns": [
106
- {
107
- "name": "source.erazor",
108
- "match": "(@[A-Za-z0-9_.]+)",
109
- "captures": {
110
- "1": {
111
- "name": "entity.name.variable.erazor"
112
- }
113
- }
114
- }
115
- ]
116
- }
117
- }
118
- }
@@ -1,1267 +0,0 @@
1
- {
2
- "name": "Haxe",
3
- "scopeName": "source.haxe.2",
4
- "patterns": [
5
- {
6
- "include": "#all"
7
- }
8
- ],
9
- "repository": {
10
- "all": {
11
- "patterns": [
12
- {
13
- "include": "#package"
14
- },
15
- {
16
- "include": "#import"
17
- },
18
- {
19
- "include": "#import-using"
20
- },
21
- {
22
- "include": "#type-abstract"
23
- },
24
- {
25
- "include": "#type-class"
26
- },
27
- {
28
- "include": "#type-enum"
29
- },
30
- {
31
- "include": "#type-interface"
32
- },
33
- {
34
- "include": "#type-typedef"
35
- },
36
- {
37
- "include": "#meta-static"
38
- },
39
- {
40
- "include": "#method"
41
- },
42
- {
43
- "include": "#variable"
44
- },
45
- {
46
- "include": "#block"
47
- },
48
- {
49
- "include": "#block-contents"
50
- }
51
- ]
52
- },
53
- "arrays": {
54
- "name": "meta.array.haxe.2",
55
- "begin": "(\\[)",
56
- "end": "(\\])",
57
- "patterns": [
58
- {
59
- "include": "#block"
60
- },
61
- {
62
- "include": "#block-contents"
63
- }
64
- ],
65
- "beginCaptures": {
66
- "1": {
67
- "name": "punctuation.definition.array.begin.haxe.2"
68
- }
69
- },
70
- "endCaptures": {
71
- "1": {
72
- "name": "punctuation.definition.array.end.haxe.2"
73
- }
74
- }
75
- },
76
- "block": {
77
- "begin": "(\\{)",
78
- "end": "(\\})",
79
- "patterns": [
80
- {
81
- "include": "#block"
82
- },
83
- {
84
- "include": "#block-contents"
85
- }
86
- ],
87
- "beginCaptures": {
88
- "1": {
89
- "name": "punctuation.definition.block.begin.haxe.2"
90
- }
91
- },
92
- "endCaptures": {
93
- "1": {
94
- "name": "punctuation.definition.block.end.haxe.2"
95
- }
96
- }
97
- },
98
- "block-contents": {
99
- "patterns": [
100
- {
101
- "include": "#regex"
102
- },
103
- {
104
- "include": "#arrays"
105
- },
106
- {
107
- "include": "#parameters"
108
- },
109
- {
110
- "include": "#constants"
111
- },
112
- {
113
- "include": "#comments"
114
- },
115
- {
116
- "include": "#strings"
117
- },
118
- {
119
- "include": "#macro"
120
- },
121
- {
122
- "include": "#modifiers"
123
- },
124
- {
125
- "include": "#keywords"
126
- },
127
- {
128
- "include": "#keywords-magic"
129
- },
130
- {
131
- "include": "#keywords-reification"
132
- },
133
- {
134
- "include": "#conditional-compilation"
135
- },
136
- {
137
- "include": "#operator-assignment"
138
- },
139
- {
140
- "include": "#operators"
141
- },
142
- {
143
- "include": "#punctuation-separator"
144
- },
145
- {
146
- "include": "#punctuation-terminator"
147
- },
148
- {
149
- "include": "#punctuation-brackets"
150
- },
151
- {
152
- "include": "#support-class-name"
153
- }
154
- ]
155
- },
156
- "comments": {
157
- "patterns": [
158
- {
159
- "name": "comment.block.haxe.2",
160
- "begin": "(/\\*)",
161
- "end": "(\\*/)",
162
- "beginCaptures": {
163
- "1": {
164
- "name": "punctuation.definition.comment.haxe.2"
165
- }
166
- },
167
- "endCaptures": {
168
- "1": {
169
- "name": "punctuation.definition.comment.haxe.2"
170
- }
171
- }
172
- },
173
- {
174
- "name": "comment.line.double-slash.haxe.2",
175
- "match": "(//).*$\\n?",
176
- "captures": {
177
- "1": {
178
- "name": "punctuation.definition.comment.haxe.2"
179
- }
180
- }
181
- }
182
- ]
183
- },
184
- "conditional-compilation": {
185
- "patterns": [
186
- {
187
- "name": "keyword.control.directive.conditional.haxe.2",
188
- "match": "(#(end|else))"
189
- },
190
- {
191
- "match": "((#(if|elseif))\\s+([a-zA-Z0-9_]*)\\s)",
192
- "captures": {
193
- "0": {
194
- "name": "meta.control.directive.conditional.haxe.2"
195
- },
196
- "2": {
197
- "name": "keyword.control.directive.conditional.haxe.2"
198
- }
199
- }
200
- },
201
- {
202
- "name": "meta.control.directive.conditional.haxe.2",
203
- "begin": "((#(if|elseif))\\s*?\\()",
204
- "end": "(\\))",
205
- "beginCaptures": {
206
- "0": {
207
- "name": "meta.control.directive.conditional.haxe.2"
208
- },
209
- "2": {
210
- "name": "keyword.control.directive.conditional.haxe.2"
211
- }
212
- }
213
- },
214
- {
215
- "name": "meta.control.directive.conditional.haxe.2",
216
- "match": "(#([a-zA-Z0-9_]*))\\s"
217
- }
218
- ]
219
- },
220
- "constants": {
221
- "patterns": [
222
- {
223
- "name": "constant.language.haxe.2",
224
- "match": "\\b(true|false|null)\\b"
225
- },
226
- {
227
- "name": "constant.numeric.haxe.2",
228
- "match": "\\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\.?[0-9]*)|(\\.[0-9]+))((e|E)(\\+|-)?[0-9]+)?)\\b"
229
- }
230
- ]
231
- },
232
- "entity-name-class": {
233
- "name": "entity.name.type.class.haxe.2",
234
- "match": "\\b([_A-Za-z]\\w*)\\b"
235
- },
236
- "entity-name-function": {
237
- "name": "entity.name.function.haxe.2",
238
- "match": "([_A-Za-z]\\w*)\\b(?=\\s*[\\(])"
239
- },
240
- "import": {
241
- "name": "meta.import.haxe.2",
242
- "begin": "\\b(import)\\b",
243
- "end": "(;)",
244
- "patterns": [
245
- {
246
- "match": "((\\b[a-z]\\w*\\.)*)((\\b[A-Z]\\w*\\.?|\\*)+)(\\b[_a-z]\\w*|\\*)?",
247
- "captures": {
248
- "1": {
249
- "name": "support.package.haxe.2"
250
- },
251
- "3": {
252
- "name": "support.class.haxe.2"
253
- }
254
- }
255
- }
256
- ],
257
- "beginCaptures": {
258
- "1": {
259
- "name": "storage.type.import.haxe.2"
260
- }
261
- },
262
- "endCaptures": {
263
- "1": {
264
- "name": "punctuation.terminator.haxe.2"
265
- }
266
- }
267
- },
268
- "import-using": {
269
- "name": "meta.using.haxe.2",
270
- "begin": "\\b(using)\\b",
271
- "end": "(;)",
272
- "patterns": [
273
- {
274
- "match": "(([a-z]\\w*\\.)*)(([A-Z]\\w*\\.?)+)",
275
- "captures": {
276
- "1": {
277
- "name": "support.package.haxe.2"
278
- },
279
- "3": {
280
- "name": "support.class.haxe.2"
281
- }
282
- }
283
- }
284
- ],
285
- "beginCaptures": {
286
- "1": {
287
- "name": "storage.type.using.haxe.2"
288
- }
289
- },
290
- "endCaptures": {
291
- "1": {
292
- "name": "punctuation.terminator.haxe.2"
293
- }
294
- }
295
- },
296
- "keywords": {
297
- "patterns": [
298
- {
299
- "name": "keyword.control.catch-exception.haxe.2",
300
- "match": "\\b(try|catch|throw)\\b"
301
- },
302
- {
303
- "name": "keyword.control.haxe.flow-control.2",
304
- "match": "\\b(if|return|while|for|return|break|case|default|continue|do|while|for|switch|if|else)\\b"
305
- },
306
- {
307
- "name": "keyword.control.directive.haxe.2",
308
- "match": "(\\.\\.\\.)"
309
- },
310
- {
311
- "name": "keyword.other.untyped.haxe.2",
312
- "match": "\\b(cast|untyped)\\b"
313
- },
314
- {
315
- "name": "keyword.other.trace.haxe.2",
316
- "match": "\\btrace\\b"
317
- },
318
- {
319
- "name": "variable.language.haxe.2",
320
- "match": "\\b(this|super)\\b"
321
- },
322
- {
323
- "name": "keyword.control.new.haxe.2",
324
- "match": "\\bnew\\b"
325
- },
326
- {
327
- "name": "storage.type.variable.haxe.2",
328
- "match": "\\bvar\\b"
329
- },
330
- {
331
- "name": "storage.type.function.haxe.2",
332
- "match": "\\bfunction\\b"
333
- },
334
- {
335
- "name": "storage.type.class.haxe.2",
336
- "match": "\\b(abstract|class|enum|interface|typedef)\\b"
337
- }
338
- ]
339
- },
340
- "keywords-abstract": {
341
- "patterns": [
342
- {
343
- "name": "keyword.other.haxe.2",
344
- "match": "\\b(from|to)\\b"
345
- }
346
- ]
347
- },
348
- "keywords-accessor": {
349
- "patterns": [
350
- {
351
- "name": "keyword.other.haxe.2",
352
- "match": "\\b(default|get|set|dynamic|never|null)\\b"
353
- }
354
- ]
355
- },
356
- "keywords-magic": {
357
- "patterns": [
358
- {
359
- "name": "support.function.magic.haxe.2",
360
- "match": "\\b__\\w*__\\b"
361
- },
362
- {
363
- "name": "support.variable.magic.haxe.2",
364
- "match": "\\bprototype\\b"
365
- }
366
- ]
367
- },
368
- "keywords-reification": {
369
- "patterns": [
370
- {
371
- "match": "(\\$)([iea])\\(",
372
- "captures": {
373
- "1": {
374
- "name": "punctuation.definition.variable.haxe.2"
375
- },
376
- "2": {
377
- "name": "support.reification.haxe.2"
378
- }
379
- }
380
- },
381
- {
382
- "match": "((\\$)([a-zA-Z.]*))",
383
- "captures": {
384
- "2": {
385
- "name": "punctuation.definition.variable.haxe.2"
386
- },
387
- "3": {
388
- "name": "support.reification.haxe.2"
389
- }
390
- }
391
- }
392
- ]
393
- },
394
- "macro": {
395
- "patterns": [
396
- {
397
- "match": "((@:)(require|final|hack|native|coreApi|fakeEnum|macro|build|keep|keepSub|overload|extern|optional|feature|noCompletion|noUsing|allow|access|generic|publicFields|expose|defineFeature|runtime|initPackage|bind|bitmap|file|font|sound|ns|protected|getter|setter|meta|debug|noDebug|headerCode|headerClassCode|cppFileCode|functionCode|functionTailCode|buildXml|cppNamespaceCode|headerNamespaceCode|noStack|depend|include|internal|volatile|transient|functionBody|classContents|remove)\\b)",
398
- "captures": {
399
- "2": {
400
- "name": "punctuation.definition.variable.haxe.2"
401
- },
402
- "3": {
403
- "name": "storage.modifier.macro.haxe.2"
404
- }
405
- }
406
- },
407
- {
408
- "match": "((@:?)([a-zA-Z_]*))",
409
- "captures": {
410
- "2": {
411
- "name": "punctuation.definition.variable.haxe.2"
412
- },
413
- "3": {
414
- "name": "support.macro.haxe.2"
415
- }
416
- }
417
- }
418
- ]
419
- },
420
- "meta-static": {
421
- "name": "meta.static.haxe.2",
422
- "begin": "(static)",
423
- "end": "(?\u003c=[\\};])",
424
- "patterns": [
425
- {
426
- "include": "#modifiers"
427
- },
428
- {
429
- "include": "#method"
430
- },
431
- {
432
- "include": "#variable"
433
- },
434
- {
435
- "include": "#punctuation-terminator"
436
- }
437
- ],
438
- "beginCaptures": {
439
- "1": {
440
- "name": "storage.modifier.haxe.2"
441
- }
442
- }
443
- },
444
- "method": {
445
- "name": "meta.method.haxe.2",
446
- "begin": "(?=function)",
447
- "end": "(?\u003c=[\\};])",
448
- "patterns": [
449
- {
450
- "include": "#method-name"
451
- },
452
- {
453
- "include": "#method-name-post"
454
- },
455
- {
456
- "include": "#method-block"
457
- }
458
- ]
459
- },
460
- "method-block": {
461
- "name": "meta.method.block.haxe.2",
462
- "begin": "(?\u003c=\\{)",
463
- "end": "(\\})",
464
- "patterns": [
465
- {
466
- "include": "#block"
467
- },
468
- {
469
- "include": "#block-contents"
470
- }
471
- ],
472
- "beginCaptures": {
473
- "1": {
474
- "name": "punctuation.definition.block.begin.haxe.2"
475
- }
476
- },
477
- "endCaptures": {
478
- "1": {
479
- "name": "punctuation.definition.block.end.haxe.2"
480
- }
481
- }
482
- },
483
- "method-name": {
484
- "name": "meta.method.name.haxe.2",
485
- "begin": "\\b(function)\\b",
486
- "end": "([_A-Za-z]\\w*)",
487
- "beginCaptures": {
488
- "1": {
489
- "name": "storage.type.function.haxe.2"
490
- }
491
- },
492
- "endCaptures": {
493
- "1": {
494
- "name": "entity.name.function.haxe.2"
495
- }
496
- }
497
- },
498
- "method-name-post": {
499
- "begin": "(?\u003c=\\w)",
500
- "end": "(\\{)|(;)",
501
- "patterns": [
502
- {
503
- "include": "#block"
504
- },
505
- {
506
- "include": "#block-contents"
507
- }
508
- ],
509
- "endCaptures": {
510
- "1": {
511
- "name": "punctuation.definition.block.begin.haxe.2"
512
- },
513
- "2": {
514
- "name": "punctuation.terminator.haxe.2"
515
- }
516
- }
517
- },
518
- "modifiers": {
519
- "name": "storage.modifier.haxe.2",
520
- "match": "\\b(public|private|static|dynamic|inline|macro|extern|override)\\b"
521
- },
522
- "modifiers-inheritance": {
523
- "name": "storage.modifier.haxe.2",
524
- "match": "\\b(implements|extends)\\b"
525
- },
526
- "operator-assignment": {
527
- "name": "keyword.operator.assignment.haxe.2",
528
- "match": "(=)"
529
- },
530
- "operator-optional": {
531
- "name": "punctuation.definition.variable.haxe.2",
532
- "match": "(\\?)(?!\\s)"
533
- },
534
- "operators": {
535
- "patterns": [
536
- {
537
- "name": "keyword.operator.logical.haxe.2",
538
- "match": "(!|\u0026\u0026|\\|\\|)"
539
- },
540
- {
541
- "name": "keyword.operator.bitwise.haxe.2",
542
- "match": "(~|\u0026|\\||\\^|\u003c\u003c|\u003e\u003e|\u003e\u003e\u003e)"
543
- },
544
- {
545
- "name": "keyword.operator.comparison.haxe.2",
546
- "match": "(==|!=|\u003c=|\u003e=|\u003c\u003e|\u003c|\u003e)"
547
- },
548
- {
549
- "name": "keyword.operator.increment-decrement.haxe.2",
550
- "match": "(\\-\\-|\\+\\+)"
551
- },
552
- {
553
- "name": "keyword.operator.arithmetic.haxe.2",
554
- "match": "(\\-|\\+|\\*|\\/|%)"
555
- }
556
- ]
557
- },
558
- "package": {
559
- "name": "meta.package.haxe.2",
560
- "match": "\\b(package)(\\s+([\\w.*]*))?\\s*(;)",
561
- "captures": {
562
- "1": {
563
- "name": "storage.type.package.haxe.2"
564
- },
565
- "2": {
566
- "name": "support.package.haxe.2"
567
- },
568
- "4": {
569
- "name": "punctuation.terminator.haxe.2"
570
- }
571
- }
572
- },
573
- "parameters": {
574
- "name": "meta.parameters.haxe.2",
575
- "begin": "(\\()",
576
- "end": "(\\))",
577
- "patterns": [
578
- {
579
- "include": "#operator-optional"
580
- },
581
- {
582
- "include": "#block"
583
- },
584
- {
585
- "include": "#block-contents"
586
- }
587
- ],
588
- "beginCaptures": {
589
- "1": {
590
- "name": "punctuation.definition.parameters.begin.haxe.2"
591
- }
592
- },
593
- "endCaptures": {
594
- "1": {
595
- "name": "punctuation.definition.parameters.end.haxe.2"
596
- }
597
- }
598
- },
599
- "punctuation-brackets": {
600
- "patterns": [
601
- {
602
- "name": "punctuation.definition.other.haxe.2",
603
- "match": "([\\(\\\u003c\\)\\\u003e])"
604
- }
605
- ]
606
- },
607
- "punctuation-separator": {
608
- "name": "punctuation.separator.haxe.2",
609
- "match": "([,:.?])"
610
- },
611
- "punctuation-terminator": {
612
- "name": "punctuation.terminator.haxe.2",
613
- "match": ";"
614
- },
615
- "regex": {
616
- "name": "string.regexp.haxe.2",
617
- "begin": "~/",
618
- "end": "(/[gimsu]*)|(\\n$)",
619
- "patterns": [
620
- {
621
- "name": "constant.character.escape.haxe.2",
622
- "match": "\\\\."
623
- }
624
- ],
625
- "beginCaptures": {
626
- "1": {
627
- "name": "string.regexp.begin.haxe.2"
628
- }
629
- },
630
- "endCaptures": {
631
- "1": {
632
- "name": "string.regexp.end.haxe.2"
633
- },
634
- "2": {
635
- "name": "invalid.illegal.haxe.2"
636
- }
637
- }
638
- },
639
- "strings": {
640
- "patterns": [
641
- {
642
- "name": "string.quoted.double.haxe.2",
643
- "begin": "\"",
644
- "end": "\"",
645
- "patterns": [
646
- {
647
- "name": "constant.character.escape.haxe.2",
648
- "match": "\\\\."
649
- }
650
- ],
651
- "beginCaptures": {
652
- "0": {
653
- "name": "punctuation.definition.string.begin.haxe.2"
654
- }
655
- },
656
- "endCaptures": {
657
- "0": {
658
- "name": "punctuation.definition.string.end.haxe.2"
659
- }
660
- }
661
- },
662
- {
663
- "name": "string.quoted.single.haxe.2",
664
- "begin": "'",
665
- "end": "'",
666
- "patterns": [
667
- {
668
- "name": "constant.character.escape.haxe.2",
669
- "match": "\\\\."
670
- },
671
- {
672
- "name": "constant.character.escape.haxe.2",
673
- "match": "\\$\\$"
674
- },
675
- {
676
- "match": "(\\$)(\\{)([^}]*)(\\})",
677
- "captures": {
678
- "1": {
679
- "name": "variable.other.haxe.2"
680
- },
681
- "2": {
682
- "name": "variable.other.haxe.2"
683
- },
684
- "3": {
685
- "name": "variable.other.haxe.2"
686
- },
687
- "4": {
688
- "name": "variable.other.haxe.2"
689
- }
690
- }
691
- },
692
- {
693
- "match": "(\\$)([\\w]*)",
694
- "captures": {
695
- "1": {
696
- "name": "variable.other.haxe.2"
697
- },
698
- "2": {
699
- "name": "variable.other.haxe.2"
700
- }
701
- }
702
- }
703
- ],
704
- "beginCaptures": {
705
- "0": {
706
- "name": "punctuation.definition.string.begin.haxe.2"
707
- }
708
- },
709
- "endCaptures": {
710
- "0": {
711
- "name": "punctuation.definition.string.end.haxe.2"
712
- }
713
- }
714
- }
715
- ]
716
- },
717
- "support-class-name": {
718
- "match": "\\b(([a-z][a-zA-Z0-9]*\\.)*)(([A-Z]\\w*\\.?)+)\\b",
719
- "captures": {
720
- "1": {
721
- "name": "support.package.haxe.2"
722
- },
723
- "3": {
724
- "name": "support.class.haxe.2"
725
- }
726
- }
727
- },
728
- "type-abstract": {
729
- "name": "meta.type.abstract.haxe.2",
730
- "begin": "(?=abstract)",
731
- "end": "(?\u003c=\\})|(;)",
732
- "patterns": [
733
- {
734
- "include": "#type-abstract-name"
735
- },
736
- {
737
- "include": "#type-abstract-name-post"
738
- },
739
- {
740
- "include": "#type-abstract-block"
741
- }
742
- ],
743
- "endCaptures": {
744
- "1": {
745
- "name": "punctuation.terminator.haxe.2"
746
- }
747
- }
748
- },
749
- "type-abstract-block": {
750
- "name": "meta.type.block.haxe.2",
751
- "begin": "(?\u003c=\\{)",
752
- "end": "(\\})",
753
- "patterns": [
754
- {
755
- "include": "#meta-static"
756
- },
757
- {
758
- "include": "#method"
759
- },
760
- {
761
- "include": "#modifiers"
762
- },
763
- {
764
- "include": "#variable"
765
- },
766
- {
767
- "include": "#block"
768
- },
769
- {
770
- "include": "#block-contents"
771
- }
772
- ],
773
- "endCaptures": {
774
- "1": {
775
- "name": "punctuation.definition.block.end.haxe.2"
776
- }
777
- }
778
- },
779
- "type-abstract-name": {
780
- "name": "meta.type.name.haxe.2",
781
- "begin": "\\b(abstract)\\b",
782
- "end": "([_A-Za-z]\\w*)",
783
- "beginCaptures": {
784
- "1": {
785
- "name": "storage.type.class.haxe.2"
786
- }
787
- },
788
- "endCaptures": {
789
- "1": {
790
- "name": "entity.name.type.class.haxe.2"
791
- }
792
- }
793
- },
794
- "type-abstract-name-post": {
795
- "begin": "(?\u003c=\\w)",
796
- "end": "([\\{;])",
797
- "patterns": [
798
- {
799
- "include": "#parameters"
800
- },
801
- {
802
- "include": "#keywords-abstract"
803
- },
804
- {
805
- "include": "#punctuation-brackets"
806
- },
807
- {
808
- "include": "#punctuation-separator"
809
- },
810
- {
811
- "include": "#support-class-name"
812
- }
813
- ],
814
- "endCaptures": {
815
- "1": {
816
- "name": "punctuation.definition.block.begin.haxe.2"
817
- }
818
- }
819
- },
820
- "type-class": {
821
- "name": "meta.type.class.haxe.2",
822
- "begin": "(?=class)",
823
- "end": "(?\u003c=\\})|(;)",
824
- "patterns": [
825
- {
826
- "include": "#type-class-name"
827
- },
828
- {
829
- "include": "#type-class-name-post"
830
- },
831
- {
832
- "include": "#type-class-block"
833
- }
834
- ],
835
- "endCaptures": {
836
- "1": {
837
- "name": "punctuation.terminator.haxe.2"
838
- }
839
- }
840
- },
841
- "type-class-block": {
842
- "name": "meta.type.block.haxe.2",
843
- "begin": "(?\u003c=\\{)",
844
- "end": "(\\})",
845
- "patterns": [
846
- {
847
- "include": "#meta-static"
848
- },
849
- {
850
- "include": "#method"
851
- },
852
- {
853
- "include": "#modifiers"
854
- },
855
- {
856
- "include": "#variable"
857
- },
858
- {
859
- "include": "#block"
860
- },
861
- {
862
- "include": "#block-contents"
863
- }
864
- ],
865
- "endCaptures": {
866
- "1": {
867
- "name": "punctuation.definition.block.end.haxe.2"
868
- }
869
- }
870
- },
871
- "type-class-name": {
872
- "name": "meta.type.name.haxe.2",
873
- "begin": "\\b(class)\\b",
874
- "end": "([_A-Za-z]\\w*)",
875
- "beginCaptures": {
876
- "1": {
877
- "name": "storage.type.class.haxe.2"
878
- }
879
- },
880
- "endCaptures": {
881
- "1": {
882
- "name": "entity.name.type.class.haxe.2"
883
- }
884
- }
885
- },
886
- "type-class-name-post": {
887
- "begin": "(?\u003c=\\w)",
888
- "end": "([\\{;])",
889
- "patterns": [
890
- {
891
- "include": "#type-parameters"
892
- },
893
- {
894
- "include": "#modifiers-inheritance"
895
- },
896
- {
897
- "include": "#punctuation-brackets"
898
- },
899
- {
900
- "include": "#punctuation-separator"
901
- },
902
- {
903
- "include": "#support-class-name"
904
- }
905
- ],
906
- "endCaptures": {
907
- "1": {
908
- "name": "punctuation.definition.block.begin.haxe.2"
909
- }
910
- }
911
- },
912
- "type-enum": {
913
- "name": "meta.type.enum.haxe.2",
914
- "begin": "(?=enum)",
915
- "end": "(?\u003c=\\})|(;)",
916
- "patterns": [
917
- {
918
- "include": "#type-enum-name"
919
- },
920
- {
921
- "include": "#type-enum-name-post"
922
- },
923
- {
924
- "include": "#type-enum-block"
925
- }
926
- ],
927
- "endCaptures": {
928
- "1": {
929
- "name": "punctuation.terminator.haxe.2"
930
- }
931
- }
932
- },
933
- "type-enum-block": {
934
- "name": "meta.type.block.haxe.2",
935
- "begin": "(?\u003c=\\{)",
936
- "end": "(\\})",
937
- "patterns": [
938
- {
939
- "include": "#type-parameters"
940
- },
941
- {
942
- "include": "#block"
943
- },
944
- {
945
- "include": "#block-contents"
946
- }
947
- ],
948
- "endCaptures": {
949
- "1": {
950
- "name": "punctuation.definition.block.end.haxe.2"
951
- }
952
- }
953
- },
954
- "type-enum-name": {
955
- "name": "meta.type.name.haxe.2",
956
- "begin": "\\b(enum)\\b",
957
- "end": "([_A-Za-z]\\w*)",
958
- "beginCaptures": {
959
- "1": {
960
- "name": "storage.type.class.haxe.2"
961
- }
962
- },
963
- "endCaptures": {
964
- "1": {
965
- "name": "entity.name.type.class.haxe.2"
966
- }
967
- }
968
- },
969
- "type-enum-name-post": {
970
- "begin": "(?\u003c=\\w)",
971
- "end": "([\\{;])",
972
- "patterns": [
973
- {
974
- "include": "#type-parameters"
975
- },
976
- {
977
- "include": "#punctuation-brackets"
978
- },
979
- {
980
- "include": "#punctuation-separator"
981
- },
982
- {
983
- "include": "#support-class-name"
984
- }
985
- ],
986
- "endCaptures": {
987
- "1": {
988
- "name": "punctuation.definition.block.begin.haxe.2"
989
- }
990
- }
991
- },
992
- "type-interface": {
993
- "name": "meta.type.interface.haxe.2",
994
- "begin": "(?=interface)",
995
- "end": "(?\u003c=\\})|(;)",
996
- "patterns": [
997
- {
998
- "include": "#type-interface-name"
999
- },
1000
- {
1001
- "include": "#type-interface-name-post"
1002
- },
1003
- {
1004
- "include": "#type-interface-block"
1005
- }
1006
- ],
1007
- "endCaptures": {
1008
- "1": {
1009
- "name": "punctuation.terminator.haxe.2"
1010
- }
1011
- }
1012
- },
1013
- "type-interface-block": {
1014
- "name": "meta.type.block.haxe.2",
1015
- "begin": "(?\u003c=\\{)",
1016
- "end": "(\\})",
1017
- "patterns": [
1018
- {
1019
- "include": "#method"
1020
- },
1021
- {
1022
- "include": "#variable"
1023
- },
1024
- {
1025
- "include": "#block"
1026
- },
1027
- {
1028
- "include": "#block-contents"
1029
- }
1030
- ],
1031
- "endCaptures": {
1032
- "1": {
1033
- "name": "punctuation.definition.block.end.haxe.2"
1034
- }
1035
- }
1036
- },
1037
- "type-interface-name": {
1038
- "name": "meta.type.name.haxe.2",
1039
- "begin": "\\b(interface)\\b",
1040
- "end": "([_A-Za-z]\\w*)",
1041
- "beginCaptures": {
1042
- "1": {
1043
- "name": "storage.type.class.haxe.2"
1044
- }
1045
- },
1046
- "endCaptures": {
1047
- "1": {
1048
- "name": "entity.name.type.class.haxe.2"
1049
- }
1050
- }
1051
- },
1052
- "type-interface-name-post": {
1053
- "begin": "(?\u003c=\\w)",
1054
- "end": "([\\{;])",
1055
- "patterns": [
1056
- {
1057
- "include": "#modifiers-inheritance"
1058
- },
1059
- {
1060
- "include": "#punctuation-brackets"
1061
- },
1062
- {
1063
- "include": "#punctuation-separator"
1064
- },
1065
- {
1066
- "include": "#support-class-name"
1067
- }
1068
- ],
1069
- "endCaptures": {
1070
- "1": {
1071
- "name": "punctuation.definition.block.begin.haxe.2"
1072
- }
1073
- }
1074
- },
1075
- "type-parameters": {
1076
- "name": "meta.type.parameters.haxe.2",
1077
- "begin": "(\\\u003c)",
1078
- "end": "(\\\u003e)",
1079
- "patterns": [
1080
- {
1081
- "include": "#block"
1082
- },
1083
- {
1084
- "include": "#block-contents"
1085
- }
1086
- ],
1087
- "beginCaptures": {
1088
- "1": {
1089
- "name": "punctuation.definition.parameters.begin.haxe.2"
1090
- }
1091
- },
1092
- "endCaptures": {
1093
- "1": {
1094
- "name": "punctuation.definition.parameters.end.haxe.2"
1095
- }
1096
- }
1097
- },
1098
- "type-typedef": {
1099
- "name": "meta.type.typedef.haxe.2",
1100
- "begin": "(?=typedef)",
1101
- "end": "(?\u003c=\\})|(;)",
1102
- "patterns": [
1103
- {
1104
- "include": "#type-typedef-name"
1105
- },
1106
- {
1107
- "include": "#type-typedef-name-post"
1108
- },
1109
- {
1110
- "include": "#type-typedef-block"
1111
- }
1112
- ],
1113
- "endCaptures": {
1114
- "1": {
1115
- "name": "punctuation.terminator.haxe.2"
1116
- }
1117
- }
1118
- },
1119
- "type-typedef-block": {
1120
- "name": "meta.type.block.haxe.2",
1121
- "begin": "(?\u003c=\\{)",
1122
- "end": "(\\})",
1123
- "patterns": [
1124
- {
1125
- "include": "#block"
1126
- },
1127
- {
1128
- "include": "#block-contents"
1129
- }
1130
- ],
1131
- "endCaptures": {
1132
- "1": {
1133
- "name": "punctuation.definition.block.end.haxe.2"
1134
- }
1135
- }
1136
- },
1137
- "type-typedef-name": {
1138
- "name": "meta.type.name.haxe.2",
1139
- "begin": "\\b(typedef)\\b",
1140
- "end": "([_A-Za-z]\\w*)",
1141
- "beginCaptures": {
1142
- "1": {
1143
- "name": "storage.type.class.haxe.2"
1144
- }
1145
- },
1146
- "endCaptures": {
1147
- "1": {
1148
- "name": "entity.name.type.class.haxe.2"
1149
- }
1150
- }
1151
- },
1152
- "type-typedef-name-post": {
1153
- "begin": "(?\u003c=\\w)",
1154
- "end": "(\\{)|(?=;)",
1155
- "patterns": [
1156
- {
1157
- "include": "#punctuation-brackets"
1158
- },
1159
- {
1160
- "include": "#punctuation-separator"
1161
- },
1162
- {
1163
- "include": "#operator-assignment"
1164
- },
1165
- {
1166
- "include": "#support-class-name"
1167
- }
1168
- ],
1169
- "endCaptures": {
1170
- "1": {
1171
- "name": "punctuation.definition.block.begin.haxe.2"
1172
- }
1173
- }
1174
- },
1175
- "variable": {
1176
- "name": "meta.variable.haxe.2",
1177
- "begin": "(?=var)",
1178
- "end": "(;)",
1179
- "patterns": [
1180
- {
1181
- "include": "#variable-name"
1182
- },
1183
- {
1184
- "include": "#variable-assign"
1185
- },
1186
- {
1187
- "include": "#variable-name-post"
1188
- }
1189
- ],
1190
- "endCaptures": {
1191
- "1": {
1192
- "name": "punctuation.terminator.haxe.2"
1193
- }
1194
- }
1195
- },
1196
- "variable-accessors": {
1197
- "name": "meta.parameters.haxe.2",
1198
- "begin": "(\\()",
1199
- "end": "(\\))",
1200
- "patterns": [
1201
- {
1202
- "include": "#operator-optional"
1203
- },
1204
- {
1205
- "include": "#keywords-accessor"
1206
- },
1207
- {
1208
- "include": "#punctuation-separator"
1209
- }
1210
- ],
1211
- "beginCaptures": {
1212
- "1": {
1213
- "name": "punctuation.definition.parameters.begin.haxe.2"
1214
- }
1215
- },
1216
- "endCaptures": {
1217
- "1": {
1218
- "name": "punctuation.definition.parameters.end.haxe.2"
1219
- }
1220
- }
1221
- },
1222
- "variable-assign": {
1223
- "begin": "(=)",
1224
- "end": "(?=;)",
1225
- "patterns": [
1226
- {
1227
- "include": "#block"
1228
- },
1229
- {
1230
- "include": "#block-contents"
1231
- }
1232
- ],
1233
- "beginCaptures": {
1234
- "1": {
1235
- "name": "keyword.operator.assignment.haxe.2"
1236
- }
1237
- }
1238
- },
1239
- "variable-name": {
1240
- "name": "meta.variable.name.haxe.2",
1241
- "begin": "\\b(var)\\b",
1242
- "end": "([_a-zA-Z]\\w*)",
1243
- "beginCaptures": {
1244
- "1": {
1245
- "name": "storage.type.variable.haxe.2"
1246
- }
1247
- },
1248
- "endCaptures": {
1249
- "1": {
1250
- "name": "entity.name.variable.haxe.2"
1251
- }
1252
- }
1253
- },
1254
- "variable-name-post": {
1255
- "begin": "(?\u003c=\\w)",
1256
- "end": "(?=;)|(?==)",
1257
- "patterns": [
1258
- {
1259
- "include": "#variable-accessors"
1260
- },
1261
- {
1262
- "include": "#block-contents"
1263
- }
1264
- ]
1265
- }
1266
- }
1267
- }