github-linguist 9.4.0 → 9.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (113) hide show
  1. checksums.yaml +4 -4
  2. data/grammars/etc.json +1 -1
  3. data/grammars/markdown.mojo.codeblock.json +1 -0
  4. data/grammars/markdown.move.codeblock.json +1 -1
  5. data/grammars/source.4dm.json +1 -1
  6. data/grammars/source.abl.json +1 -1
  7. data/grammars/source.apex.json +1 -1
  8. data/grammars/source.astro.json +1 -1
  9. data/grammars/source.baml-jinja.json +1 -0
  10. data/grammars/source.baml.json +1 -0
  11. data/grammars/source.bb.json +1 -1
  12. data/grammars/source.brs.embedded.xml.json +1 -0
  13. data/grammars/source.bsl.json +1 -1
  14. data/grammars/source.c++.json +1 -1
  15. data/grammars/source.c.json +1 -1
  16. data/grammars/source.c3.json +1 -1
  17. data/grammars/source.cel.json +1 -0
  18. data/grammars/source.clarion.json +1 -1
  19. data/grammars/source.cmake.json +1 -1
  20. data/grammars/source.cmakecache.json +1 -1
  21. data/grammars/source.cpan-mirror.json +1 -0
  22. data/grammars/source.cpan-skiplist.json +1 -0
  23. data/grammars/source.cs.json +1 -1
  24. data/grammars/source.csv.json +1 -1
  25. data/grammars/source.curlrc.json +1 -1
  26. data/grammars/source.dart.json +1 -1
  27. data/grammars/source.daslang.json +1 -1
  28. data/grammars/source.data-weave.json +1 -1
  29. data/grammars/source.emacs.lisp.json +1 -1
  30. data/grammars/source.firrtl.json +1 -1
  31. data/grammars/source.flatbuffers.json +1 -0
  32. data/grammars/source.gdscript.json +1 -1
  33. data/grammars/source.gimprc.json +1 -0
  34. data/grammars/source.gimpres.json +1 -0
  35. data/grammars/source.graphql.json +1 -1
  36. data/grammars/source.gtkrc.json +1 -0
  37. data/grammars/source.hack.json +1 -1
  38. data/grammars/source.hosts.json +1 -1
  39. data/grammars/source.il.json +1 -0
  40. data/grammars/source.ilecobol.json +1 -1
  41. data/grammars/source.ink.json +1 -1
  42. data/grammars/source.interp.json +1 -0
  43. data/grammars/source.jac.json +1 -1
  44. data/grammars/source.jactoml.json +1 -0
  45. data/grammars/source.jai.json +1 -1
  46. data/grammars/source.julia.json +1 -1
  47. data/grammars/source.just.json +1 -1
  48. data/grammars/source.lean4.markdown.json +1 -1
  49. data/grammars/source.liquidsoap.json +1 -0
  50. data/grammars/source.llvm.json +1 -1
  51. data/grammars/source.luau.json +1 -1
  52. data/grammars/source.m2.json +1 -1
  53. data/grammars/source.m3u.json +1 -1
  54. data/grammars/source.matlab.json +1 -1
  55. data/grammars/source.mc.json +1 -1
  56. data/grammars/source.mdx.astro.json +1 -1
  57. data/grammars/source.mermaid.json +1 -1
  58. data/grammars/source.metta.json +1 -0
  59. data/grammars/source.mo.json +1 -1
  60. data/grammars/source.mojo.json +1 -1
  61. data/grammars/source.moonbit.config.json +1 -0
  62. data/grammars/source.moonbit.json +1 -1
  63. data/grammars/source.move.json +1 -1
  64. data/grammars/source.opy.json +1 -0
  65. data/grammars/source.pic.json +1 -1
  66. data/grammars/source.pkgconf.json +1 -0
  67. data/grammars/source.powerquery.json +1 -0
  68. data/grammars/source.powershell.json +1 -1
  69. data/grammars/source.prisma.json +1 -1
  70. data/grammars/source.quint.json +1 -0
  71. data/grammars/source.rascal.json +1 -1
  72. data/grammars/source.rascript.json +1 -1
  73. data/grammars/source.record-jar.json +1 -1
  74. data/grammars/source.redscript.json +1 -0
  75. data/grammars/source.rego.json +1 -1
  76. data/grammars/source.ron.json +1 -1
  77. data/grammars/source.rpgle.json +1 -1
  78. data/grammars/source.slang.json +1 -1
  79. data/grammars/source.slint.json +1 -1
  80. data/grammars/source.soql.json +1 -1
  81. data/grammars/source.spicedb-yaml.json +1 -0
  82. data/grammars/source.spicedb.json +1 -0
  83. data/grammars/source.stan.json +1 -1
  84. data/grammars/source.surrealql.json +1 -1
  85. data/grammars/source.swift.json +1 -1
  86. data/grammars/source.tsp.json +1 -1
  87. data/grammars/source.uri-list.json +1 -0
  88. data/grammars/source.v.json +1 -1
  89. data/grammars/source.vento.json +1 -1
  90. data/grammars/source.wgsl.json +1 -1
  91. data/grammars/spicedb-yaml.injection.json +1 -0
  92. data/grammars/text.cachedir.json +1 -0
  93. data/grammars/text.cookie-jar.json +1 -0
  94. data/grammars/text.html.vue.json +1 -1
  95. data/grammars/text.mac-tts.json +1 -0
  96. data/grammars/text.roff.json +1 -1
  97. data/grammars/text.srt.json +1 -1
  98. data/grammars/version +1 -1
  99. data/lib/linguist/VERSION +1 -1
  100. data/lib/linguist/classifier.rb +2 -1
  101. data/lib/linguist/generated.rb +16 -0
  102. data/lib/linguist/generic.yml +2 -0
  103. data/lib/linguist/heuristics.yml +17 -0
  104. data/lib/linguist/language.rb +8 -0
  105. data/lib/linguist/languages.json +1 -1
  106. data/lib/linguist/languages.yml +173 -12
  107. data/lib/linguist/lazy_blob.rb +19 -1
  108. data/lib/linguist/samples.json +1 -1
  109. data/lib/linguist/source/rugged.rb +16 -1
  110. data/lib/linguist/vendor.yml +3 -0
  111. metadata +30 -3
  112. data/grammars/source.vscode.c3.json +0 -1
  113. data/grammars/text.html.vento.json +0 -1
@@ -44,7 +44,22 @@ module Linguist
44
44
  end
45
45
 
46
46
  def get_tree_size(commit_id, limit)
47
- get_tree(commit_id).count_recursive(limit)
47
+ tree_count = 0
48
+ count = 0
49
+
50
+ get_tree(commit_id).walk(:preorder) do |root, entry|
51
+ case entry[:type]
52
+ when :blob
53
+ count += 1
54
+ return limit if count >= limit
55
+ when :tree
56
+ tree_count += 1
57
+ return limit if tree_count >= limit
58
+ end
59
+ true
60
+ end
61
+
62
+ count
48
63
  end
49
64
 
50
65
  def set_attribute_source(commit_id)
@@ -391,3 +391,6 @@
391
391
 
392
392
  # teamcity CI configuration
393
393
  - (^|/)\.teamcity/
394
+
395
+ # XVBA dependencies
396
+ - (^|/)xvba_modules/
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: github-linguist
3
3
  version: !ruby/object:Gem::Version
4
- version: 9.4.0
4
+ version: 9.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - GitHub
@@ -267,6 +267,7 @@ files:
267
267
  - grammars/markdown.hxml.codeblock.json
268
268
  - grammars/markdown.lean.codeblock.json
269
269
  - grammars/markdown.lean4.codeblock.json
270
+ - grammars/markdown.mojo.codeblock.json
270
271
  - grammars/markdown.move.codeblock.json
271
272
  - grammars/markdown.plantuml.codeblock.json
272
273
  - grammars/markdown.prisma.codeblock.json
@@ -327,6 +328,8 @@ files:
327
328
  - grammars/source.awk.json
328
329
  - grammars/source.b.json
329
330
  - grammars/source.ballerina.json
331
+ - grammars/source.baml-jinja.json
332
+ - grammars/source.baml.json
330
333
  - grammars/source.basic.json
331
334
  - grammars/source.batchfile.json
332
335
  - grammars/source.bb.json
@@ -347,6 +350,7 @@ files:
347
350
  - grammars/source.boogie.json
348
351
  - grammars/source.bp.json
349
352
  - grammars/source.bqn.json
353
+ - grammars/source.brs.embedded.xml.json
350
354
  - grammars/source.brs.json
351
355
  - grammars/source.bru.json
352
356
  - grammars/source.bsl.json
@@ -368,6 +372,7 @@ files:
368
372
  - grammars/source.camlp4.ocaml.json
369
373
  - grammars/source.capnp.json
370
374
  - grammars/source.cds.json
375
+ - grammars/source.cel.json
371
376
  - grammars/source.ceylon.json
372
377
  - grammars/source.cfscript.cfc.json
373
378
  - grammars/source.cfscript.json
@@ -404,6 +409,8 @@ files:
404
409
  - grammars/source.cooklang.json
405
410
  - grammars/source.cool.json
406
411
  - grammars/source.coq.json
412
+ - grammars/source.cpan-mirror.json
413
+ - grammars/source.cpan-skiplist.json
407
414
  - grammars/source.cql.json
408
415
  - grammars/source.crystal.json
409
416
  - grammars/source.cs.json
@@ -483,6 +490,7 @@ files:
483
490
  - grammars/source.firestore.json
484
491
  - grammars/source.firrtl.json
485
492
  - grammars/source.fish.json
493
+ - grammars/source.flatbuffers.json
486
494
  - grammars/source.flix.json
487
495
  - grammars/source.fnl.json
488
496
  - grammars/source.fontdir.json
@@ -516,6 +524,8 @@ files:
516
524
  - grammars/source.gerber.json
517
525
  - grammars/source.gf.json
518
526
  - grammars/source.gfm.blade.json
527
+ - grammars/source.gimprc.json
528
+ - grammars/source.gimpres.json
519
529
  - grammars/source.git-revlist.json
520
530
  - grammars/source.gitattributes.json
521
531
  - grammars/source.gitconfig.json
@@ -538,6 +548,7 @@ files:
538
548
  - grammars/source.groovy.gradle.json
539
549
  - grammars/source.groovy.json
540
550
  - grammars/source.gsc.json
551
+ - grammars/source.gtkrc.json
541
552
  - grammars/source.gts.json
542
553
  - grammars/source.hack.json
543
554
  - grammars/source.haproxy-config.json
@@ -571,6 +582,7 @@ files:
571
582
  - grammars/source.idl.json
572
583
  - grammars/source.idris.json
573
584
  - grammars/source.igor.json
585
+ - grammars/source.il.json
574
586
  - grammars/source.ilecobol.json
575
587
  - grammars/source.imba.json
576
588
  - grammars/source.inform7.json
@@ -579,6 +591,7 @@ files:
579
591
  - grammars/source.ink.json
580
592
  - grammars/source.inno.json
581
593
  - grammars/source.inputrc.json
594
+ - grammars/source.interp.json
582
595
  - grammars/source.io.json
583
596
  - grammars/source.ioke.json
584
597
  - grammars/source.isabelle.root.json
@@ -586,6 +599,7 @@ files:
586
599
  - grammars/source.ispc.json
587
600
  - grammars/source.j.json
588
601
  - grammars/source.jac.json
602
+ - grammars/source.jactoml.json
589
603
  - grammars/source.jai.json
590
604
  - grammars/source.janet.json
591
605
  - grammars/source.jasmin.json
@@ -636,6 +650,7 @@ files:
636
650
  - grammars/source.lid.json
637
651
  - grammars/source.ligo.json
638
652
  - grammars/source.lilypond.json
653
+ - grammars/source.liquidsoap.json
639
654
  - grammars/source.lisp.json
640
655
  - grammars/source.litcoffee.json
641
656
  - grammars/source.livecodescript.json
@@ -688,6 +703,7 @@ files:
688
703
  - grammars/source.mermaid.zenuml.json
689
704
  - grammars/source.meson.json
690
705
  - grammars/source.meta-info.json
706
+ - grammars/source.metta.json
691
707
  - grammars/source.mfu.json
692
708
  - grammars/source.mfupp_dir.json
693
709
  - grammars/source.mi.json
@@ -702,6 +718,7 @@ files:
702
718
  - grammars/source.modula2.json
703
719
  - grammars/source.mojo.json
704
720
  - grammars/source.monkey.json
721
+ - grammars/source.moonbit.config.json
705
722
  - grammars/source.moonbit.json
706
723
  - grammars/source.moonscript.json
707
724
  - grammars/source.move.json
@@ -756,6 +773,7 @@ files:
756
773
  - grammars/source.openqasm.json
757
774
  - grammars/source.opentype.json
758
775
  - grammars/source.opts.json
776
+ - grammars/source.opy.json
759
777
  - grammars/source.overpassql.json
760
778
  - grammars/source.ox.json
761
779
  - grammars/source.oz.json
@@ -784,6 +802,7 @@ files:
784
802
  - grammars/source.pig_latin.json
785
803
  - grammars/source.pike.json
786
804
  - grammars/source.pip-requirements.json
805
+ - grammars/source.pkgconf.json
787
806
  - grammars/source.pkl.json
788
807
  - grammars/source.pli.json
789
808
  - grammars/source.plist.json
@@ -797,6 +816,7 @@ files:
797
816
  - grammars/source.postscript.json
798
817
  - grammars/source.pov-ray sdl.json
799
818
  - grammars/source.powerbuilder.json
819
+ - grammars/source.powerquery.json
800
820
  - grammars/source.powershell.json
801
821
  - grammars/source.praat.json
802
822
  - grammars/source.prisma.json
@@ -823,6 +843,7 @@ files:
823
843
  - grammars/source.qsharp.json
824
844
  - grammars/source.quake.json
825
845
  - grammars/source.quakec.json
846
+ - grammars/source.quint.json
826
847
  - grammars/source.quoting.raku.json
827
848
  - grammars/source.r.json
828
849
  - grammars/source.racket.json
@@ -836,6 +857,7 @@ files:
836
857
  - grammars/source.record-jar.json
837
858
  - grammars/source.red.json
838
859
  - grammars/source.redirects.json
860
+ - grammars/source.redscript.json
839
861
  - grammars/source.reg.json
840
862
  - grammars/source.regexp.extended.json
841
863
  - grammars/source.regexp.json
@@ -899,6 +921,8 @@ files:
899
921
  - grammars/source.soql.json
900
922
  - grammars/source.sourcepawn.json
901
923
  - grammars/source.sparql.json
924
+ - grammars/source.spicedb-yaml.json
925
+ - grammars/source.spicedb.json
902
926
  - grammars/source.spin.json
903
927
  - grammars/source.sqf.json
904
928
  - grammars/source.sql.json
@@ -954,6 +978,7 @@ files:
954
978
  - grammars/source.ucfconstraints.json
955
979
  - grammars/source.uplc.json
956
980
  - grammars/source.ur.json
981
+ - grammars/source.uri-list.json
957
982
  - grammars/source.utreport.json
958
983
  - grammars/source.v.json
959
984
  - grammars/source.vala.json
@@ -969,7 +994,6 @@ files:
969
994
  - grammars/source.vhdl.json
970
995
  - grammars/source.vim-snippet.json
971
996
  - grammars/source.viml.json
972
- - grammars/source.vscode.c3.json
973
997
  - grammars/source.vyper.json
974
998
  - grammars/source.wavefront.mtl.json
975
999
  - grammars/source.wavefront.obj.json
@@ -1011,13 +1035,16 @@ files:
1011
1035
  - grammars/source.zil.json
1012
1036
  - grammars/source.zmodel.json
1013
1037
  - grammars/sp-jsdoc.injection.json
1038
+ - grammars/spicedb-yaml.injection.json
1014
1039
  - grammars/text.adblock.json
1015
1040
  - grammars/text.bibtex.json
1016
1041
  - grammars/text.browserslist.json
1042
+ - grammars/text.cachedir.json
1017
1043
  - grammars/text.cfml.basic.json
1018
1044
  - grammars/text.checksums.json
1019
1045
  - grammars/text.codeowners.json
1020
1046
  - grammars/text.conllu.json
1047
+ - grammars/text.cookie-jar.json
1021
1048
  - grammars/text.crontab.json
1022
1049
  - grammars/text.dfy.dafny.json
1023
1050
  - grammars/text.elixir.json
@@ -1071,7 +1098,6 @@ files:
1071
1098
  - grammars/text.html.statamic.json
1072
1099
  - grammars/text.html.tcl.json
1073
1100
  - grammars/text.html.twig.json
1074
- - grammars/text.html.vento.json
1075
1101
  - grammars/text.html.vue.json
1076
1102
  - grammars/text.idl-idldoc.json
1077
1103
  - grammars/text.info.json
@@ -1082,6 +1108,7 @@ files:
1082
1108
  - grammars/text.k.json
1083
1109
  - grammars/text.lesshst.json
1084
1110
  - grammars/text.log.latex.json
1111
+ - grammars/text.mac-tts.json
1085
1112
  - grammars/text.markdown.go-template.codeblock.json
1086
1113
  - grammars/text.marko.json
1087
1114
  - grammars/text.md.json
@@ -1 +0,0 @@
1
- {"name":"C3","scopeName":"source.vscode.c3","patterns":[{"include":"#top_level"},{"include":"#statements"}],"repository":{"assign_right_expression":{"begin":"=","end":"(?=;)","patterns":[{"include":"#comments"},{"include":"#expression"}],"beginCaptures":{"0":{"name":"keyword.operator.assignment.c3"}}},"attribute":{"patterns":[{"name":"meta.annotation.c3","begin":"@(?:(?:align|allow_deprecated|benchmark|bigendian|builtin|callconv|cname|compact|const|deprecated|dynamic|export|extern|finalizer|format|if|inline|init|jump|link|littleendian|local|maydiscard|naked|noalias|nodiscard|noinit|noinline|nopadding|norecurse|noreturn|nosanitize|nostrip|obfuscate|operator|operator_r|operator_s|optional|overlap|packed|private|public|pure|reflect|safeinfer|safemacro|simd|section|structlike|tag|test|unused|used|wasm|weak|winmain)\\b|(?:\\b_*[A-Z][_A-Z0-9]*[a-z][_a-zA-Z0-9]*\\b))","end":"(?=[^ \\t(])|(?\u003c=\\))","patterns":[{"include":"#parens"}],"beginCaptures":{"0":{"name":"keyword.annotation.c3"}}}]},"block":{"patterns":[{"name":"meta.block.c3","begin":"\\{","end":"\\}","patterns":[{"include":"#statements"}],"beginCaptures":{"0":{"name":"punctuation.section.block.begin.c3"}},"endCaptures":{"0":{"name":"punctuation.section.block.end.c3"}}}]},"block_comment":{"name":"comment.block.c3","begin":"/\\*","end":"\\*/","patterns":[{"include":"#block_comment_body"}],"beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.c3"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.end.c3"}}},"block_comment_body":{"patterns":[{"begin":"/\\*","end":"\\*/","patterns":[{"include":"#block_comment_body"}]}]},"brackets":{"patterns":[{"name":"meta.brackets.c3","begin":"\\[\u003c?","end":"\u003e?\\]","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"punctuation.section.brackets.begin.c3"}},"endCaptures":{"0":{"name":"punctuation.section.brackets.end.c3"}}}]},"builtin":{"patterns":[{"match":"(\\$\\$(?:\\b_*[A-Z][_A-Z0-9]*\\b))|(\\$\\$(?:\\b_*[a-z][_a-zA-Z0-9]*\\b))","captures":{"1":{"name":"constant.language.c3"},"2":{"name":"entity.name.function.builtin.c3"}}}]},"bytes_literal":{"patterns":[{"name":"string.quoted.other.c3","begin":"(x)([\"'`])","end":"\\2","patterns":[{"name":"constant.numeric.integer.c3","match":"[\\sfA-Fa-f0-9]+"}],"beginCaptures":{"1":{"name":"keyword.other.c3"},"2":{"name":"punctuation.definition.string.begin.c3"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.c3"}}},{"name":"string.quoted.other.c3","begin":"(b64)([\"'`])","end":"\\2","patterns":[{"name":"constant.numeric.integer.c3","match":"[\\sA-Za-z0-9+/=]+"}],"beginCaptures":{"1":{"name":"keyword.other.c3"},"2":{"name":"punctuation.definition.string.begin.c3"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.c3"}}}]},"char_literal":{"name":"string.quoted.single.c3","begin":"'","end":"'","patterns":[{"include":"#escape_sequence"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.c3"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.c3"}}},"comments":{"patterns":[{"include":"#line_comment"},{"include":"#block_comment"},{"include":"#doc_comment"}]},"constants":{"patterns":[{"name":"constant.language.c3","match":"\\b(true|false|null)\\b"},{"begin":"(?:\\b_*[A-Z][_A-Z0-9]*\\b)","end":"(?=[^{ \\t])|(?\u003c=\\})","patterns":[{"include":"#generic_params"}],"beginCaptures":{"0":{"name":"variable.other.constant.c3"}}}]},"control_statements":{"patterns":[{"begin":"\\$for\\b","end":":","patterns":[{"include":"#statements"}],"beginCaptures":{"0":{"name":"keyword.control.ct.c3"}},"endCaptures":{"0":{"name":"punctuation.separator.c3"}}},{"begin":"\\$foreach\\b","end":"(?\u003c=:)","patterns":[{"include":"#comments"},{"name":"variable.other.c3","match":"\\$(?:\\b_*[a-z][_a-zA-Z0-9]*\\b)"},{"name":"punctuation.separator.c3","match":","},{"begin":":","end":":","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"keyword.operator.c3"}},"endCaptures":{"0":{"name":"punctuation.separator.c3"}}}],"beginCaptures":{"0":{"name":"keyword.control.ct.c3"}}},{"begin":"\\bfor\\b","end":"(?\u003c=\\))","patterns":[{"include":"#comments"},{"begin":"\\(","end":"\\)","patterns":[{"include":"#statements"}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.c3"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.c3"}}}],"beginCaptures":{"0":{"name":"keyword.control.c3"}}},{"begin":"\\$(?:switch|case|default|if)\\b","end":":","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"keyword.control.ct.c3"}},"endCaptures":{"0":{"name":"punctuation.separator.c3"}}},{"begin":"\\b(?:case|default)\\b","end":":","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"keyword.control.c3"}},"endCaptures":{"0":{"name":"punctuation.separator.c3"}}}]},"doc_comment":{"begin":"(?=\u003c\\*)","end":"(\\*\u003e)","patterns":[{"include":"#doc_comment_body"}],"endCaptures":{"0":{"name":"comment.block.documentation.c3"},"1":{"name":"punctuation.definition.comment.end.c3"}}},"doc_comment_body":{"patterns":[{"begin":"(\u003c\\*)\\s*(?=@)","end":"(?=\\*\u003e)","patterns":[{"match":"@param(?:\\s*\\[\u0026?(?:in|out|inout)\\])?\\s*(?:([$#]?(?:\\b_*[a-z][_a-zA-Z0-9]*\\b))|(\\$(?:\\b_*[A-Z][_A-Z0-9]*[a-z][_a-zA-Z0-9]*\\b))|(\\.\\.\\.))","captures":{"0":{"name":"comment.block.documentation.c3"},"1":{"name":"variable.parameter.c3"},"2":{"name":"support.type.c3 entity.name.type.c3"},"3":{"name":"keyword.operator.variadic.c3"}}},{"begin":"@(?:require\\b|ensure\\b|return\\?)","end":"(?=:|\\*\u003e|$)","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"comment.block.documentation.c3"}}},{"name":"comment.block.documentation.c3","match":"@(?:\\b_*[a-z][_a-zA-Z0-9]*\\b)"},{"name":"comment.block.documentation.c3","match":":"},{"name":"comment.block.documentation.c3","begin":"([\"`])","end":"\\\\1"}],"beginCaptures":{"0":{"name":"comment.block.documentation.c3"},"1":{"name":"punctuation.definition.comment.begin.c3"}}},{"name":"comment.block.documentation.c3","begin":"(\u003c\\*)","end":"(?=^\\s*@|\\*\u003e)","beginCaptures":{"0":{"name":"comment.block.documentation.c3"},"1":{"name":"punctuation.definition.comment.begin.c3"}}},{"end":"(?=\\*\u003e)","patterns":[{"match":"^\\s*@param(?:\\s*\\[\u0026?(?:in|out|inout)\\])?\\s*(?:([$#]?(?:\\b_*[a-z][_a-zA-Z0-9]*\\b))|(\\$(?:\\b_*[A-Z][_A-Z0-9]*[a-z][_a-zA-Z0-9]*\\b))|(\\.\\.\\.))","captures":{"0":{"name":"comment.block.documentation.c3"},"1":{"name":"variable.parameter.c3"},"2":{"name":"support.type.c3 entity.name.type.c3"},"3":{"name":"keyword.operator.variadic.c3"}}},{"begin":"^\\s*@(?:require\\b|ensure\\b|return\\?)","end":"(?=:|\\*\u003e|$)","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"comment.block.documentation.c3"}}},{"name":"comment.block.documentation.c3","match":"^\\s*@(?:\\b_*[a-z][_a-zA-Z0-9]*\\b)"},{"name":"comment.block.documentation.c3","match":":"},{"name":"comment.block.documentation.c3","begin":"([\"`])","end":"\\\\1"}]}]},"escape_sequence":{"name":"constant.character.escape.c3","match":"\\\\([0abefnrtv'\"\\\\]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|U[0-9a-fA-F]{8})"},"expression":{"patterns":[{"include":"#comments"},{"include":"#function"},{"include":"#constants"},{"include":"#builtin"},{"include":"#literals"},{"include":"#operators"},{"include":"#keywords"},{"include":"#type"},{"include":"#path"},{"include":"#function_call"},{"include":"#variable"},{"include":"#parens"},{"include":"#brackets"},{"include":"#block"},{"include":"#punctuation"},{"include":"#leftover_at_ident"}]},"function":{"begin":"(?=\\b(fn|macro)\\b)","end":"(?=[={;])","patterns":[{"name":"meta.function.c3","begin":"\\b(fn|macro)\\b","end":"(?=\\()","patterns":[{"include":"#comments"},{"include":"#function_header"}],"beginCaptures":{"1":{"name":"keyword.declaration.function.c3"}}},{"name":"meta.function.parameters.c3","begin":"\\(","end":"\\)","patterns":[{"include":"#parameters"}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.c3"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.c3"}}},{"contentName":"meta.function.c3","begin":"(?\u003c=\\))","end":"(?=[{=;])","patterns":[{"include":"#comments"},{"include":"#attribute"}]}]},"function_call":{"name":"meta.function_call.c3","begin":"([@#]?(?:\\b_*[a-z][_a-zA-Z0-9]*\\b))(?=\\s*(\\{.*\\})?\\s*\\()","end":"(?\u003c=\\))","patterns":[{"include":"#generic_params"},{"name":"meta.group.c3","begin":"\\(","end":"\\)","patterns":[{"include":"#comments"},{"begin":"([$#]?(?:\\b_*[a-z][_a-zA-Z0-9]*\\b)|\\$(?:\\b_*[A-Z][_A-Z0-9]*[a-z][_a-zA-Z0-9]*\\b))\\s*(:)(?!:)","end":"(?=\\))|([;,])","patterns":[{"include":"#expression"}],"beginCaptures":{"1":{"name":"variable.parameter.c3"},"2":{"name":"punctuation.separator.c3"}},"endCaptures":{"1":{"name":"punctuation.separator.c3"}}},{"begin":"(?=\\S)","end":"(?=\\))|([;,])","patterns":[{"include":"#expression"}],"endCaptures":{"1":{"name":"punctuation.separator.c3"}}},{"name":"punctuation.separator.c3","match":";"}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.c3"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.c3"}}}],"beginCaptures":{"1":{"name":"entity.name.function.c3"}}},"function_header":{"patterns":[{"include":"#type"},{"name":"punctuation.accessor.c3","match":"\\."},{"name":"entity.name.function.c3","match":"@?(?:\\b_*[a-z][_a-zA-Z0-9]*\\b)"}]},"generic_params":{"patterns":[{"name":"meta.generic.c3","begin":"\\{","end":"\\}","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"punctuation.definition.generic.begin.c3"}},"endCaptures":{"0":{"name":"punctuation.definition.generic.end.c3"}}}]},"integer_literal":{"name":"constant.numeric.integer.c3","match":"\\b(?:0[xX][a-fA-F0-9](?:_?[a-fA-F0-9])*|0[oO][0-7](_?[0-7])*|0[bB][0-1](_?[0-1])*|[0-9](?:_?[0-9])*)(?:[UuIi](?:8|16|32|64|128)|[Uu][Ll]{0,2}|[Ll]{1,2})?"},"keywords":{"patterns":[{"name":"keyword.other.ct.c3","match":"\\$(?:alignof|assert|assignable|default|defined|echo|embed|eval|error|exec|extnameof|feature|include|is_const|kindof|nameof|offsetof|qnameof|sizeof|stringify|vacount|vaconst|vaarg|vaexpr|vasplat)\\b"},{"name":"keyword.control.ct.c3","match":"\\$(?:case|else|endfor|endforeach|endif|endswitch|for|foreach|if|switch)\\b"},{"name":"keyword.other.c3","match":"\\b(?:assert|asm|catch|inline|import|module|interface|try|var)\\b"},{"name":"keyword.control.c3","match":"\\b(?:break|case|continue|default|defer|do|else|for|foreach|foreach_r|if|nextcase|return|switch|while)\\b"}]},"leftover_at_ident":{"patterns":[{"name":"meta.annotation.c3","match":"@(?:pure|inline|noinline)","captures":{"0":{"name":"keyword.annotation.c3"}}},{"begin":"@(?:\\b_*[a-z][_a-zA-Z0-9]*\\b)","end":"(?=[^{ \\t])|(?\u003c=\\})","patterns":[{"include":"#generic_params"}],"beginCaptures":{"0":{"name":"entity.name.function.c3"}}}]},"line_comment":{"name":"comment.line.double-slash.c3","match":"//.*$"},"literals":{"patterns":[{"include":"#string_literal"},{"include":"#char_literal"},{"include":"#raw_string_literal"},{"include":"#real_literal"},{"include":"#integer_literal"},{"include":"#bytes_literal"}]},"modifier_keywords":{"patterns":[{"name":"storage.modifier.c3","match":"\\b(?:const|extern|static|tlocal|inline)\\b"}]},"module_path":{"patterns":[{"include":"#path"},{"name":"meta.path.c3","match":"((?:\\b_*[a-z][_a-zA-Z0-9]*\\b))","captures":{"1":{"name":"entity.name.scope-resolution.c3"}}}]},"operators":{"patterns":[{"name":"keyword.declaration.function.arrow.c3","match":"=\u003e"},{"name":"keyword.operator.assignment.augmented.c3","match":"(?:[-%\u0026*+/^|]|\u003e\u003e|\u003c\u003c|\\+\\+\\+)="},{"name":"keyword.operator.comparison.c3","match":"\u003c=|\u003e=|==|\u003c|\u003e|!="},{"name":"keyword.operator.variadic.c3","match":"\\.\\.\\."},{"name":"keyword.operator.range.c3","match":"\\.\\."},{"name":"keyword.operator.arithmetic.c3","match":"\\+\\+\\+?|--"},{"name":"keyword.operator.arithmetic.c3","match":"\u003c\u003c|\u003e\u003e|\u0026\u0026\u0026?|\\|\\|\\|?"},{"name":"keyword.operator.arithmetic.c3","match":"[-%+/^|~]"},{"name":"keyword.operator.assignment.c3","match":"="},{"name":"keyword.operator.c3","match":"\\?\\?\\??|\\?:|[!?]|[\u0026*:]"}]},"parameters":{"patterns":[{"include":"#comments"},{"begin":"\\$(?:\\b_*[A-Z][_A-Z0-9]*[a-z][_a-zA-Z0-9]*\\b)","end":"(?=[;,)])","patterns":[{"include":"#comments"},{"include":"#attribute"},{"begin":"=","end":"(?=[;,)])","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"keyword.operator.assignment.c3"}}}],"beginCaptures":{"0":{"name":"support.type.c3 entity.name.type.c3"}}},{"include":"#type"},{"include":"#punctuation"},{"name":"keyword.operator.variadic.c3","match":"\\.\\.\\."},{"name":"keyword.operator.address.c3","match":"\u0026"},{"begin":";","end":"(?=\\))","patterns":[{"include":"#comments"},{"name":"entity.name.function.c3","match":"@(?:\\b_*[a-z][_a-zA-Z0-9]*\\b)"},{"include":"#parameters"}],"beginCaptures":{"0":{"name":"punctuation.separator.c3"}}},{"begin":"[$#]?(?:\\b_*[a-z][_a-zA-Z0-9]*\\b)","end":"(?=[;,)])","patterns":[{"include":"#comments"},{"include":"#attribute"},{"name":"keyword.operator.variadic.c3","match":"\\.\\.\\."},{"begin":"=","end":"(?=[;,)])","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"keyword.operator.assignment.c3"}}}],"beginCaptures":{"0":{"name":"variable.parameter.c3"}}}]},"parens":{"patterns":[{"name":"meta.group.c3","begin":"\\(","end":"\\)","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.c3"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.c3"}}}]},"path":{"name":"meta.path.c3","match":"((?:\\b_*[a-z][_a-zA-Z0-9]*\\b))\\s*(::)","captures":{"1":{"name":"entity.name.scope-resolution.c3"},"2":{"name":"punctuation.separator.scope-resolution.c3"}}},"punctuation":{"patterns":[{"name":"punctuation.separator.c3","match":","},{"name":"punctuation.separator.c3","match":":"},{"name":"punctuation.accessor.c3","match":"\\.(?!\\.\\.)"}]},"raw_string_literal":{"name":"string.quoted.other.c3","begin":"`","end":"`(?!`)","patterns":[{"name":"constant.character.escape.c3","match":"``"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.c3"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.c3"}}},"real_literal":{"patterns":[{"name":"constant.numeric.float.c3","match":"\\b[0-9](?:_?[0-9])*(?:[Ff](?:16|32|64|128)?|[Dd])"},{"name":"constant.numeric.float.c3","match":"\\b(?:[0-9](?:_?[0-9])*[Ee][+-]?[0-9]+|[0-9](?:_?[0-9])*\\.(?!\\.)(?:[0-9](?:_?[0-9])*)?(?:[Ee][+-]?[0-9]+)?)(?:[Ff](?:16|32|64|128)?|[Dd])?"},{"name":"constant.numeric.float.c3","match":"\\b0[xX][a-fA-F0-9](?:_?[a-fA-F0-9])*(?:\\.(?:[a-fA-F0-9](?:_?[a-fA-F0-9])*)?)?[Pp][+-]?[0-9]+(?:[Ff](?:16|32|64|128)?|[Dd])?"}]},"statements":{"patterns":[{"include":"#comments"},{"include":"#modifier_keywords"},{"name":"punctuation.terminator.c3","match":";"},{"include":"#control_statements"},{"include":"#attribute"},{"include":"#block"},{"include":"#expression"}]},"string_literal":{"name":"string.quoted.double.c3","begin":"\"","end":"\"","patterns":[{"include":"#escape_sequence"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.c3"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.c3"}}},"structlike":{"begin":"(?=\\b(?:(struct|bitstruct)|(union))\\b)","end":"(?\u003c=\\})","patterns":[{"name":"meta.struct.c3","begin":"\\b(?:(struct|bitstruct)|(union))\\b","end":"(?=\\{)","patterns":[{"include":"#comments"},{"name":"support.type.c3 entity.name.type.struct.c3","match":"(?:\\b_*[A-Z][_A-Z0-9]*[a-z][_a-zA-Z0-9]*\\b)"},{"name":"variable.other.member.c3","match":"(?:\\b_*[a-z][_a-zA-Z0-9]*\\b)"},{"include":"#attribute"},{"begin":":","end":"(?=\\{)","patterns":[{"include":"#comments"},{"include":"#type_no_generics"},{"include":"#attribute"}],"beginCaptures":{"0":{"name":"punctuation.separator.c3"}}},{"name":"meta.group.c3","begin":"\\(","end":"\\)","patterns":[{"include":"#comments"},{"include":"#path"},{"include":"#type"},{"include":"#punctuation"}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.c3"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.c3"}}}],"beginCaptures":{"1":{"name":"keyword.declaration.struct.c3"},"2":{"name":"keyword.declaration.union.c3"}}},{"name":"meta.struct.body.c3","begin":"\\{","end":"\\}","patterns":[{"include":"#comments"},{"include":"#structlike"},{"include":"#modifier_keywords"},{"include":"#type"},{"name":"variable.other.member.c3","match":"(?:\\b_*[a-z][_a-zA-Z0-9]*\\b)"},{"include":"#attribute"},{"name":"punctuation.terminator.c3","match":";"},{"begin":":","end":"(?=;)","patterns":[{"include":"#attribute"},{"include":"#expression"}],"beginCaptures":{"0":{"name":"punctuation.separator.c3"}}}],"beginCaptures":{"0":{"name":"punctuation.section.block.begin.c3"}},"endCaptures":{"0":{"name":"punctuation.section.block.end.c3"}}}]},"top_level":{"patterns":[{"include":"#comments"},{"include":"#modifier_keywords"},{"begin":"\\$(?:assert|include|echo|exec)\\b","end":";","patterns":[{"include":"#comments"},{"include":"#expression"}],"beginCaptures":{"0":{"name":"keyword.other.c3"}},"endCaptures":{"0":{"name":"punctuation.terminator.c3"}}},{"name":"meta.module.c3","begin":"\\bmodule\\b","end":";","patterns":[{"include":"#comments"},{"include":"#attribute"},{"include":"#module_path"},{"include":"#generic_params"}],"beginCaptures":{"0":{"name":"keyword.declaration.module.c3"}},"endCaptures":{"0":{"name":"punctuation.terminator.c3"}}},{"name":"meta.import.c3","begin":"\\bimport\\b","end":";","patterns":[{"include":"#comments"},{"include":"#attribute"},{"include":"#module_path"},{"name":"punctuation.separator.c3","match":","}],"beginCaptures":{"0":{"name":"keyword.declaration.import.c3"}},"endCaptures":{"0":{"name":"punctuation.terminator.c3"}}},{"include":"#function"},{"name":"meta.alias.c3","begin":"\\balias\\b","end":";","patterns":[{"include":"#comments"},{"begin":"(?=((?:\\b_*[a-z][_a-zA-Z0-9]*\\b))\\s*=\\s*module)","end":"(?=;)","patterns":[{"begin":"((?:\\b_*[a-z][_a-zA-Z0-9]*\\b))","end":"(?=;)","patterns":[{"include":"#comments"},{"include":"#attribute"},{"begin":"=","end":"(?=;)","patterns":[{"include":"#comments"},{"begin":"module","end":"(?=;)","patterns":[{"include":"#comments"},{"include":"#module_path"}],"beginCaptures":{"0":{"name":"keyword.declaration.module.c3"}}}],"beginCaptures":{"0":{"name":"keyword.operator.assignment.c3"}}}]}]},{"begin":"(@(?:\\b_*[a-z][_a-zA-Z0-9]*\\b))|((?:\\b_*[a-z][_a-zA-Z0-9]*\\b))|((?:\\b_*[A-Z][_A-Z0-9]*\\b))","end":"(?=;)","patterns":[{"include":"#comments"},{"include":"#attribute"},{"include":"#assign_right_expression"}],"beginCaptures":{"1":{"name":"entity.name.function.c3"},"2":{"name":"variable.global.c3"},"3":{"name":"variable.other.constant.c3"}}},{"begin":"(?:\\b_*[A-Z][_A-Z0-9]*[a-z][_a-zA-Z0-9]*\\b)","end":"(?=;)","patterns":[{"include":"#comments"},{"include":"#attribute"},{"include":"#assign_right_expression"}],"beginCaptures":{"0":{"name":"support.type.c3 entity.name.type.c3"}}}],"beginCaptures":{"0":{"name":"keyword.declaration.alias.c3"}},"endCaptures":{"0":{"name":"punctuation.terminator.c3"}}},{"name":"meta.typedef.c3","begin":"\\btypedef\\b","end":";","patterns":[{"include":"#comments"},{"begin":"(?:\\b_*[A-Z][_A-Z0-9]*[a-z][_a-zA-Z0-9]*\\b)","end":"(?=;)","patterns":[{"include":"#comments"},{"include":"#parens"},{"include":"#attribute"},{"include":"#assign_right_expression"}],"beginCaptures":{"0":{"name":"support.type.c3 entity.name.type.c3"}}}],"beginCaptures":{"0":{"name":"keyword.declaration.typedef.c3"}},"endCaptures":{"0":{"name":"punctuation.terminator.c3"}}},{"name":"meta.faultdef.c3","begin":"\\bfaultdef\\b","end":";","patterns":[{"include":"#comments"},{"include":"#attribute"},{"name":"variable.other.constant.c3","match":"(?:\\b_*[A-Z][_A-Z0-9]*\\b)"},{"name":"punctuation.separator.c3","match":","}],"beginCaptures":{"0":{"name":"keyword.declaration.faultdef.c3"}},"endCaptures":{"0":{"name":"punctuation.terminator.c3"}}},{"name":"meta.attrdef.c3","begin":"\\battrdef\\b","end":";","patterns":[{"include":"#comments"},{"begin":"@(?:\\b_*[A-Z][_A-Z0-9]*[a-z][_a-zA-Z0-9]*\\b)","end":"(?=;)","patterns":[{"include":"#comments"},{"include":"#attribute"},{"name":"meta.group.c3","begin":"\\(","end":"\\)","patterns":[{"include":"#parameters"}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.c3"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.c3"}}},{"begin":"=","end":"(?=;)","patterns":[{"include":"#comments"},{"include":"#attribute"},{"name":"punctuation.separator.c3","match":","}],"beginCaptures":{"0":{"name":"keyword.operator.assignment.c3"}}}],"beginCaptures":{"0":{"name":"keyword.annotation.c3"}}}],"beginCaptures":{"0":{"name":"keyword.declaration.attrdef.c3"}},"endCaptures":{"0":{"name":"punctuation.terminator.c3"}}},{"include":"#structlike"},{"begin":"(?=\\benum\\b)","end":"(?\u003c=\\})","patterns":[{"name":"meta.enum.c3","begin":"\\benum\\b","end":"(?=\\{)","patterns":[{"include":"#comments"},{"name":"support.type.c3 entity.name.type.enum.c3","match":"(?:\\b_*[A-Z][_A-Z0-9]*[a-z][_a-zA-Z0-9]*\\b)"},{"include":"#attribute"},{"begin":":","end":"(?=\\{)","patterns":[{"include":"#comments"},{"name":"storage.modifier.c3","match":"\\b(?:inline|const)\\b"},{"include":"#type_no_generics"},{"contentName":"meta.group.c3","begin":"\\(","end":"\\)","patterns":[{"include":"#comments"},{"name":"storage.modifier.c3","match":"\\b(?:inline|const)\\b"},{"include":"#parameters"}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.c3"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.c3"}}},{"include":"#attribute"}],"beginCaptures":{"0":{"name":"punctuation.separator.c3"}}}],"beginCaptures":{"0":{"name":"keyword.declaration.enum.c3"}}},{"name":"meta.enum.body.c3","begin":"\\{","end":"\\}","patterns":[{"include":"#comments"},{"begin":"=","end":"(?=,)","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"keyword.operator.assignment.c3"}}},{"include":"#attribute"},{"name":"variable.other.constant.c3","match":"(?:\\b_*[A-Z][_A-Z0-9]*\\b)"},{"name":"punctuation.separator.c3","match":","}],"beginCaptures":{"0":{"name":"punctuation.section.block.begin.c3"}},"endCaptures":{"0":{"name":"punctuation.section.block.end.c3"}}}]},{"begin":"(?=\\binterface\\b)","end":"(?\u003c=\\})","patterns":[{"name":"meta.interface.c3","begin":"\\binterface\\b","end":"(?=\\{)","patterns":[{"include":"#comments"},{"name":"support.type.c3 entity.name.type.interface.c3","match":"(?:\\b_*[A-Z][_A-Z0-9]*[a-z][_a-zA-Z0-9]*\\b)"},{"include":"#attribute"},{"begin":":","end":"(?=\\{)","patterns":[{"include":"#comments"},{"include":"#punctuation"},{"include":"#type_no_generics"}],"beginCaptures":{"0":{"name":"punctuation.separator.c3"}}}],"beginCaptures":{"0":{"name":"keyword.declaration.interface.c3"}}},{"name":"meta.interface.body.c3","begin":"\\{","end":"\\}","patterns":[{"include":"#comments"},{"name":"punctuation.terminator.c3","match":";"},{"include":"#function"}],"beginCaptures":{"0":{"name":"punctuation.section.block.begin.c3"}},"endCaptures":{"0":{"name":"punctuation.section.block.end.c3"}}}]}]},"type":{"patterns":[{"include":"#path"},{"begin":"\\b(void|bool|char|double|float|float16|bfloat|int128|ichar|int|iptr|isz|long|short|uint128|uint|ulong|uptr|ushort|usz|float128|any|fault|typeid)\\b|(\\$?\\b(?:\\b_*[A-Z][_A-Z0-9]*[a-z][_a-zA-Z0-9]*\\b)\\b)","end":"(?=\\*\u003e|[^ \\t*\\[?{])","patterns":[{"include":"#comments"},{"include":"#generic_params"},{"include":"#type_suffix"}],"beginCaptures":{"1":{"name":"storage.type.built-in.primitive.c3"},"2":{"name":"support.type.c3 entity.name.type.c3"}}},{"include":"#type_expr"}]},"type_expr":{"patterns":[{"begin":"\\$(?:typeof|typefrom|evaltype)\\b","end":"(?\u003c=\\))","patterns":[{"include":"#parens"}],"beginCaptures":{"0":{"name":"storage.type.c3"}}},{"begin":"\\$vatype\\b","end":"(?\u003c=\\])","patterns":[{"include":"#brackets"}],"beginCaptures":{"0":{"name":"storage.type.c3"}}},{"include":"#type_suffix"}]},"type_no_generics":{"patterns":[{"include":"#path"},{"begin":"\\b(void|bool|char|double|float|float16|bfloat|int128|ichar|int|iptr|isz|long|short|uint128|uint|ulong|uptr|ushort|usz|float128|any|fault|typeid)\\b|(\\$?\\b(?:\\b_*[A-Z][_A-Z0-9]*[a-z][_a-zA-Z0-9]*\\b)\\b)","end":"(?=[^ \\t*\\[?@])","patterns":[{"include":"#comments"},{"include":"#type_suffix"}],"beginCaptures":{"1":{"name":"storage.type.built-in.primitive.c3"},"2":{"name":"support.type.c3 entity.name.type.c3"}}},{"include":"#type_expr"}]},"type_suffix":{"patterns":[{"include":"#brackets"},{"name":"keyword.operator.address.c3","match":"\\*"},{"name":"keyword.operator.c3","match":"\\?"}]},"variable":{"begin":"(?\u003c!#)\\$?(?:\\b_*[a-z][_a-zA-Z0-9]*\\b)","end":"(?=[^{ \\t])|(?\u003c=\\})","patterns":[{"include":"#generic_params"}],"beginCaptures":{"0":{"name":"variable.other.c3"}}}}}
@@ -1 +0,0 @@
1
- {"name":"Vento Html","scopeName":"text.html.vento","patterns":[{"include":"source.vento"},{"include":"text.html.basic"}]}