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.
- checksums.yaml +4 -4
- data/grammars/etc.json +1 -1
- data/grammars/markdown.mojo.codeblock.json +1 -0
- data/grammars/markdown.move.codeblock.json +1 -1
- data/grammars/source.4dm.json +1 -1
- data/grammars/source.abl.json +1 -1
- data/grammars/source.apex.json +1 -1
- data/grammars/source.astro.json +1 -1
- data/grammars/source.baml-jinja.json +1 -0
- data/grammars/source.baml.json +1 -0
- data/grammars/source.bb.json +1 -1
- data/grammars/source.brs.embedded.xml.json +1 -0
- data/grammars/source.bsl.json +1 -1
- data/grammars/source.c++.json +1 -1
- data/grammars/source.c.json +1 -1
- data/grammars/source.c3.json +1 -1
- data/grammars/source.cel.json +1 -0
- data/grammars/source.clarion.json +1 -1
- data/grammars/source.cmake.json +1 -1
- data/grammars/source.cmakecache.json +1 -1
- data/grammars/source.cpan-mirror.json +1 -0
- data/grammars/source.cpan-skiplist.json +1 -0
- data/grammars/source.cs.json +1 -1
- data/grammars/source.csv.json +1 -1
- data/grammars/source.curlrc.json +1 -1
- data/grammars/source.dart.json +1 -1
- data/grammars/source.daslang.json +1 -1
- data/grammars/source.data-weave.json +1 -1
- data/grammars/source.emacs.lisp.json +1 -1
- data/grammars/source.firrtl.json +1 -1
- data/grammars/source.flatbuffers.json +1 -0
- data/grammars/source.gdscript.json +1 -1
- data/grammars/source.gimprc.json +1 -0
- data/grammars/source.gimpres.json +1 -0
- data/grammars/source.graphql.json +1 -1
- data/grammars/source.gtkrc.json +1 -0
- data/grammars/source.hack.json +1 -1
- data/grammars/source.hosts.json +1 -1
- data/grammars/source.il.json +1 -0
- data/grammars/source.ilecobol.json +1 -1
- data/grammars/source.ink.json +1 -1
- data/grammars/source.interp.json +1 -0
- data/grammars/source.jac.json +1 -1
- data/grammars/source.jactoml.json +1 -0
- data/grammars/source.jai.json +1 -1
- data/grammars/source.julia.json +1 -1
- data/grammars/source.just.json +1 -1
- data/grammars/source.lean4.markdown.json +1 -1
- data/grammars/source.liquidsoap.json +1 -0
- data/grammars/source.llvm.json +1 -1
- data/grammars/source.luau.json +1 -1
- data/grammars/source.m2.json +1 -1
- data/grammars/source.m3u.json +1 -1
- data/grammars/source.matlab.json +1 -1
- data/grammars/source.mc.json +1 -1
- data/grammars/source.mdx.astro.json +1 -1
- data/grammars/source.mermaid.json +1 -1
- data/grammars/source.metta.json +1 -0
- data/grammars/source.mo.json +1 -1
- data/grammars/source.mojo.json +1 -1
- data/grammars/source.moonbit.config.json +1 -0
- data/grammars/source.moonbit.json +1 -1
- data/grammars/source.move.json +1 -1
- data/grammars/source.opy.json +1 -0
- data/grammars/source.pic.json +1 -1
- data/grammars/source.pkgconf.json +1 -0
- data/grammars/source.powerquery.json +1 -0
- data/grammars/source.powershell.json +1 -1
- data/grammars/source.prisma.json +1 -1
- data/grammars/source.quint.json +1 -0
- data/grammars/source.rascal.json +1 -1
- data/grammars/source.rascript.json +1 -1
- data/grammars/source.record-jar.json +1 -1
- data/grammars/source.redscript.json +1 -0
- data/grammars/source.rego.json +1 -1
- data/grammars/source.ron.json +1 -1
- data/grammars/source.rpgle.json +1 -1
- data/grammars/source.slang.json +1 -1
- data/grammars/source.slint.json +1 -1
- data/grammars/source.soql.json +1 -1
- data/grammars/source.spicedb-yaml.json +1 -0
- data/grammars/source.spicedb.json +1 -0
- data/grammars/source.stan.json +1 -1
- data/grammars/source.surrealql.json +1 -1
- data/grammars/source.swift.json +1 -1
- data/grammars/source.tsp.json +1 -1
- data/grammars/source.uri-list.json +1 -0
- data/grammars/source.v.json +1 -1
- data/grammars/source.vento.json +1 -1
- data/grammars/source.wgsl.json +1 -1
- data/grammars/spicedb-yaml.injection.json +1 -0
- data/grammars/text.cachedir.json +1 -0
- data/grammars/text.cookie-jar.json +1 -0
- data/grammars/text.html.vue.json +1 -1
- data/grammars/text.mac-tts.json +1 -0
- data/grammars/text.roff.json +1 -1
- data/grammars/text.srt.json +1 -1
- data/grammars/version +1 -1
- data/lib/linguist/VERSION +1 -1
- data/lib/linguist/classifier.rb +2 -1
- data/lib/linguist/generated.rb +16 -0
- data/lib/linguist/generic.yml +2 -0
- data/lib/linguist/heuristics.yml +17 -0
- data/lib/linguist/language.rb +8 -0
- data/lib/linguist/languages.json +1 -1
- data/lib/linguist/languages.yml +173 -12
- data/lib/linguist/lazy_blob.rb +19 -1
- data/lib/linguist/samples.json +1 -1
- data/lib/linguist/source/rugged.rb +16 -1
- data/lib/linguist/vendor.yml +3 -0
- metadata +30 -3
- data/grammars/source.vscode.c3.json +0 -1
- data/grammars/text.html.vento.json +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"scopeName":"source.jactoml","patterns":[{"name":"meta.jac.toml.array-table.jactoml","match":"^\\s*\\[\\[([^\\[\\]]+)\\]\\]\\s*$","captures":{"1":{"name":"entity.name.tag.jac-known.jactoml"}}},{"name":"meta.jac.toml.table.jactoml","match":"^\\s*\\[([^\\[\\]]+)\\]\\s*$","captures":{"1":{"name":"entity.name.tag.jac-known.jactoml"}}},{"include":"#table-incomplete"},{"include":"#commentDirective"},{"include":"#comment"},{"include":"#table"},{"include":"#entryBegin"},{"include":"#value"}],"repository":{"comment":{"match":"\\s*((#).*)$","captures":{"1":{"name":"comment.line.number-sign.toml"},"2":{"name":"punctuation.definition.comment.toml"}}},"commentDirective":{"match":"\\s*((#):.*)$","captures":{"1":{"name":"meta.preprocessor.toml"},"2":{"name":"punctuation.definition.meta.preprocessor.toml"}}},"entryBegin":{"name":"meta.entry.toml","match":"\\s*((?:(?:(?:[A-Za-z0-9_+-]+)|(?:\"[^\"]+\")|(?:'[^']+'))\\s*\\.?\\s*)+)\\s*(=)","captures":{"1":{"patterns":[{"name":"support.type.property-name.toml","match":"(?:[A-Za-z0-9_+-]+)|(?:\"[^\"]+\")|(?:'[^']+')"},{"name":"punctuation.separator.dot.toml","match":"\\."}]},"2":{"name":"punctuation.eq.toml"}}},"envPlaceholder":{"patterns":[{"name":"variable.other.env.jactoml","match":"\\$\\{[A-Za-z_][A-Za-z0-9_]*\\}"},{"name":"variable.other.env.jactoml","match":"(?\u003c![\\w$])\\$[A-Za-z_][A-Za-z0-9_]*"}]},"table":{"patterns":[{"name":"meta.table.toml","match":"^\\s*(\\[)\\s*((?:(?:(?:[A-Za-z0-9_+-]+)|(?:\"[^\"]+\")|(?:'[^']+'))\\s*\\.?\\s*)+)\\s*(\\])","captures":{"1":{"name":"punctuation.definition.table.toml"},"2":{"patterns":[{"name":"support.type.property-name.table.toml","match":"(?:[A-Za-z0-9_+-]+)|(?:\"[^\"]+\")|(?:'[^']+')"},{"name":"punctuation.separator.dot.toml","match":"\\."}]},"3":{"name":"punctuation.definition.table.toml"}}},{"name":"meta.array.table.toml","match":"^\\s*(\\[\\[)\\s*((?:(?:(?:[A-Za-z0-9_+-]+)|(?:\"[^\"]+\")|(?:'[^']+'))\\s*\\.?\\s*)+)\\s*(\\]\\])","captures":{"1":{"name":"punctuation.definition.array.table.toml"},"2":{"patterns":[{"name":"support.type.property-name.array.toml","match":"(?:[A-Za-z0-9_+-]+)|(?:\"[^\"]+\")|(?:'[^']+')"},{"name":"punctuation.separator.dot.toml","match":"\\."}]},"3":{"name":"punctuation.definition.array.table.toml"}}},{"name":"meta.table.inline.toml","begin":"(\\{)","end":"(\\})","patterns":[{"include":"#comment"},{"name":"punctuation.separator.table.inline.toml","match":","},{"include":"#entryBegin"},{"include":"#value"}],"beginCaptures":{"1":{"name":"punctuation.definition.table.inline.toml"}},"endCaptures":{"1":{"name":"punctuation.definition.table.inline.toml"}}}]},"table-incomplete":{"name":"invalid.illegal.table.jactoml","match":"^\\s*\\[+[^\\n]*$"},"value":{"patterns":[{"name":"string.quoted.triple.basic.block.toml","begin":"\"\"\"","end":"\"\"\"","patterns":[{"include":"#envPlaceholder"},{"name":"constant.character.escape.toml","match":"\\\\([btnfr\"\\\\\\n/ ]|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})"},{"name":"invalid.illegal.escape.toml","match":"\\\\[^btnfr/\"\\\\\\n]"}]},{"name":"string.quoted.single.basic.line.toml","begin":"\"","end":"\"","patterns":[{"include":"#envPlaceholder"},{"name":"constant.character.escape.toml","match":"\\\\([btnfr\"\\\\\\n/ ]|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})"},{"name":"invalid.illegal.escape.toml","match":"\\\\[^btnfr/\"\\\\\\n]"}]},{"name":"string.quoted.triple.literal.block.toml","begin":"'''","end":"'''","patterns":[{"include":"#envPlaceholder"}]},{"name":"string.quoted.single.literal.line.toml","begin":"'","end":"'","patterns":[{"include":"#envPlaceholder"}]},{"match":"(?\u003c!\\w)(\\d{4}\\-\\d{2}\\-\\d{2}[T| ]\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[\\+\\-]\\d{2}:\\d{2}))(?!\\w)","captures":{"1":{"name":"constant.other.time.datetime.offset.toml"}}},{"match":"(\\d{4}\\-\\d{2}\\-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?)","captures":{"1":{"name":"constant.other.time.datetime.local.toml"}}},{"name":"constant.other.time.date.toml","match":"\\d{4}\\-\\d{2}\\-\\d{2}"},{"name":"constant.other.time.time.toml","match":"\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?"},{"match":"(?\u003c!\\w)(true|false)(?!\\w)","captures":{"1":{"name":"constant.language.boolean.toml"}}},{"match":"(?\u003c!\\w)([\\+\\-]?(0|([1-9](([0-9]|_[0-9])+)?))(?:(?:\\.([0-9]+))?[eE][\\+\\-]?[1-9]_?[0-9]*|(?:\\.[0-9_]*)))(?!\\w)","captures":{"1":{"name":"constant.numeric.float.toml"}}},{"match":"(?\u003c!\\w)((?:[\\+\\-]?(0|([1-9](([0-9]|_[0-9])+)?))))(?!\\w)","captures":{"1":{"name":"constant.numeric.integer.toml"}}},{"match":"(?\u003c!\\w)([\\+\\-]?inf)(?!\\w)","captures":{"1":{"name":"constant.numeric.inf.toml"}}},{"match":"(?\u003c!\\w)([\\+\\-]?nan)(?!\\w)","captures":{"1":{"name":"constant.numeric.nan.toml"}}},{"match":"(?\u003c!\\w)((?:0x(([0-9a-fA-F](([0-9a-fA-F]|_[0-9a-fA-F])+)?))))(?!\\w)","captures":{"1":{"name":"constant.numeric.hex.toml"}}},{"match":"(?\u003c!\\w)(0o[0-7](_?[0-7])*)(?!\\w)","captures":{"1":{"name":"constant.numeric.oct.toml"}}},{"match":"(?\u003c!\\w)(0b[01](_?[01])*)(?!\\w)","captures":{"1":{"name":"constant.numeric.bin.toml"}}},{"name":"meta.array.toml","begin":"(?\u003c!\\w)(\\[)\\s*","end":"\\s*(\\])(?!\\w)","patterns":[{"name":"punctuation.separator.array.toml","match":","},{"include":"#comment"},{"include":"#value"}],"beginCaptures":{"1":{"name":"punctuation.definition.array.toml"}},"endCaptures":{"1":{"name":"punctuation.definition.array.toml"}}},{"name":"meta.table.inline.toml","begin":"(\\{)","end":"(\\})","patterns":[{"include":"#comment"},{"name":"punctuation.separator.table.inline.toml","match":","},{"include":"#entryBegin"},{"include":"#value"}],"beginCaptures":{"1":{"name":"punctuation.definition.table.inline.toml"}},"endCaptures":{"1":{"name":"punctuation.definition.table.inline.toml"}}}]}}}
|
data/grammars/source.jai.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"Jai","scopeName":"source.jai","patterns":[{"include":"#markdown-block-comments"},{"include":"#block-comments"},{"include":"#comments"},{"include":"#imports"},{"include":"#asm"},{"include":"#strings"},{"include":"#deprecated-names"},{"include":"#casts"},{"include":"#keywords"},{"include":"#proc"},{"include":"#deprecated"},{"include":"#fors"},{"include":"#structs"},{"include":"#enums"},{"include":"#enum-members"},{"include":"#composite-literals"},{"include":"#symbols"},{"include":"#support"},{"include":"#numbers"},{"include":"#notes"},{"include":"#declarations"},{"include":"#more-directives"},{"include":"#variables"},{"include":"#more-numbers"}],"repository":{"array":{"match":"(\\[)([^\\]]*)(\\])","captures":{"1":{"name":"punctuation.section.brackets.begin.jai"},"2":{"patterns":[{"include":"#expression"}]},"3":{"name":"punctuation.section.brackets.end.jai"}}},"asm":{"contentName":"source.asm.x86_64","begin":"(#asm)\\s*(([A-Z0-9]+)\\s*(,[^}]*)?)?(\\{)","end":"(\\})","patterns":[{},{"match":"(===)","captures":{"1":{"name":"keyword.operator.pin.jai"}}}],"beginCaptures":{"1":{"name":"keyword.other.directive.asm.jai"},"3":{"name":"keyword.other.feature.asm.jai"},"4":{"patterns":[{"include":"#comma-joined-asm-features"}]},"5":{"name":"punctuation.section.braces.begin.jai"}},"endCaptures":{"1":{"name":"punctuation.section.braces.end.jai"}}},"block-comments":{"name":"comment.block.jai","begin":"(\\/\\*)","end":"(\\*\\/)","patterns":[{"name":"comment.block.jai","include":"#block-comments"},{"match":"(`)([^`]*)(`)","captures":{"1":{"name":"markup.quote.comment.jai"},"2":{"name":"comment.block.backquoted.jai"},"3":{"name":"markup.quote.comment.jai"}}},{"match":"(\\@)((?i)TODO)([^@]*)","captures":{"1":{"name":"comment.block.punctuation.annotation.todo.jai"},"2":{"name":"comment.block.annotation.todo.jai"},"3":{"name":"comment.block.todo.jai"}}},{"match":"(\\@)((?i)Release)([^@]*)","captures":{"1":{"name":"comment.block.punctuation.annotation.release.jai"},"2":{"name":"comment.block.annotation.release.jai"},"3":{"name":"comment.block.release.jai"}}},{"match":"(\\@)((?i)Note)([^@]*)","captures":{"1":{"name":"comment.block.punctuation.annotation.note.jai"},"2":{"name":"comment.block.annotation.note.jai"},"3":{"name":"comment.block.note.jai"}}},{"match":"(\\@)((?i)Urgent)([^@]*)","captures":{"1":{"name":"comment.block.punctuation.annotation.urgent.jai"},"2":{"name":"comment.block.annotation.urgent.jai"},"3":{"name":"comment.block.urgent.jai"}}},{"match":"(\\@)((?i)Speed)([^@]*)","captures":{"1":{"name":"comment.block.punctuation.annotation.speed.jai"},"2":{"name":"comment.block.annotation.speed.jai"},"3":{"name":"comment.block.speed.jai"}}},{"match":"(\\@)((?i)Robustness)([^@]*)","captures":{"1":{"name":"comment.block.punctuation.annotation.robustness.jai"},"2":{"name":"comment.block.annotation.robustness.jai"},"3":{"name":"comment.block.robustness.jai"}}},{"match":"(\\@)((?i)NoCheckin)([^@]*)","captures":{"1":{"name":"comment.block.punctuation.annotation.nocheckin.jai"},"2":{"name":"comment.block.annotation.nocheckin.jai"},"3":{"name":"comment.block.todo.jai"}}},{"match":"(\\@)(\\w+)","captures":{"1":{"name":"comment.block.punctuation.annotation.jai"},"2":{"name":"comment.block.annotation.jai"}}},{"name":"comment.block.signature.jai","match":"(-) (\\w+) ([0-9]{4}-[0-9]{2}-[0-9]{2})","captures":{"1":{"name":"comment.block.punctuation.signature.jai"},"2":{"name":"comment.block.signature.name.jai"},"3":{"name":"comment.block.signature.date.jai"}}},{"match":"^\\s*(\\[)( )(\\])(.*)","captures":{"1":{"name":"comment.block.punctuation.checklist.brackets.todo.begin.jai"},"2":{"name":"comment.block.punctuation.checklist.mark.todo.jai"},"3":{"name":"comment.block.punctuation.checklist.brackets.todo.end.jai"},"4":{"name":"comment.block.checklist.item.todo.jai","patterns":[{"include":"#block-comments-line"}]}}},{"match":"^\\s*(\\[)(\\.)(\\])(.*)","captures":{"1":{"name":"comment.block.punctuation.checklist.brackets.partial.begin.jai"},"2":{"name":"comment.block.punctuation.checklist.mark.partial.jai"},"3":{"name":"comment.block.punctuation.checklist.brackets.partial.end.jai"},"4":{"name":"comment.block.checklist.item.partial.jai","patterns":[{"include":"#block-comments-line"}]}}},{"match":"^\\s*(\\[)([^ \\.])(\\])(.*)","captures":{"1":{"name":"comment.block.punctuation.checklist.brackets.done.begin.jai"},"2":{"name":"comment.block.punctuation.checklist.mark.done.jai"},"3":{"name":"comment.block.punctuation.checklist.brackets.done.end.jai"},"4":{"name":"comment.block.checklist.item.done.jai","patterns":[{"include":"#block-comments-line"}]}}}],"beginCaptures":{"1":{"name":"punctuation.definition.comment.jai"}},"endCaptures":{"1":{"name":"punctuation.definition.comment.jai"}}},"block-comments-line":{"patterns":[{"match":"(`)([^`]*)(`)","captures":{"1":{"name":"markup.quote.comment.jai"},"2":{"name":"comment.block.backquoted.jai"},"3":{"name":"markup.quote.comment.jai"}}},{"match":"(\\@)((?i)TODO)([^@]*)","captures":{"1":{"name":"comment.block.punctuation.annotation.todo.jai"},"2":{"name":"comment.block.annotation.todo.jai"},"3":{"name":"comment.block.todo.jai"}}},{"match":"(\\@)((?i)Release)([^@]*)","captures":{"1":{"name":"comment.block.punctuation.annotation.release.jai"},"2":{"name":"comment.block.annotation.release.jai"},"3":{"name":"comment.block.release.jai"}}},{"match":"(\\@)((?i)Note)([^@]*)","captures":{"1":{"name":"comment.block.punctuation.annotation.note.jai"},"2":{"name":"comment.block.annotation.note.jai"},"3":{"name":"comment.block.note.jai"}}},{"match":"(\\@)((?i)Urgent)([^@]*)","captures":{"1":{"name":"comment.block.punctuation.annotation.urgent.jai"},"2":{"name":"comment.block.annotation.urgent.jai"},"3":{"name":"comment.block.urgent.jai"}}},{"match":"(\\@)((?i)Speed)([^@]*)","captures":{"1":{"name":"comment.block.punctuation.annotation.speed.jai"},"2":{"name":"comment.block.annotation.speed.jai"},"3":{"name":"comment.block.speed.jai"}}},{"match":"(\\@)((?i)Robustness)([^@]*)","captures":{"1":{"name":"comment.block.punctuation.annotation.robustness.jai"},"2":{"name":"comment.block.annotation.robustness.jai"},"3":{"name":"comment.block.robustness.jai"}}},{"match":"(\\@)((?i)NoCheckin)([^@]*)","captures":{"1":{"name":"comment.block.punctuation.annotation.nocheckin.jai"},"2":{"name":"comment.block.annotation.nocheckin.jai"},"3":{"name":"comment.block.nocheckin.jai"}}},{"match":"(\\@)(\\w+)","captures":{"1":{"name":"comment.block.punctuation.annotation.jai"},"2":{"name":"comment.block.annotation.jai"}}},{"name":"comment.block.signature.jai","match":"(-)\\s*(.*)\\s*([0-9]{4}-[0-9]{2}-[0-9]{2})","captures":{"1":{"name":"comment.block.punctuation.signature.jai"},"2":{"name":"comment.block.signature.name.jai"},"3":{"name":"comment.block.signature.date.jai"}}}]},"casts":{"patterns":[{"match":"\\b(cast(,trunc)?(,no_check)?(,trunc)?)\\s*(\\()\\s*((\\**)[a-zA-Z_](?:\\w|\\\\ *)*)\\s*(\\))","captures":{"1":{"name":"keyword.control.cast.jai"},"5":{"name":"punctuation.section.parens.begin.jai"},"6":{"name":"storage.type"},"7":{"name":"keyword.operator.pointer.jai"},"8":{"name":"punctuation.section.parens.begin.jai"}}},{"name":"keyword.control.cast.jai","match":"\\b(xx|cast)\\b"}]},"comma-joined-asm-features":{"match":"(,)\\s*([A-Z0-9]+)\\s*","captures":{"1":{"name":"punctuation.separator.jai"},"2":{"name":"keyword.other.feature.asm.jai"}}},"comma-joined-variables":{"match":"(,)\\s*((it_index|it)|([a-zA-Z_](?:\\w|\\\\ *)*))","captures":{"1":{"name":"punctuation.separator.jai"},"2":{"name":"variable.other.declaration.jai"},"3":{"name":"support.variable.jai"}}},"comments":{"patterns":[{"match":"(//)\\s*(\\[)( )(\\])(.*)","captures":{"1":{"name":"punctuation.definition.comment.jai"},"2":{"name":"comment.line.double-slash.punctuation.checklist.brackets.todo.begin.jai"},"3":{"name":"comment.line.double-slash.punctuation.checklist.mark.todo.jai"},"4":{"name":"comment.line.double-slash.punctuation.checklist.brackets.todo.end.jai"},"5":{"name":"comment.line.double-slash.checklist.item.todo.jai","patterns":[{"include":"#comments-line"}]}}},{"match":"(//)\\s*(\\[)(\\.)(\\])(.*)","captures":{"1":{"name":"punctuation.definition.comment.jai"},"2":{"name":"comment.line.double-slash.punctuation.checklist.brackets.partial.begin.jai"},"3":{"name":"comment.line.double-slash.punctuation.checklist.mark.partial.jai"},"4":{"name":"comment.line.double-slash.punctuation.checklist.brackets.partial.end.jai"},"5":{"name":"comment.line.double-slash.checklist.item.partial.jai","patterns":[{"include":"#comments-line"}]}}},{"match":"(//)\\s*(\\[)([^ \\.])(\\])(.*)","captures":{"1":{"name":"punctuation.definition.comment.jai"},"2":{"name":"comment.line.double-slash.punctuation.checklist.brackets.done.begin.jai"},"3":{"name":"comment.line.double-slash.punctuation.checklist.mark.done.jai"},"4":{"name":"comment.line.double-slash.punctuation.checklist.brackets.done.end.jai"},"5":{"name":"comment.line.double-slash.checklist.item.done.jai","patterns":[{"include":"#comments-line"}]}}},{"match":"(//)(.*)","captures":{"1":{"name":"punctuation.definition.comment.jai"},"2":{"name":"comment.line.double-slash.jai","patterns":[{"include":"#comments-line"}]}}}]},"comments-line":{"patterns":[{"match":"(`)([^`]*)(`)","captures":{"1":{"name":"markup.quote.comment.jai"},"2":{"name":"comment.line.double-slash.backquoted.jai"},"3":{"name":"markup.quote.comment.jai"}}},{"match":"(\\@)((?i)TODO)([^@]*)","captures":{"1":{"name":"comment.line.double-slash.punctuation.annotation.todo.jai"},"2":{"name":"comment.line.double-slash.annotation.todo.jai"},"3":{"name":"comment.line.double-slash.todo.jai"}}},{"match":"(\\@)((?i)Release)([^@]*)","captures":{"1":{"name":"comment.line.double-slash.punctuation.annotation.release.jai"},"2":{"name":"comment.line.double-slash.annotation.release.jai"},"3":{"name":"comment.line.double-slash.release.jai"}}},{"match":"(\\@)((?i)Note)([^@]*)","captures":{"1":{"name":"comment.line.double-slash.punctuation.annotation.note.jai"},"2":{"name":"comment.line.double-slash.annotation.note.jai"},"3":{"name":"comment.line.double-slash.note.jai"}}},{"match":"(\\@)((?i)Urgent)([^@]*)","captures":{"1":{"name":"comment.line.double-slash.punctuation.annotation.urgent.jai"},"2":{"name":"comment.line.double-slash.annotation.urgent.jai"},"3":{"name":"comment.line.double-slash.urgent.jai"}}},{"match":"(\\@)((?i)Speed)([^@]*)","captures":{"1":{"name":"comment.line.double-slash.punctuation.annotation.speed.jai"},"2":{"name":"comment.line.double-slash.annotation.speed.jai"},"3":{"name":"comment.line.double-slash.speed.jai"}}},{"match":"(\\@)((?i)Robustness)([^@]*)","captures":{"1":{"name":"comment.line.double-slash.punctuation.annotation.robustness.jai"},"2":{"name":"comment.line.double-slash.annotation.robustness.jai"},"3":{"name":"comment.line.double-slash.robustness.jai"}}},{"match":"(\\@)((?i)NoCheckin)([^@]*)","captures":{"1":{"name":"comment.line.double-slash.punctuation.annotation.nocheckin.jai"},"2":{"name":"comment.line.double-slash.annotation.nocheckin.jai"},"3":{"name":"comment.line.double-slash.nocheckin.jai"}}},{"match":"(\\@)(\\w+)","captures":{"1":{"name":"comment.line.double-slash.punctuation.annotation.jai"},"2":{"name":"comment.line.double-slash.annotation.jai"}}},{"name":"comment.line.double-slash.signature.jai","match":"(-)\\s*(.*)\\s*([0-9]{4}-[0-9]{2}-[0-9]{2})","captures":{"1":{"name":"comment.line.double-slash.punctuation.signature.jai"},"2":{"name":"comment.line.double-slash.signature.name.jai"},"3":{"name":"comment.line.double-slash.signature.date.jai"}}}]},"composite-literals":{"patterns":[{"match":"\\b([a-zA-Z_](?:\\w|\\\\ *)*)?\\s*(\\.)(\\{)","captures":{"1":{"name":"storage.type.struct.jai"},"2":{"name":"punctuation.accessor.jai"},"3":{"name":"punctuation.section.braces.begin.jai"}}},{"match":"\\b([a-zA-Z_](?:\\w|\\\\ *)*)?\\s*(\\.)(\\[)","captures":{"1":{"name":"storage.type.struct.jai"},"2":{"name":"punctuation.accessor.jai"},"3":{"name":"punctuation.section.bracket.begin.jai"}}}]},"declarations":{"patterns":[{"match":"\\b([a-zA-Z_](?:\\w|\\\\ *)*)((\\s*,\\s*[a-zA-Z_](?:\\w|\\\\ *)*)*)\\s*(:)\\s*(\\[[^\\]]*\\])?\\s*((\\**)((#type(,(isa|distinct))?)|[a-zA-Z_](?:\\w|\\\\ *)*))?\\s*(:)","captures":{"1":{"name":"variable.other.constant.declaration.jai"},"12":{"name":"keyword.declaration.jai"},"2":{"patterns":[{"include":"#comma-joined-variables"}]},"4":{"name":"keyword.declaration.jai"},"5":{"patterns":[{"include":"#array"}]},"6":{"name":"storage.type.jai"},"7":{"name":"keyword.operator.pointer.jai"},"9":{"name":"keyword.other.directive.jai"}}},{"match":"\\b([a-zA-Z_](?:\\w|\\\\ *)*)\\s*(:)\\s*(\\[[^\\]]*\\])?\\s*((\\**)((#type(,(isa|distinct))?)|[a-zA-Z_](?:\\w|\\\\ *)*))?\\s*(:)","captures":{"1":{"name":"variable.other.constant.declaration.jai"},"10":{"name":"keyword.declaration.jai"},"2":{"name":"keyword.declaration.jai"},"3":{"patterns":[{"include":"#array"}]},"4":{"name":"storage.type.jai"},"5":{"name":"keyword.operator.pointer.jai"},"7":{"name":"keyword.other.directive.jai"}}},{"match":"\\b((it_index|it)|([a-zA-Z_](?:\\w|\\\\ *)*))((\\s*,\\s*[a-zA-Z_](?:\\w|\\\\ *)*)*)\\s*(:)\\s*((struct)|(enum)|(enum_flags))\\b\\s*([a-zA-Z_](?:\\w|\\\\ *)*)?","captures":{"1":{"name":"variable.other.declaration.jai"},"10":{"name":"keyword.declaration.enum.jai"},"11":{"name":"storage.type.jai"},"2":{"name":"support.variable.jai"},"4":{"patterns":[{"include":"#comma-joined-variables"}]},"6":{"name":"keyword.declaration.jai"},"8":{"name":"keyword.declaration.struct.jai"},"9":{"name":"keyword.declaration.enum.jai"}}},{"match":"\\b((it_index|it)|([a-zA-Z_](?:\\w|\\\\ *)*))\\s*(:)\\s*((struct)|(enum)|(enum_flags))\\b\\s*([a-zA-Z_](?:\\w|\\\\ *)*)?","captures":{"1":{"name":"variable.other.declaration.jai"},"2":{"name":"support.variable.jai"},"4":{"name":"keyword.declaration.jai"},"6":{"name":"keyword.declaration.struct.jai"},"7":{"name":"keyword.declaration.enum.jai"},"8":{"name":"keyword.declaration.enum.jai"},"9":{"name":"storage.type.jai"}}},{"match":"\\b((it_index|it)|([a-zA-Z_](?:\\w|\\\\ *)*))((\\s*,\\s*[a-zA-Z_](?:\\w|\\\\ *)*)*)\\s*(:)\\s*(\\[[^\\]]*\\])?\\s*((\\**)((#type(,(isa|distinct))?)|[a-zA-Z_](?:\\w|\\\\ *)*))?\\s*(=)?","captures":{"1":{"name":"variable.other.declaration.jai"},"11":{"name":"keyword.other.directive.jai"},"14":{"name":"keyword.declaration.jai"},"2":{"name":"support.variable.jai"},"4":{"patterns":[{"include":"#comma-joined-variables"}]},"6":{"name":"keyword.declaration.jai"},"7":{"patterns":[{"include":"#array"}]},"8":{"name":"storage.type.jai"},"9":{"name":"keyword.operator.pointer.jai"}}},{"match":"\\b((it_index|it)|([a-zA-Z_](?:\\w|\\\\ *)*))\\s*(:)\\s*(\\[[^\\]]*\\])?\\s*((\\**)((#type(,(isa|distinct))?)|[a-zA-Z_](?:\\w|\\\\ *)*))?\\s*(=)?","captures":{"1":{"name":"variable.other.declaration.jai"},"12":{"name":"keyword.declaration.jai"},"2":{"name":"support.variable.jai"},"4":{"name":"keyword.declaration.jai"},"5":{"patterns":[{"include":"#array"}]},"6":{"name":"storage.type.jai"},"7":{"name":"keyword.operator.pointer.jai"},"9":{"name":"keyword.other.directive.jai"}}}]},"deprecated":{"match":"(#deprecated\\s*((\")(([^\"\\\\]|\\\\.)*)(\"))?)","captures":{"1":{"name":"invalid.deprecated.jai"},"3":{"name":"punctuation.definition.string.deprecated.begin.jai"},"4":{"name":"string-quoted.other.deprecated.jai"},"6":{"name":"punctuation.definition.string.deprecated.end.jai"}}},"enum-members":{"match":"([^\\w])(\\.)([a-zA-Z_](?:\\w|\\\\ *)*)","captures":{"1":{"patterns":[{"include":"#expression"}]},"2":{"name":"punctuation.accessor.jai"},"3":{"name":"variable.enum.jai"}}},"enums":{"match":"\\b([a-zA-Z_](?:\\w|\\\\ *)*)\\s*(::)\\s*(enum(_flags)?)","captures":{"1":{"name":"entity.name.enum.jai"},"2":{"name":"keyword.declaration.jai"},"3":{"name":"keyword.declaration.enum.jai"}}},"expression":{"patterns":[{"include":"#strings"},{"include":"#casts"},{"include":"#deprecated"},{"include":"#enum-members"},{"include":"#keywords"},{"include":"#symbols"},{"include":"#support"},{"include":"#numbers"},{"include":"#variables"},{"include":"#more-numbers"}]},"fors":{"patterns":[{"match":"\\b(for)\\s+([*\u003c\\s]*)\\s*([a-zA-Z_](?:\\w|\\\\ *)*)\\s*(,)\\s*([a-zA-Z_](?:\\w|\\\\ *)*)\\s*(:)","captures":{"1":{"name":"keyword.control.loop.for.jai"},"2":{"name":"keyword.operator.jai"},"3":{"name":"variable.other.declaration.jai"},"4":{"name":"punctuation.separator.jai"},"5":{"name":"variable.other.declaration.jai"},"6":{"name":"keyword.declaration.jai"}}},{"match":"\\b(for)\\s+([*\u003c\\s]*)\\s*([a-zA-Z_](?:\\w|\\\\ *)*)\\s*(:)","captures":{"1":{"name":"keyword.control.loop.for.jai"},"2":{"name":"keyword.operator.jai"},"3":{"name":"variable.other.declaration.jai"},"4":{"name":"keyword.declaration.jai"}}},{"match":"\\b(for)\\s+([*\u003c\\s]*)","captures":{"1":{"name":"keyword.control.loop.for.jai"},"2":{"name":"keyword.operator.jai"}}}]},"imports":{"patterns":[{"match":"^\\s*([a-zA-Z_](?:\\w|\\\\ *)*)\\s*(::)\\s*(#import(,file|,dir|,string)?)\\s+(\")([^\"]+)(\")","captures":{"1":{"name":"entity.name.namespace.jai"},"2":{"name":"keyword.declaration.jai"},"3":{"name":"keyword.control.import.directive.jai"},"6":{"name":"punctuation.definition.string.import.begin.jai"},"7":{"name":"string-quoted.other.import.jai"},"8":{"name":"punctuation.definition.string.import.end.jai"}}},{"match":"(#import(,file|,dir|,string)?|#load)\\s+(\")([^\"]+)(\")","captures":{"1":{"name":"keyword.control.import.directive.jai"},"4":{"name":"punctuation.definition.string.import.begin.jai"},"5":{"name":"string-quoted.other.import.jai"},"6":{"name":"punctuation.definition.string.import.end.jai"}}},{"match":"(#import(,file|,dir|,string)?|#load)\\s+(\"[^\"]*)?$","captures":{"1":{"name":"keyword.control.import.directive.jai"},"4":{"name":"punctuation.definition.string.import.begin.jai"},"5":{"name":"string-quoted.other.import.jai"}}},{"match":"^\\s*([a-zA-Z_](?:\\w|\\\\ *)*)\\s*(::)\\s*(#foreign_(system_)?library)\\s+(\")([^\"]+)(\")","captures":{"1":{"name":"constant.other.import.jai"},"2":{"name":"keyword.declaration.jai"},"3":{"name":"keyword.control.import.directive.jai"},"5":{"name":"punctuation.definition.string.import.begin.jai"},"6":{"name":"string-quoted.other.import.jai"},"7":{"name":"punctuation.definition.string.import.end.jai"}}},{"match":"^\\s*([a-zA-Z_](?:\\w|\\\\ *)*)\\s*(::)\\s*(#foreign_(system_)?library)\\s+(\"[^\"]*)?$","captures":{"1":{"name":"constant.other.import.jai"},"2":{"name":"keyword.declaration.jai"},"3":{"name":"keyword.control.import.directive.jai"},"5":{"name":"punctuation.definition.string.import.begin.jai"},"6":{"name":"string-quoted.other.import.jai"}}}]},"keywords":{"patterns":[{"name":"keyword.control.conditional.jai","match":"\\b(if|ifx|then|else|case)\\b"},{"name":"keyword.control.jump.jai","match":"\\b(return|break|continue)\\b"},{"name":"keyword.control.loop.while.jai","match":"\\b(while)\\b"},{"name":"keyword.control.loop.for.remove.jai","match":"\\b(remove)\\b"},{"name":"keyword.control.defer.jai","match":"\\b(defer)\\b"},{"name":"keyword.other.directive.jai","match":"(#add_context|#align|#as|#assert|#bake(_arguments|_constants)?|#bytes|#caller_code|#caller_location|#code(,(null|typed))?|#compile_time|#complete|#dump|#elsewhere|#expand|#file|#filepath|#ifx|#if|\\binline\\b|#insert(,scope)?|#intrinsic|#modify|#module_parameters|#must|#no_abc|#no_aoc|#no_alias|#no_padding|#no_reset|#place|#placeholder|#procedure_name|#procedure_of_call|#program_export|#run|#exists|#v2|#Context|#specified|#symmetric|#this|#through|#type(,(isa|distinct))?|#type_info_none|#type_info_procedures_are_void_pointers|#type_info_no_size_complaint|#unshared)\\b"},{"name":"keyword.other.directive.scope.jai","match":"(#scope_export|#scope_file|#scope_module)"},{"name":"keyword.other.directive.string.jai","match":"(#char)"},{"name":"keyword.other.context.jai","match":"\\b(context|push_context)\\b"},{"name":"keyword.other.using.jai","match":"\\b(using(,map|,except|,only)?)\\b"},{"name":"keyword.other.allocator.jai","match":"\\b(temp)\\b"},{"name":"constant.language.true.jai","match":"\\b(true)\\b"},{"name":"constant.language.false.jai","match":"\\b(false)\\b"},{"name":"constant.language.null.jai","match":"\\b(null)\\b"},{"name":"keyword.declaration.struct.jai","match":"\\b(struct)\\b"},{"name":"keyword.declaration.enum.jai","match":"\\b(enum)\\b"},{"name":"keyword.declaration.union.jai","match":"\\b(union)\\b"},{"name":"storage.type.jai","match":"\\b(int|u8|u16|u32|u64|s8|s16|s32|s64|float|float32|float64|bool|string|void|Code|Type)\\b"}]},"more-directives":{"match":"(#foreign\\s+([A-Z-a-z_]\\w*(\\s*(\")(([^\"\\\\]|\\\\.)*)(\"))?)|#compiler|#intrinsic|#runtime_support)","captures":{"1":{"name":"keyword.control.import.directive.decl.jai"},"3":{"name":"constant.other.import.jai"},"5":{"name":"punctuation.definition.string.import.begin.jai"},"6":{"name":"string-quoted.other.import.jai"},"8":{"name":"punctuation.definition.string.import.end.jai"}}},"more-numbers":{"patterns":[{"match":"(0b[01_]+)","captures":{"1":{"name":"constant.numeric.jai"}}},{"match":"(0x[a-fA-F_\\d]+)","captures":{"1":{"name":"constant.numeric.jai"}}},{"match":"(\\d[\\d_]*)","captures":{"1":{"name":"constant.numeric.jai"}}}]},"numbers":{"patterns":[{"match":"[(\\[{:\\s=.,/*+\u003c\u003e-](0b[01_]+)","captures":{"1":{"name":"constant.numeric.jai"}}},{"match":"[(\\[{:\\s=.,/*+\u003c\u003e-](0x[a-fA-F_\\d]+)","captures":{"1":{"name":"constant.numeric.jai"}}},{"match":"[(\\[\\{:\\s=.,/*+\u003c\u003e-](\\d[\\d_]*)","captures":{"1":{"name":"constant.numeric.jai"}}}]},"proc":{"patterns":[{"match":"\\b([a-zA-Z_](?:\\w|\\\\ *)*)\\s*(::)\\s*(#type)\\b\\s*((inline)\\s*|(no_inline)\\s*)*(\\()(.*)(\\))\\s*((-\u003e)([^{]+))?\\s*(((#foreign\\s+([a-zA-Z_](?:\\w|\\\\ *)*(\\s*(\")(([^\"\\\\]|\\\\.)*)(\"))?)|#compiler|#intrinsic|#runtime_support)\\s*)+\\s*(#deprecated\\s*((\")(([^\"\\\\]|\\\\.)*)(\"))?)?\\s*(;)?)?(\\s*#c_call|\\s*#no_context|\\s*#symmetric)*","captures":{"1":{"name":"variable.other.constant.declaration.jai"},"11":{"name":"punctuation.return.jai"},"12":{"name":"meta.function.return-type.jai","patterns":[{"include":"#return-declarations"}]},"13":{"name":"keyword.control.import.directive.decl.jai"},"16":{"name":"constant.other.import.jai"},"18":{"name":"punctuation.definition.string.import.begin.jai"},"19":{"name":"string-quoted.other.import.jai"},"2":{"name":"keyword.declaration.jai"},"21":{"name":"punctuation.definition.string.import.end.jai"},"22":{"name":"invalid.deprecated.jai"},"24":{"name":"punctuation.definition.string.deprecated.begin.jai"},"25":{"name":"string-quoted.other.deprecated.jai"},"27":{"name":"punctuation.definition.string.deprecated.end.jai"},"28":{"name":"punctuation.terminator.jai"},"29":{"name":"keyword.other.directive.jai"},"3":{"name":"keyword.other.directive.jai"},"5":{"name":"storage.modifier.jai"},"6":{"name":"storage.modifier.jai"},"7":{"name":"punctuation.section.parens.begin.jai"},"8":{"name":"meta.function.parameters.jai","patterns":[{"include":"#parameter-declarations"}]},"9":{"name":"punctuation.section.parens.end.jai"}}},{"name":"meta.preprocessor.macro.declaration.jai","match":"\\b([a-zA-Z_](?:\\w|\\\\ *)*)\\s*(::)\\s*((inline)\\s*|(no_inline)\\s*)*(\\()(.*)(\\))\\s*((-\u003e)([^{]+))?\\s*(#expand)(\\s*(#no_debug))?","captures":{"1":{"name":"entity.name.function.preprocessor.jai"},"10":{"name":"punctuation.return.jai"},"11":{"name":"meta.function.return-type.jai","patterns":[{"include":"#return-declarations"}]},"12":{"name":"keyword.other.directive.jai"},"14":{"name":"keyword.other.directive.jai"},"2":{"name":"keyword.declaration.jai"},"4":{"name":"storage.modifier.jai"},"5":{"name":"storage.modifier.jai"},"6":{"name":"punctuation.section.parens.begin.jai"},"7":{"name":"meta.function.preprocessor.parameters.jai","patterns":[{"include":"#parameter-declarations"}]},"8":{"name":"punctuation.section.parens.end.jai"}}},{"name":"meta.function.declaration.jai","match":"\\b((main|for_expansion|operator\\s*([^ :]+))|[a-zA-Z_](?:\\w|\\\\ *)*)\\s*(::)\\s*((inline)\\s*|(no_inline)\\s*)*(\\()(.*)(\\))\\s*((-\u003e)([^{]+))?\\s*(((#foreign\\s+([a-zA-Z_](?:\\w|\\\\ *)*(\\s*(\")(([^\"\\\\]|\\\\.)*)(\"))?)|#compiler|#intrinsic|#runtime_support)\\s*)+\\s*(#deprecated\\s*((\")(([^\"\\\\]|\\\\.)*)(\"))?)?\\s*(;)?)?(\\s*#c_call|\\s*#no_context|\\s*#symmetric)*","captures":{"1":{"name":"entity.name.function.jai"},"10":{"name":"punctuation.section.parens.end.jai"},"12":{"name":"punctuation.return.jai"},"13":{"name":"meta.function.return-type.jai","patterns":[{"include":"#return-declarations"}]},"14":{"name":"keyword.control.import.directive.decl.jai"},"17":{"name":"constant.other.import.jai"},"19":{"name":"punctuation.definition.string.import.begin.jai"},"2":{"patterns":[{"match":"(main)","captures":{"1":{"name":"keyword.other.main.jai"}}},{"match":"(for_expansion)","captures":{"1":{"name":"keyword.other.for_expansion.jai"}}},{"match":"(operator\\s*([^ :]+))","captures":{"1":{"name":"keyword.other.operator.jai"},"2":{"name":"keyword.operator.jai"}}}]},"20":{"name":"string-quoted.other.import.jai"},"22":{"name":"punctuation.definition.string.import.end.jai"},"23":{"name":"invalid.deprecated.jai"},"25":{"name":"punctuation.definition.string.deprecated.begin.jai"},"26":{"name":"string-quoted.other.deprecated.jai"},"28":{"name":"punctuation.definition.string.deprecated.end.jai"},"29":{"name":"punctuation.terminator.jai"},"3":{"name":"keyword.operator.jai"},"30":{"name":"keyword.other.directive.jai"},"4":{"name":"keyword.declaration.jai"},"6":{"name":"storage.modifier.jai"},"7":{"name":"storage.modifier.jai"},"8":{"name":"punctuation.section.parens.begin.jai"},"9":{"name":"meta.function.parameters.jai","patterns":[{"include":"#parameter-declarations"}]}}},{"name":"meta.function.declaration.jai","match":"\\b([a-zA-Z_](?:\\w|\\\\ *)*)\\s*(::)\\s*(#bake(_arguments|_constants))\\s+([a-zA-Z_](?:\\w|\\\\ *)*)\\s*(\\()(.*)(\\))","captures":{"1":{"name":"entity.name.function.jai"},"2":{"name":"keyword.declaration.jai"},"3":{"name":"keyword.other.directive.jai"},"5":{"name":"entity.name.function.jai"},"6":{"name":"punctuation.section.parens.begin.jai"},"7":{"name":"meta.function.parameters.jai","patterns":[{"include":"#parameters"}]},"8":{"name":"punctuation.section.parens.end.jai"}}},{"name":"meta.function.call.jai","begin":"(([a-zA-Z_](?:\\w|\\\\ *)*)(\\.)(([a-zA-Z_](?:\\w|\\\\ *)*)(\\.))*)?\\b([a-zA-Z_](?:\\w|\\\\ *)*)\\s*(\\()","end":"(\\))","patterns":[{"include":"$self"}],"beginCaptures":{"2":{"name":"entity.name.namespace.jai"},"3":{"name":"punctuation.accessor.jai"},"5":{"name":"entity.name.namespace.member.jai"},"6":{"name":"punctuation.accessor.jai"},"7":{"patterns":[{"include":"#support"},{"match":"(.*)","captures":{"1":{"name":"entity.name.function.jai"}}}]},"8":{"name":"punctuation.section.parens.begin.jai"}},"endCaptures":{"1":{"name":"punctuation.section.parens.end.jai"}}},{"name":"meta.function.call.jai","begin":"(([a-zA-Z_](?:\\w|\\\\ *)*)(\\.)(([a-zA-Z_](?:\\w|\\\\ *)*)(\\.))*)?\\b([a-zA-Z_](?:\\w|\\\\ *)*)\\s*(\\()(.*)","end":"(\\))","patterns":[{"include":"$self"}],"beginCaptures":{"2":{"name":"entity.name.namespace.jai"},"3":{"name":"punctuation.accessor.jai"},"5":{"name":"entity.name.namespace.member.jai"},"6":{"name":"punctuation.accessor.jai"},"7":{"patterns":[{"include":"#support"},{"match":"(.*)","captures":{"1":{"name":"entity.name.function.jai"}}}]},"8":{"name":"punctuation.section.parens.begin.jai"},"9":{"name":"meta.function.parameters.jai","patterns":[{"include":"#parameters"}]}},"endCaptures":{"1":{"name":"punctuation.section.parens.end.jai"}}}],"repository":{"parameter-declarations":{"patterns":[{"match":"(,)?\\s*(using\\s*((,except|,only|,map)\\([^)]*\\)\\s*)?)?((\\$*)[a-zA-Z_](?:\\w|\\\\ *)*)(\\s*:=)([^,]*)","captures":{"1":{"name":"punctuation.separator.parameters.jai"},"2":{"name":"keyword.other.jai"},"5":{"name":"variable.parameter.jai"},"6":{"name":"punctuation.definition.generic.jai"},"7":{"name":"keyword.declaration.jai"},"8":{"patterns":[{"include":"#expression"}]}}},{"match":"(,)?\\s*(using\\s*((,except|,only|,map)\\([^)]*\\)\\s*)?)?((\\$*)[a-zA-Z_](?:\\w|\\\\ *)*)\\s*(:)\\s*(\\.\\.)?\\s*(\\[[^\\]]*\\])?\\s*((\\**)($)?[a-zA-Z_](?:\\w|\\\\ *)*)?(\\s*=)?([^,]*)","captures":{"1":{"name":"punctuation.separator.parameters.jai"},"10":{"name":"storage.type.jai"},"11":{"name":"keyword.operator.pointer.jai"},"12":{"name":"punctuation.definition.generic.jai"},"13":{"name":"keyword.declaration.jai"},"14":{"patterns":[{"include":"#expression"}]},"2":{"name":"keyword.other.jai"},"5":{"name":"variable.parameter.jai"},"6":{"name":"punctuation.definition.generic.jai"},"7":{"name":"keyword.declaration.jai"},"8":{"name":"punctuation.jai"},"9":{"include":"#array"}}}]},"parameters":{"patterns":[{"match":"(,)?\\s*((\")(([^\"\\\\]|\\\\.)*)(\"))\\s*","captures":{"1":{"name":"punctuation.separator.parameters.jai"},"2":{"patterns":[{"include":"#strings"}]}}},{"match":"(,)?(\\s*(#code|#code,null|#code,typed|#caller_code))?((cast(,trunc)?(,no_check)?(,trunc)?)\\s*(\\()\\s*((\\**)[a-zA-Z_](?:\\w|\\\\ *)*)\\s*(\\)))?(\\s*([a-zA-Z_](?:\\w|\\\\ *)*)(\\s*=))?([^,]*)","captures":{"1":{"name":"punctuation.separator.parameters.jai"},"14":{"name":"variable.parameter.jai"},"15":{"name":"keyword.operator.jai"},"16":{"patterns":[{"include":"#expression"}]},"2":{"name":"keyword.other.directive.jai"},"4":{"patterns":[{"include":"#casts"}]}}}]},"return-declarations":{"patterns":[{"match":"(,)?\\s*([a-zA-Z_](?:\\w|\\\\ *)*)\\s*(:)\\s*((\\[[^\\]]*\\])?\\s*(\\**)(\\$*)[a-zA-Z_](?:\\w|\\\\ *)*)\\s*(#must)?\\s*((@)([a-zA-Z_](?:\\w|\\\\ *)*))?\\s*(#expand)?\\s*(((#foreign\\s+([A-Z-a-z_]\\w*(\\s*(\")(([^\"\\\\]|\\\\.)*)(\"))?)|#compiler|#intrinsic|#runtime_support)\\s*)+\\s*(#deprecated\\s*((\")(([^\"\\\\]|\\\\.)*)(\"))?)?\\s*(;)?)?(\\s*#c_call|\\s*#no_context|\\s*#symmetric)*\\s*(//.*)?","captures":{"1":{"name":"punctuation.separator.parameters.jai"},"10":{"name":"punctuation.definition.annotation.jai"},"11":{"name":"variable.annotation.jai"},"12":{"name":"keyword.other.directive.jai"},"13":{"name":"keyword.control.import.directive.r1.jai"},"16":{"name":"constant.other.import.jai"},"18":{"name":"punctuation.definition.string.import.begin.jai"},"19":{"name":"string-quoted.other.import.jai"},"2":{"name":"variable.parameter.return.jai"},"21":{"name":"punctuation.definition.string.import.end.jai"},"22":{"name":"invalid.deprecated.jai"},"24":{"name":"punctuation.definition.string.deprecated.begin.jai"},"25":{"name":"string-quoted.other.deprecated.jai"},"27":{"name":"punctuation.definition.string.deprecated.end.jai"},"28":{"name":"punctuation.terminator.jai"},"29":{"name":"keyword.other.directive.jai"},"3":{"name":"keyword.declaration.jai"},"30":{"patterns":[{"include":"#comments"}]},"4":{"name":"storage.type.jai"},"5":{"patterns":[{"include":"#array"}]},"6":{"name":"keyword.operator.pointer.jai"},"7":{"name":"punctuation.definition.generic"},"8":{"name":"keyword.other.directive.jai"}}},{"match":"(,)?\\s*((\\[[^\\]]*\\])?\\s*(\\**)(\\$*)[a-zA-Z_](?:\\w|\\\\ *)*)\\s*(#must)?\\s*((@)([a-zA-Z_](?:\\w|\\\\ *)*))?\\s*(#expand)?\\s*(((#foreign\\s+([A-Z-a-z_]\\w*(\\s*(\")(([^\"\\\\]|\\\\.)*)(\"))?)|#compiler|#intrinsic|#runtime_support)\\s*)+\\s*(#deprecated\\s*((\")(([^\"\\\\]|\\\\.)*)(\"))?)?\\s*(;)?)?(\\s*#c_call|\\s*#no_context|\\s*#symmetric)*\\s*(//.*)?","captures":{"1":{"name":"punctuation.separator.parameters.jai"},"10":{"name":"keyword.other.directive.jai"},"11":{"name":"keyword.control.import.directive.jai"},"14":{"name":"constant.other.import.jai"},"16":{"name":"punctuation.definition.string.import.begin.jai"},"17":{"name":"string-quoted.other.import.jai"},"19":{"name":"punctuation.definition.string.import.end.jai"},"2":{"name":"storage.type.jai"},"20":{"name":"invalid.deprecated.jai"},"22":{"name":"punctuation.definition.string.deprecated.begin.jai"},"23":{"name":"string-quoted.other.deprecated.jai"},"25":{"name":"punctuation.definition.string.deprecated.end.jai"},"26":{"name":"punctuation.terminator.jai"},"27":{"name":"keyword.other.directive.jai"},"28":{"patterns":[{"include":"#comments"}]},"3":{"patterns":[{"include":"#array"}]},"4":{"name":"keyword.operator.pointer.jai"},"5":{"name":"punctuation.definition.generic"},"6":{"name":"keyword.other.directive.jai"},"8":{"name":"punctuation.definition.annotation.jai"},"9":{"name":"variable.annotation.jai"}}}]}}},"strings":{"patterns":[{"name":"string.quoted.double.empty.jai","match":"(\")(\")","captures":{"1":{"name":"punctuation.definition.string.empty.begin.jai"},"2":{"name":"punctuation.definition.string.empty.end.jai"}}},{"name":"string.quoted.double.jai","begin":"(\")","end":"(\"|$)","patterns":[{"name":"constant.character.escape.jai","match":"\\\\."},{"name":"constant.other.placeholder.jai","match":"%[0-9]+"},{"match":"(%)%","captures":{"1":{"name":"constant.character.escape.jai"}}},{"name":"constant.other.placeholder.jai","match":"%"}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin.jai"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.jai"}}},{"name":"string.here.embed.arm.jai","contentName":"string.unquoted.here.embed.arm.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(arm))\\b","end":"\\s*(\\3)(\\4)","patterns":[{}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.arm.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.arm.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.arm.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.arm.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.arm.jai"}}},{"name":"string.here.embed.bat.jai","contentName":"string.unquoted.here.embed.bat.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(bat))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.batchfile"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.bat.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.bat.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.bat.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.bat.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.bat.jai"}}},{"name":"string.here.embed.cpp.jai","contentName":"string.unquoted.here.embed.cpp.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(c(\\+\\+|pp)))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.c++"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.cpp.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.cpp.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.cpp.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.cpp.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.cpp.jai"}}},{"name":"string.here.embed.css.jai","contentName":"string.unquoted.here.embed.css.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(css))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.css"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.css.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.css.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.css.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.css.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.css.jai"}}},{"name":"string.here.embed.cs.jai","contentName":"string.unquoted.here.embed.cs.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(c(sharp|#|s)))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.cs"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.cs.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.cs.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.cs.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.cs.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.cs.jai"}}},{"name":"string.here.embed.c.jai","contentName":"string.unquoted.here.embed.c.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(c))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.c"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.c.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.c.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.c.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.c.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.c.jai"}}},{"name":"string.here.embed.glsl.jai","contentName":"string.unquoted.here.embed.glsl.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(glsl))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.glsl"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.glsl.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.glsl.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.glsl.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.glsl.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.glsl.jai"}}},{"name":"string.here.embed.guy.jai","contentName":"string.unquoted.here.embed.guy.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(guy))\\b","end":"\\s*(\\3)(\\4)","patterns":[{}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.guy.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.guy.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.guy.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.guy.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.guy.jai"}}},{"name":"string.here.embed.hlsl.jai","contentName":"string.unquoted.here.embed.hlsl.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(hlsl))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.hlsl"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.hlsl.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.hlsl.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.hlsl.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.hlsl.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.hlsl.jai"}}},{"name":"string.here.embed.jai.jai","contentName":"string.unquoted.here.embed.jai.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(jai))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.jai"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.jai.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.jai.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.jai.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.jai.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.jai.jai"}}},{"name":"string.here.embed.java.jai","contentName":"string.unquoted.here.embed.java.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(java))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.java"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.java.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.java.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.java.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.java.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.java.jai"}}},{"name":"string.here.embed.jsonc.jai","contentName":"string.unquoted.here.embed.jsonc.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(jsonc))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.json.comments"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.jsonc.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.jsonc.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.jsonc.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.jsonc.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.jsonc.jai"}}},{"name":"string.here.embed.json.jai","contentName":"string.unquoted.here.embed.json.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(json))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.json"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.json.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.json.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.json.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.json.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.json.jai"}}},{"name":"string.here.embed.js.jai","contentName":"string.unquoted.here.embed.js.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?((js|javascript)))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.js"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.js.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.js.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.js.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.js.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.js.jai"}}},{"name":"string.here.embed.lua.jai","contentName":"string.unquoted.here.embed.lua.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(lua))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.lua"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.lua.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.lua.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.lua.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.lua.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.lua.jai"}}},{"name":"string.here.embed.makefile.jai","contentName":"string.unquoted.here.embed.makefile.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(make(file)?))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.makefile"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.makefile.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.makefile.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.makefile.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.makefile.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.makefile.jai"}}},{"name":"string.here.embed.metal.jai","contentName":"string.unquoted.here.embed.metal.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?((metal|msl)))\\b","end":"\\s*(\\3)(\\4)","patterns":[{}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.metal.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.metal.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.metal.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.metal.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.metal.jai"}}},{"name":"string.here.embed.psl.jai","contentName":"string.unquoted.here.embed.psl.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?((powershell|psl)))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.powershell"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.psl.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.psl.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.psl.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.psl.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.psl.jai"}}},{"name":"string.here.embed.python.jai","contentName":"string.unquoted.here.embed.python.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(py(thon)?))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.python"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.python.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.python.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.python.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.python.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.python.jai"}}},{"name":"string.here.embed.shaderlab.jai","contentName":"string.unquoted.here.embed.shaderlab.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(shaderlab))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.shaderlab"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.shaderlab.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.shaderlab.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.shaderlab.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.shaderlab.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.shaderlab.jai"}}},{"name":"string.here.embed.shader.jai","contentName":"string.unquoted.here.embed.shader.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(shader))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.glsl"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.shader.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.shader.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.shader.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.shader.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.shader.jai"}}},{"name":"string.here.embed.sh.jai","contentName":"string.unquoted.here.embed.sh.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(sh(ell)?))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.shell"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.sh.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.sh.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.sh.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.sh.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.sh.jai"}}},{"name":"string.here.embed.sql.jai","contentName":"string.unquoted.here.embed.sql.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(sql))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.sql"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.sql.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.sql.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.sql.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.sql.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.sql.jai"}}},{"name":"string.here.embed.toml.jai","contentName":"string.unquoted.here.embed.toml.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(toml))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.toml"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.toml.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.toml.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.toml.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.toml.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.toml.jai"}}},{"name":"string.here.embed.ts.jai","contentName":"string.unquoted.here.embed.ts.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?((ts|typescript)))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.ts"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.ts.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.ts.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.ts.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.ts.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.ts.jai"}}},{"name":"string.here.embed.vdf.jai","contentName":"string.unquoted.here.embed.vdf.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?((vdf|valve)))\\b","end":"\\s*(\\3)(\\4)","patterns":[{}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.vdf.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.vdf.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.vdf.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.vdf.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.vdf.jai"}}},{"name":"string.here.embed.x64.jai","contentName":"string.unquoted.here.embed.x64.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(x(86_)?64))\\b","end":"\\s*(\\3)(\\4)","patterns":[{}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.x64.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.x64.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.x64.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.x64.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.x64.jai"}}},{"name":"string.here.embed.yaml.jai","contentName":"string.unquoted.here.embed.yaml.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(yaml))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.yaml"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.yaml.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.yaml.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.yaml.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.yaml.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.yaml.jai"}}},{"name":"string.here.embed.html.jai","contentName":"string.unquoted.here.embed.html.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(html))\\b","end":"\\s*(\\3)(\\4)","patterns":[{}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.html.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.html.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.html.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.html.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.html.jai"}}},{"name":"string.here.embed.md.jai","contentName":"string.unquoted.here.embed.md.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?((md|markdown)))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"text.md"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.md.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.md.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.md.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.md.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.md.jai"}}},{"name":"string.here.embed.xml.jai","contentName":"string.unquoted.here.embed.xml.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(xml))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"text.xml"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.xml.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.xml.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.xml.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.xml.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.xml.jai"}}},{"name":"string.here.embed.xsl.jai","contentName":"string.unquoted.here.embed.xsl.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(xsl))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"text.xml.xsl"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.xsl.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.xsl.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.xsl.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.xsl.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.xsl.jai"}}},{"name":"string.here.jai","contentName":"string.unquoted.here.jai","begin":"(#string)\\s+([A-Za-z_]\\w*)","end":"\\s*(\\2)","beginCaptures":{"1":{"name":"keyword.other.directive.string.jai"},"2":{"name":"constant.other.stringdelimiter.here.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.jai"}}}]},"structs":{"match":"\\b([a-zA-Z_](?:\\w|\\\\ *)*)\\s*(::)\\s*(struct)","captures":{"1":{"name":"entity.name.struct.jai"},"2":{"name":"keyword.declaration.jai"},"3":{"name":"keyword.declaration.struct.jai"}}},"symbols":{"patterns":[{"match":"(\\})\\s*(=)\\s*(\\.)([a-zA-Z_](?:\\w|\\\\ *)*)","captures":{"1":{"name":"punctuation.section.braces.end.jai"},"2":{"name":"keyword.declaration.jai"},"3":{"name":"punctuation.accessor.jai"},"4":{"name":"variable.enum.jai"}}},{"name":"keyword.declaration.jai","match":"(::|:=|:)"},{"name":"keyword.operator.jai","match":"(=|\\+|-|\\*|/|\u003c|\u003e|~|\\||\u0026|!|\\^)+"},{"name":"keyword.operator.percent.jai","match":"%"},{"name":"punctuation.jai","match":"(\\.\\.)"},{"name":"punctuation.section.parens.begin.jai","match":"\\("},{"name":"punctuation.section.parens.end.jai","match":"\\)"},{"name":"punctuation.section.braces.begin.jai","match":"\\{"},{"name":"punctuation.section.braces.end.jai","match":"\\}"},{"name":"punctuation.section.brackets.begin.jai","match":"\\["},{"name":"punctuation.section.brackets.end.jai","match":"\\]"},{"name":"punctuation.accessor.jai","match":"(\\.)"},{"name":"punctuation.separator.jai","match":"(,)"},{"name":"punctuation.terminator.jai","match":"(;)"}]},"variables":{"patterns":[{"match":"\\b((it_index|it)|([a-zA-Z_](?:\\w|\\\\ *)*))(\\.[a-zA-Z0-9_.]+)?\\b","captures":{"1":{"name":"variable.other.jai"},"2":{"name":"support.variable.jai"},"4":{"patterns":[{"include":"#members"}]}}}],"repository":{"members":{"match":"(\\.)([a-zA-Z_](?:\\w|\\\\ *)*)","captures":{"1":{"name":"punctuation.accessor.jai"},"2":{"name":"variable.other.member.jai"}}}}}}}
|
|
1
|
+
{"name":"Jai","scopeName":"source.jai","patterns":[{"include":"#markdown-block-comments"},{"include":"#block-comments"},{"include":"#comments"},{"include":"#imports"},{"include":"#asm"},{"include":"#strings"},{"include":"#deprecated-names"},{"include":"#casts"},{"include":"#keywords"},{"include":"#proc"},{"include":"#deprecated"},{"include":"#fors"},{"include":"#structs"},{"include":"#enums"},{"include":"#enum-members"},{"include":"#composite-literals"},{"include":"#symbols"},{"include":"#support"},{"include":"#numbers"},{"include":"#notes"},{"include":"#declarations"},{"include":"#more-directives"},{"include":"#variables"},{"include":"#more-numbers"}],"repository":{"array":{"match":"(\\[)([^\\]]*)(\\])","captures":{"1":{"name":"punctuation.section.brackets.begin.jai"},"2":{"patterns":[{"include":"#expression"}]},"3":{"name":"punctuation.section.brackets.end.jai"}}},"asm":{"contentName":"source.asm.x86_64","begin":"(#asm)\\s*(([A-Z0-9]+)\\s*(,[^}]*)?)?(\\{)","end":"(\\})","patterns":[{},{"match":"(===)","captures":{"1":{"name":"keyword.operator.pin.jai"}}}],"beginCaptures":{"1":{"name":"keyword.other.directive.asm.jai"},"3":{"name":"keyword.other.feature.asm.jai"},"4":{"patterns":[{"include":"#comma-joined-asm-features"}]},"5":{"name":"punctuation.section.braces.begin.jai"}},"endCaptures":{"1":{"name":"punctuation.section.braces.end.jai"}}},"block-comments":{"name":"comment.block.jai","begin":"(\\/\\*)","end":"(\\*\\/)","patterns":[{"name":"comment.block.jai","include":"#block-comments"},{"match":"(`)([^`]*)(`)","captures":{"1":{"name":"markup.quote.comment.jai"},"2":{"name":"comment.block.backquoted.jai"},"3":{"name":"markup.quote.comment.jai"}}},{"match":"(\\@)((?i)TODO)([^@]*)","captures":{"1":{"name":"comment.block.punctuation.annotation.todo.jai"},"2":{"name":"comment.block.annotation.todo.jai"},"3":{"name":"comment.block.todo.jai"}}},{"match":"(\\@)((?i)Release)([^@]*)","captures":{"1":{"name":"comment.block.punctuation.annotation.release.jai"},"2":{"name":"comment.block.annotation.release.jai"},"3":{"name":"comment.block.release.jai"}}},{"match":"(\\@)((?i)Note)([^@]*)","captures":{"1":{"name":"comment.block.punctuation.annotation.note.jai"},"2":{"name":"comment.block.annotation.note.jai"},"3":{"name":"comment.block.note.jai"}}},{"match":"(\\@)((?i)Urgent)([^@]*)","captures":{"1":{"name":"comment.block.punctuation.annotation.urgent.jai"},"2":{"name":"comment.block.annotation.urgent.jai"},"3":{"name":"comment.block.urgent.jai"}}},{"match":"(\\@)((?i)Speed)([^@]*)","captures":{"1":{"name":"comment.block.punctuation.annotation.speed.jai"},"2":{"name":"comment.block.annotation.speed.jai"},"3":{"name":"comment.block.speed.jai"}}},{"match":"(\\@)((?i)Robustness)([^@]*)","captures":{"1":{"name":"comment.block.punctuation.annotation.robustness.jai"},"2":{"name":"comment.block.annotation.robustness.jai"},"3":{"name":"comment.block.robustness.jai"}}},{"match":"(\\@)((?i)NoCheckin)([^@]*)","captures":{"1":{"name":"comment.block.punctuation.annotation.nocheckin.jai"},"2":{"name":"comment.block.annotation.nocheckin.jai"},"3":{"name":"comment.block.todo.jai"}}},{"match":"(\\@)(\\w+)","captures":{"1":{"name":"comment.block.punctuation.annotation.jai"},"2":{"name":"comment.block.annotation.jai"}}},{"name":"comment.block.signature.jai","match":"(-) (\\w+) ([0-9]{4}-[0-9]{2}-[0-9]{2})","captures":{"1":{"name":"comment.block.punctuation.signature.jai"},"2":{"name":"comment.block.signature.name.jai"},"3":{"name":"comment.block.signature.date.jai"}}},{"match":"^\\s*(\\[)( )(\\])(.*)","captures":{"1":{"name":"comment.block.punctuation.checklist.brackets.todo.begin.jai"},"2":{"name":"comment.block.punctuation.checklist.mark.todo.jai"},"3":{"name":"comment.block.punctuation.checklist.brackets.todo.end.jai"},"4":{"name":"comment.block.checklist.item.todo.jai","patterns":[{"include":"#block-comments-line"}]}}},{"match":"^\\s*(\\[)(\\.)(\\])(.*)","captures":{"1":{"name":"comment.block.punctuation.checklist.brackets.partial.begin.jai"},"2":{"name":"comment.block.punctuation.checklist.mark.partial.jai"},"3":{"name":"comment.block.punctuation.checklist.brackets.partial.end.jai"},"4":{"name":"comment.block.checklist.item.partial.jai","patterns":[{"include":"#block-comments-line"}]}}},{"match":"^\\s*(\\[)([^ \\.])(\\])(.*)","captures":{"1":{"name":"comment.block.punctuation.checklist.brackets.done.begin.jai"},"2":{"name":"comment.block.punctuation.checklist.mark.done.jai"},"3":{"name":"comment.block.punctuation.checklist.brackets.done.end.jai"},"4":{"name":"comment.block.checklist.item.done.jai","patterns":[{"include":"#block-comments-line"}]}}}],"beginCaptures":{"1":{"name":"punctuation.definition.comment.jai"}},"endCaptures":{"1":{"name":"punctuation.definition.comment.jai"}}},"block-comments-line":{"patterns":[{"match":"(`)([^`]*)(`)","captures":{"1":{"name":"markup.quote.comment.jai"},"2":{"name":"comment.block.backquoted.jai"},"3":{"name":"markup.quote.comment.jai"}}},{"match":"(\\@)((?i)TODO)([^@]*)","captures":{"1":{"name":"comment.block.punctuation.annotation.todo.jai"},"2":{"name":"comment.block.annotation.todo.jai"},"3":{"name":"comment.block.todo.jai"}}},{"match":"(\\@)((?i)Release)([^@]*)","captures":{"1":{"name":"comment.block.punctuation.annotation.release.jai"},"2":{"name":"comment.block.annotation.release.jai"},"3":{"name":"comment.block.release.jai"}}},{"match":"(\\@)((?i)Note)([^@]*)","captures":{"1":{"name":"comment.block.punctuation.annotation.note.jai"},"2":{"name":"comment.block.annotation.note.jai"},"3":{"name":"comment.block.note.jai"}}},{"match":"(\\@)((?i)Urgent)([^@]*)","captures":{"1":{"name":"comment.block.punctuation.annotation.urgent.jai"},"2":{"name":"comment.block.annotation.urgent.jai"},"3":{"name":"comment.block.urgent.jai"}}},{"match":"(\\@)((?i)Speed)([^@]*)","captures":{"1":{"name":"comment.block.punctuation.annotation.speed.jai"},"2":{"name":"comment.block.annotation.speed.jai"},"3":{"name":"comment.block.speed.jai"}}},{"match":"(\\@)((?i)Robustness)([^@]*)","captures":{"1":{"name":"comment.block.punctuation.annotation.robustness.jai"},"2":{"name":"comment.block.annotation.robustness.jai"},"3":{"name":"comment.block.robustness.jai"}}},{"match":"(\\@)((?i)NoCheckin)([^@]*)","captures":{"1":{"name":"comment.block.punctuation.annotation.nocheckin.jai"},"2":{"name":"comment.block.annotation.nocheckin.jai"},"3":{"name":"comment.block.nocheckin.jai"}}},{"match":"(\\@)(\\w+)","captures":{"1":{"name":"comment.block.punctuation.annotation.jai"},"2":{"name":"comment.block.annotation.jai"}}},{"name":"comment.block.signature.jai","match":"(-)\\s*(.*)\\s*([0-9]{4}-[0-9]{2}-[0-9]{2})","captures":{"1":{"name":"comment.block.punctuation.signature.jai"},"2":{"name":"comment.block.signature.name.jai"},"3":{"name":"comment.block.signature.date.jai"}}}]},"casts":{"patterns":[{"match":"\\b(cast(,trunc)?(,no_check)?(,trunc)?)\\s*(\\()\\s*((\\**)[a-zA-Z_](?:\\w|\\\\ *)*)\\s*(\\))","captures":{"1":{"name":"keyword.control.cast.jai"},"5":{"name":"punctuation.section.parens.begin.jai"},"6":{"name":"storage.type"},"7":{"name":"keyword.operator.pointer.jai"},"8":{"name":"punctuation.section.parens.begin.jai"}}},{"name":"keyword.control.cast.jai","match":"\\b(xx|cast)\\b"}]},"comma-joined-asm-features":{"match":"(,)\\s*([A-Z0-9]+)\\s*","captures":{"1":{"name":"punctuation.separator.jai"},"2":{"name":"keyword.other.feature.asm.jai"}}},"comma-joined-variables":{"match":"(,)\\s*((it_index|it)|([a-zA-Z_](?:\\w|\\\\ *)*))","captures":{"1":{"name":"punctuation.separator.jai"},"2":{"name":"variable.other.declaration.jai"},"3":{"name":"support.variable.jai"}}},"comments":{"patterns":[{"match":"(//)\\s*(\\[)( )(\\])(.*)","captures":{"1":{"name":"punctuation.definition.comment.jai"},"2":{"name":"comment.line.double-slash.punctuation.checklist.brackets.todo.begin.jai"},"3":{"name":"comment.line.double-slash.punctuation.checklist.mark.todo.jai"},"4":{"name":"comment.line.double-slash.punctuation.checklist.brackets.todo.end.jai"},"5":{"name":"comment.line.double-slash.checklist.item.todo.jai","patterns":[{"include":"#comments-line"}]}}},{"match":"(//)\\s*(\\[)(\\.)(\\])(.*)","captures":{"1":{"name":"punctuation.definition.comment.jai"},"2":{"name":"comment.line.double-slash.punctuation.checklist.brackets.partial.begin.jai"},"3":{"name":"comment.line.double-slash.punctuation.checklist.mark.partial.jai"},"4":{"name":"comment.line.double-slash.punctuation.checklist.brackets.partial.end.jai"},"5":{"name":"comment.line.double-slash.checklist.item.partial.jai","patterns":[{"include":"#comments-line"}]}}},{"match":"(//)\\s*(\\[)([^ \\.])(\\])(.*)","captures":{"1":{"name":"punctuation.definition.comment.jai"},"2":{"name":"comment.line.double-slash.punctuation.checklist.brackets.done.begin.jai"},"3":{"name":"comment.line.double-slash.punctuation.checklist.mark.done.jai"},"4":{"name":"comment.line.double-slash.punctuation.checklist.brackets.done.end.jai"},"5":{"name":"comment.line.double-slash.checklist.item.done.jai","patterns":[{"include":"#comments-line"}]}}},{"match":"(//)(.*)","captures":{"1":{"name":"comment.line.double-slash.jai"},"2":{"name":"comment.line.double-slash.jai","patterns":[{"include":"#comments-line"}]}}}]},"comments-line":{"patterns":[{"match":"(`)([^`]*)(`)","captures":{"1":{"name":"markup.quote.comment.jai"},"2":{"name":"comment.line.double-slash.backquoted.jai"},"3":{"name":"markup.quote.comment.jai"}}},{"match":"(\\@)((?i)TODO)([^@]*)","captures":{"1":{"name":"comment.line.double-slash.punctuation.annotation.todo.jai"},"2":{"name":"comment.line.double-slash.annotation.todo.jai"},"3":{"name":"comment.line.double-slash.todo.jai"}}},{"match":"(\\@)((?i)Release)([^@]*)","captures":{"1":{"name":"comment.line.double-slash.punctuation.annotation.release.jai"},"2":{"name":"comment.line.double-slash.annotation.release.jai"},"3":{"name":"comment.line.double-slash.release.jai"}}},{"match":"(\\@)((?i)Note)([^@]*)","captures":{"1":{"name":"comment.line.double-slash.punctuation.annotation.note.jai"},"2":{"name":"comment.line.double-slash.annotation.note.jai"},"3":{"name":"comment.line.double-slash.note.jai"}}},{"match":"(\\@)((?i)Urgent)([^@]*)","captures":{"1":{"name":"comment.line.double-slash.punctuation.annotation.urgent.jai"},"2":{"name":"comment.line.double-slash.annotation.urgent.jai"},"3":{"name":"comment.line.double-slash.urgent.jai"}}},{"match":"(\\@)((?i)Speed)([^@]*)","captures":{"1":{"name":"comment.line.double-slash.punctuation.annotation.speed.jai"},"2":{"name":"comment.line.double-slash.annotation.speed.jai"},"3":{"name":"comment.line.double-slash.speed.jai"}}},{"match":"(\\@)((?i)Robustness)([^@]*)","captures":{"1":{"name":"comment.line.double-slash.punctuation.annotation.robustness.jai"},"2":{"name":"comment.line.double-slash.annotation.robustness.jai"},"3":{"name":"comment.line.double-slash.robustness.jai"}}},{"match":"(\\@)((?i)NoCheckin)([^@]*)","captures":{"1":{"name":"comment.line.double-slash.punctuation.annotation.nocheckin.jai"},"2":{"name":"comment.line.double-slash.annotation.nocheckin.jai"},"3":{"name":"comment.line.double-slash.nocheckin.jai"}}},{"match":"(\\@)(\\w+)","captures":{"1":{"name":"comment.line.double-slash.punctuation.annotation.jai"},"2":{"name":"comment.line.double-slash.annotation.jai"}}},{"name":"comment.line.double-slash.signature.jai","match":"(-)\\s*(.*)\\s*([0-9]{4}-[0-9]{2}-[0-9]{2})","captures":{"1":{"name":"comment.line.double-slash.punctuation.signature.jai"},"2":{"name":"comment.line.double-slash.signature.name.jai"},"3":{"name":"comment.line.double-slash.signature.date.jai"}}}]},"composite-literals":{"patterns":[{"match":"\\b([a-zA-Z_](?:\\w|\\\\ *)*)?\\s*(\\.)(\\{)","captures":{"1":{"name":"storage.type.struct.jai"},"2":{"name":"punctuation.accessor.jai"},"3":{"name":"punctuation.section.braces.begin.jai"}}},{"match":"\\b([a-zA-Z_](?:\\w|\\\\ *)*)?\\s*(\\.)(\\[)","captures":{"1":{"name":"storage.type.struct.jai"},"2":{"name":"punctuation.accessor.jai"},"3":{"name":"punctuation.section.bracket.begin.jai"}}}]},"declarations":{"patterns":[{"match":"\\b([a-zA-Z_](?:\\w|\\\\ *)*)((\\s*,\\s*[a-zA-Z_](?:\\w|\\\\ *)*)*)\\s*(:)\\s*(\\[[^\\]]*\\])?\\s*((\\**)((#type(,(isa|distinct))?)|[a-zA-Z_](?:\\w|\\\\ *)*))?\\s*(:)","captures":{"1":{"name":"variable.other.constant.declaration.jai"},"12":{"name":"keyword.declaration.jai"},"2":{"patterns":[{"include":"#comma-joined-variables"}]},"4":{"name":"keyword.declaration.jai"},"5":{"patterns":[{"include":"#array"}]},"6":{"name":"storage.type.jai"},"7":{"name":"keyword.operator.pointer.jai"},"9":{"name":"keyword.other.directive.jai"}}},{"match":"\\b([a-zA-Z_](?:\\w|\\\\ *)*)\\s*(:)\\s*(\\[[^\\]]*\\])?\\s*((\\**)((#type(,(isa|distinct))?)|[a-zA-Z_](?:\\w|\\\\ *)*))?\\s*(:)","captures":{"1":{"name":"variable.other.constant.declaration.jai"},"10":{"name":"keyword.declaration.jai"},"2":{"name":"keyword.declaration.jai"},"3":{"patterns":[{"include":"#array"}]},"4":{"name":"storage.type.jai"},"5":{"name":"keyword.operator.pointer.jai"},"7":{"name":"keyword.other.directive.jai"}}},{"match":"\\b((it_index|it)|([a-zA-Z_](?:\\w|\\\\ *)*))((\\s*,\\s*[a-zA-Z_](?:\\w|\\\\ *)*)*)\\s*(:)\\s*((struct)|(enum)|(enum_flags))\\b\\s*([a-zA-Z_](?:\\w|\\\\ *)*)?","captures":{"1":{"name":"variable.other.declaration.jai"},"10":{"name":"keyword.declaration.enum.jai"},"11":{"name":"storage.type.jai"},"2":{"name":"support.variable.jai"},"4":{"patterns":[{"include":"#comma-joined-variables"}]},"6":{"name":"keyword.declaration.jai"},"8":{"name":"keyword.declaration.struct.jai"},"9":{"name":"keyword.declaration.enum.jai"}}},{"match":"\\b((it_index|it)|([a-zA-Z_](?:\\w|\\\\ *)*))\\s*(:)\\s*((struct)|(enum)|(enum_flags))\\b\\s*([a-zA-Z_](?:\\w|\\\\ *)*)?","captures":{"1":{"name":"variable.other.declaration.jai"},"2":{"name":"support.variable.jai"},"4":{"name":"keyword.declaration.jai"},"6":{"name":"keyword.declaration.struct.jai"},"7":{"name":"keyword.declaration.enum.jai"},"8":{"name":"keyword.declaration.enum.jai"},"9":{"name":"storage.type.jai"}}},{"match":"\\b((it_index|it)|([a-zA-Z_](?:\\w|\\\\ *)*))((\\s*,\\s*[a-zA-Z_](?:\\w|\\\\ *)*)*)\\s*(:)\\s*(\\[[^\\]]*\\])?\\s*((\\**)((#type(,(isa|distinct))?)|[a-zA-Z_](?:\\w|\\\\ *)*))?\\s*(=)?","captures":{"1":{"name":"variable.other.declaration.jai"},"11":{"name":"keyword.other.directive.jai"},"14":{"name":"keyword.declaration.jai"},"2":{"name":"support.variable.jai"},"4":{"patterns":[{"include":"#comma-joined-variables"}]},"6":{"name":"keyword.declaration.jai"},"7":{"patterns":[{"include":"#array"}]},"8":{"name":"storage.type.jai"},"9":{"name":"keyword.operator.pointer.jai"}}},{"match":"\\b((it_index|it)|([a-zA-Z_](?:\\w|\\\\ *)*))\\s*(:)\\s*(\\[[^\\]]*\\])?\\s*((\\**)((#type(,(isa|distinct))?)|[a-zA-Z_](?:\\w|\\\\ *)*))?\\s*(=)?","captures":{"1":{"name":"variable.other.declaration.jai"},"12":{"name":"keyword.declaration.jai"},"2":{"name":"support.variable.jai"},"4":{"name":"keyword.declaration.jai"},"5":{"patterns":[{"include":"#array"}]},"6":{"name":"storage.type.jai"},"7":{"name":"keyword.operator.pointer.jai"},"9":{"name":"keyword.other.directive.jai"}}}]},"deprecated":{"match":"(#deprecated\\s*((\")(([^\"\\\\]|\\\\.)*)(\"))?)","captures":{"1":{"name":"invalid.deprecated.jai"},"3":{"name":"punctuation.definition.string.deprecated.begin.jai"},"4":{"name":"string-quoted.other.deprecated.jai"},"6":{"name":"punctuation.definition.string.deprecated.end.jai"}}},"enum-members":{"match":"([^\\w])(\\.)([a-zA-Z_](?:\\w|\\\\ *)*)","captures":{"1":{"patterns":[{"include":"#expression"}]},"2":{"name":"punctuation.accessor.jai"},"3":{"name":"variable.enum.jai"}}},"enums":{"match":"\\b([a-zA-Z_](?:\\w|\\\\ *)*)\\s*(::)\\s*(enum(_flags)?)","captures":{"1":{"name":"entity.name.enum.jai"},"2":{"name":"keyword.declaration.jai"},"3":{"name":"keyword.declaration.enum.jai"}}},"expression":{"patterns":[{"include":"#strings"},{"include":"#casts"},{"include":"#deprecated"},{"include":"#enum-members"},{"include":"#keywords"},{"include":"#symbols"},{"include":"#support"},{"include":"#numbers"},{"include":"#variables"},{"include":"#more-numbers"}]},"fors":{"patterns":[{"match":"\\b(for)\\s+([*\u003c\\s]*)\\s*([a-zA-Z_](?:\\w|\\\\ *)*)\\s*(,)\\s*([a-zA-Z_](?:\\w|\\\\ *)*)\\s*(:)","captures":{"1":{"name":"keyword.control.loop.for.jai"},"2":{"name":"keyword.operator.jai"},"3":{"name":"variable.other.declaration.jai"},"4":{"name":"punctuation.separator.jai"},"5":{"name":"variable.other.declaration.jai"},"6":{"name":"keyword.declaration.jai"}}},{"match":"\\b(for)\\s+([*\u003c\\s]*)\\s*([a-zA-Z_](?:\\w|\\\\ *)*)\\s*(:)","captures":{"1":{"name":"keyword.control.loop.for.jai"},"2":{"name":"keyword.operator.jai"},"3":{"name":"variable.other.declaration.jai"},"4":{"name":"keyword.declaration.jai"}}},{"match":"\\b(for)\\s+([*\u003c\\s]*)","captures":{"1":{"name":"keyword.control.loop.for.jai"},"2":{"name":"keyword.operator.jai"}}}]},"imports":{"patterns":[{"match":"^\\s*([a-zA-Z_](?:\\w|\\\\ *)*)\\s*(::)\\s*(#import(,file|,dir|,string)?)\\s+(\")([^\"]+)(\")","captures":{"1":{"name":"entity.name.namespace.jai"},"2":{"name":"keyword.declaration.jai"},"3":{"name":"keyword.control.import.directive.jai"},"6":{"name":"punctuation.definition.string.import.begin.jai"},"7":{"name":"string-quoted.other.import.jai"},"8":{"name":"punctuation.definition.string.import.end.jai"}}},{"match":"(#import(,file|,dir|,string)?|#load)\\s+(\")([^\"]+)(\")","captures":{"1":{"name":"keyword.control.import.directive.jai"},"4":{"name":"punctuation.definition.string.import.begin.jai"},"5":{"name":"string-quoted.other.import.jai"},"6":{"name":"punctuation.definition.string.import.end.jai"}}},{"match":"(#import(,file|,dir|,string)?|#load)\\s+(\"[^\"]*)?$","captures":{"1":{"name":"keyword.control.import.directive.jai"},"4":{"name":"punctuation.definition.string.import.begin.jai"},"5":{"name":"string-quoted.other.import.jai"}}},{"match":"^\\s*([a-zA-Z_](?:\\w|\\\\ *)*)\\s*(::)\\s*(#foreign_(system_)?library)\\s+(\")([^\"]+)(\")","captures":{"1":{"name":"constant.other.import.jai"},"2":{"name":"keyword.declaration.jai"},"3":{"name":"keyword.control.import.directive.jai"},"5":{"name":"punctuation.definition.string.import.begin.jai"},"6":{"name":"string-quoted.other.import.jai"},"7":{"name":"punctuation.definition.string.import.end.jai"}}},{"match":"^\\s*([a-zA-Z_](?:\\w|\\\\ *)*)\\s*(::)\\s*(#foreign_(system_)?library)\\s+(\"[^\"]*)?$","captures":{"1":{"name":"constant.other.import.jai"},"2":{"name":"keyword.declaration.jai"},"3":{"name":"keyword.control.import.directive.jai"},"5":{"name":"punctuation.definition.string.import.begin.jai"},"6":{"name":"string-quoted.other.import.jai"}}}]},"keywords":{"patterns":[{"name":"keyword.control.conditional.jai","match":"\\b(if|ifx|then|else|case)\\b"},{"name":"keyword.control.jump.jai","match":"\\b(return|break|continue)\\b"},{"name":"keyword.control.loop.while.jai","match":"\\b(while)\\b"},{"name":"keyword.control.loop.for.remove.jai","match":"\\b(remove)\\b"},{"name":"keyword.control.defer.jai","match":"\\b(defer)\\b"},{"name":"keyword.other.directive.jai","match":"(#add_context|#align|#as|#assert|#bake(_arguments|_constants)?|#bytes|#caller_code|#caller_location|#code(,(null|typed))?|#compile_time|#complete|#dump|#elsewhere|#expand|#file|#filepath|#ifx|#if|\\binline\\b|#insert(,scope)?|#intrinsic|#modify|#module_parameters|#must|#no_abc|#no_aoc|#no_alias|#no_padding|#no_reset|#place|#placeholder|#procedure_name|#procedure_of_call|#program_export|#run|#exists|#v2|#Context|#specified|#symmetric|#this|#through|#type(,(isa|distinct))?|#type_info_none|#type_info_procedures_are_void_pointers|#type_info_no_size_complaint|#unshared)\\b"},{"name":"keyword.other.directive.scope.jai","match":"(#scope_export|#scope_file|#scope_module)"},{"name":"keyword.other.directive.string.jai","match":"(#char)"},{"name":"keyword.other.context.jai","match":"\\b(context|push_context)\\b"},{"name":"keyword.other.using.jai","match":"\\b(using(,map|,except|,only)?)\\b"},{"name":"keyword.other.allocator.jai","match":"\\b(temp)\\b"},{"name":"constant.language.true.jai","match":"\\b(true)\\b"},{"name":"constant.language.false.jai","match":"\\b(false)\\b"},{"name":"constant.language.null.jai","match":"\\b(null)\\b"},{"name":"keyword.declaration.struct.jai","match":"\\b(struct)\\b"},{"name":"keyword.declaration.enum.jai","match":"\\b(enum)\\b"},{"name":"keyword.declaration.union.jai","match":"\\b(union)\\b"},{"name":"storage.type.jai","match":"\\b(int|u8|u16|u32|u64|s8|s16|s32|s64|float|float32|float64|bool|string|void|Code|Type)\\b"}]},"more-directives":{"match":"(#foreign\\s+([A-Z-a-z_]\\w*(\\s*(\")(([^\"\\\\]|\\\\.)*)(\"))?)|#compiler|#intrinsic|#runtime_support)","captures":{"1":{"name":"keyword.control.import.directive.decl.jai"},"3":{"name":"constant.other.import.jai"},"5":{"name":"punctuation.definition.string.import.begin.jai"},"6":{"name":"string-quoted.other.import.jai"},"8":{"name":"punctuation.definition.string.import.end.jai"}}},"more-numbers":{"patterns":[{"match":"(0b[01_]+)","captures":{"1":{"name":"constant.numeric.jai"}}},{"match":"(0x[a-fA-F_\\d]+)","captures":{"1":{"name":"constant.numeric.jai"}}},{"match":"(\\d[\\d_]*)","captures":{"1":{"name":"constant.numeric.jai"}}}]},"numbers":{"patterns":[{"match":"[(\\[{:\\s=.,/*+\u003c\u003e-](0b[01_]+)","captures":{"1":{"name":"constant.numeric.jai"}}},{"match":"[(\\[{:\\s=.,/*+\u003c\u003e-](0x[a-fA-F_\\d]+)","captures":{"1":{"name":"constant.numeric.jai"}}},{"match":"[(\\[\\{:\\s=.,/*+\u003c\u003e-](\\d[\\d_]*)","captures":{"1":{"name":"constant.numeric.jai"}}}]},"proc":{"patterns":[{"match":"\\b([a-zA-Z_](?:\\w|\\\\ *)*)\\s*(::)\\s*(#type)\\b\\s*((inline)\\s*|(no_inline)\\s*)*(\\()(.*)(\\))\\s*((-\u003e)([^{]+))?\\s*(((#foreign\\s+([a-zA-Z_](?:\\w|\\\\ *)*(\\s*(\")(([^\"\\\\]|\\\\.)*)(\"))?)|#compiler|#intrinsic|#runtime_support)\\s*)+\\s*(#deprecated\\s*((\")(([^\"\\\\]|\\\\.)*)(\"))?)?\\s*(;)?)?(\\s*#c_call|\\s*#no_context|\\s*#symmetric)*","captures":{"1":{"name":"variable.other.constant.declaration.jai"},"11":{"name":"punctuation.return.jai"},"12":{"name":"meta.function.return-type.jai","patterns":[{"include":"#return-declarations"}]},"13":{"name":"keyword.control.import.directive.decl.jai"},"16":{"name":"constant.other.import.jai"},"18":{"name":"punctuation.definition.string.import.begin.jai"},"19":{"name":"string-quoted.other.import.jai"},"2":{"name":"keyword.declaration.jai"},"21":{"name":"punctuation.definition.string.import.end.jai"},"22":{"name":"invalid.deprecated.jai"},"24":{"name":"punctuation.definition.string.deprecated.begin.jai"},"25":{"name":"string-quoted.other.deprecated.jai"},"27":{"name":"punctuation.definition.string.deprecated.end.jai"},"28":{"name":"punctuation.terminator.jai"},"29":{"name":"keyword.other.directive.jai"},"3":{"name":"keyword.other.directive.jai"},"5":{"name":"storage.modifier.jai"},"6":{"name":"storage.modifier.jai"},"7":{"name":"punctuation.section.parens.begin.jai"},"8":{"name":"meta.function.parameters.jai","patterns":[{"include":"#parameter-declarations"}]},"9":{"name":"punctuation.section.parens.end.jai"}}},{"name":"meta.preprocessor.macro.declaration.jai","match":"\\b([a-zA-Z_](?:\\w|\\\\ *)*)\\s*(::)\\s*((inline)\\s*|(no_inline)\\s*)*(\\()(.*)(\\))\\s*((-\u003e)([^{]+))?\\s*(#expand)(\\s*(#no_debug))?","captures":{"1":{"name":"entity.name.function.preprocessor.jai"},"10":{"name":"punctuation.return.jai"},"11":{"name":"meta.function.return-type.jai","patterns":[{"include":"#return-declarations"}]},"12":{"name":"keyword.other.directive.jai"},"14":{"name":"keyword.other.directive.jai"},"2":{"name":"keyword.declaration.jai"},"4":{"name":"storage.modifier.jai"},"5":{"name":"storage.modifier.jai"},"6":{"name":"punctuation.section.parens.begin.jai"},"7":{"name":"meta.function.preprocessor.parameters.jai","patterns":[{"include":"#parameter-declarations"}]},"8":{"name":"punctuation.section.parens.end.jai"}}},{"name":"meta.function.declaration.jai","match":"\\b((main|for_expansion|operator\\s*([^ :]+))|[a-zA-Z_](?:\\w|\\\\ *)*)\\s*(::)\\s*((inline)\\s*|(no_inline)\\s*)*(\\()(.*)(\\))\\s*((-\u003e)([^{]+))?\\s*(((#foreign\\s+([a-zA-Z_](?:\\w|\\\\ *)*(\\s*(\")(([^\"\\\\]|\\\\.)*)(\"))?)|#compiler|#intrinsic|#runtime_support)\\s*)+\\s*(#deprecated\\s*((\")(([^\"\\\\]|\\\\.)*)(\"))?)?\\s*(;)?)?(\\s*#c_call|\\s*#no_context|\\s*#symmetric)*","captures":{"1":{"name":"entity.name.function.jai"},"10":{"name":"punctuation.section.parens.end.jai"},"12":{"name":"punctuation.return.jai"},"13":{"name":"meta.function.return-type.jai","patterns":[{"include":"#return-declarations"}]},"14":{"name":"keyword.control.import.directive.decl.jai"},"17":{"name":"constant.other.import.jai"},"19":{"name":"punctuation.definition.string.import.begin.jai"},"2":{"patterns":[{"match":"(main)","captures":{"1":{"name":"keyword.other.main.jai"}}},{"match":"(for_expansion)","captures":{"1":{"name":"keyword.other.for_expansion.jai"}}},{"match":"(operator\\s*([^ :]+))","captures":{"1":{"name":"keyword.other.operator.jai"},"2":{"name":"keyword.operator.jai"}}}]},"20":{"name":"string-quoted.other.import.jai"},"22":{"name":"punctuation.definition.string.import.end.jai"},"23":{"name":"invalid.deprecated.jai"},"25":{"name":"punctuation.definition.string.deprecated.begin.jai"},"26":{"name":"string-quoted.other.deprecated.jai"},"28":{"name":"punctuation.definition.string.deprecated.end.jai"},"29":{"name":"punctuation.terminator.jai"},"3":{"name":"keyword.operator.jai"},"30":{"name":"keyword.other.directive.jai"},"4":{"name":"keyword.declaration.jai"},"6":{"name":"storage.modifier.jai"},"7":{"name":"storage.modifier.jai"},"8":{"name":"punctuation.section.parens.begin.jai"},"9":{"name":"meta.function.parameters.jai","patterns":[{"include":"#parameter-declarations"}]}}},{"name":"meta.function.declaration.jai","match":"\\b([a-zA-Z_](?:\\w|\\\\ *)*)\\s*(::)\\s*(#bake(_arguments|_constants))\\s+([a-zA-Z_](?:\\w|\\\\ *)*)\\s*(\\()(.*)(\\))","captures":{"1":{"name":"entity.name.function.jai"},"2":{"name":"keyword.declaration.jai"},"3":{"name":"keyword.other.directive.jai"},"5":{"name":"entity.name.function.jai"},"6":{"name":"punctuation.section.parens.begin.jai"},"7":{"name":"meta.function.parameters.jai","patterns":[{"include":"#parameters"}]},"8":{"name":"punctuation.section.parens.end.jai"}}},{"name":"meta.function.call.jai","begin":"(([a-zA-Z_](?:\\w|\\\\ *)*)(\\.)(([a-zA-Z_](?:\\w|\\\\ *)*)(\\.))*)?\\b([a-zA-Z_](?:\\w|\\\\ *)*)\\s*(\\()","end":"(\\))","patterns":[{"include":"$self"}],"beginCaptures":{"2":{"name":"entity.name.namespace.jai"},"3":{"name":"punctuation.accessor.jai"},"5":{"name":"entity.name.namespace.member.jai"},"6":{"name":"punctuation.accessor.jai"},"7":{"patterns":[{"include":"#support"},{"match":"(.*)","captures":{"1":{"name":"entity.name.function.jai"}}}]},"8":{"name":"punctuation.section.parens.begin.jai"}},"endCaptures":{"1":{"name":"punctuation.section.parens.end.jai"}}},{"name":"meta.function.call.jai","begin":"(([a-zA-Z_](?:\\w|\\\\ *)*)(\\.)(([a-zA-Z_](?:\\w|\\\\ *)*)(\\.))*)?\\b([a-zA-Z_](?:\\w|\\\\ *)*)\\s*(\\()(.*)","end":"(\\))","patterns":[{"include":"$self"}],"beginCaptures":{"2":{"name":"entity.name.namespace.jai"},"3":{"name":"punctuation.accessor.jai"},"5":{"name":"entity.name.namespace.member.jai"},"6":{"name":"punctuation.accessor.jai"},"7":{"patterns":[{"include":"#support"},{"match":"(.*)","captures":{"1":{"name":"entity.name.function.jai"}}}]},"8":{"name":"punctuation.section.parens.begin.jai"},"9":{"name":"meta.function.parameters.jai","patterns":[{"include":"#parameters"}]}},"endCaptures":{"1":{"name":"punctuation.section.parens.end.jai"}}}],"repository":{"parameter-declarations":{"patterns":[{"match":"(,)?\\s*(using\\s*((,except|,only|,map)\\([^)]*\\)\\s*)?)?((\\$*)[a-zA-Z_](?:\\w|\\\\ *)*)(\\s*:=)([^,]*)","captures":{"1":{"name":"punctuation.separator.parameters.jai"},"2":{"name":"keyword.other.jai"},"5":{"name":"variable.parameter.jai"},"6":{"name":"punctuation.definition.generic.jai"},"7":{"name":"keyword.declaration.jai"},"8":{"patterns":[{"include":"#expression"}]}}},{"match":"(,)?\\s*(using\\s*((,except|,only|,map)\\([^)]*\\)\\s*)?)?((\\$*)[a-zA-Z_](?:\\w|\\\\ *)*)\\s*(:)\\s*(\\.\\.)?\\s*(\\[[^\\]]*\\])?\\s*((\\**)($)?[a-zA-Z_](?:\\w|\\\\ *)*)?(\\s*=)?([^,]*)","captures":{"1":{"name":"punctuation.separator.parameters.jai"},"10":{"name":"storage.type.jai"},"11":{"name":"keyword.operator.pointer.jai"},"12":{"name":"punctuation.definition.generic.jai"},"13":{"name":"keyword.declaration.jai"},"14":{"patterns":[{"include":"#expression"}]},"2":{"name":"keyword.other.jai"},"5":{"name":"variable.parameter.jai"},"6":{"name":"punctuation.definition.generic.jai"},"7":{"name":"keyword.declaration.jai"},"8":{"name":"punctuation.jai"},"9":{"include":"#array"}}}]},"parameters":{"patterns":[{"match":"(,)?\\s*((\")(([^\"\\\\]|\\\\.)*)(\"))\\s*","captures":{"1":{"name":"punctuation.separator.parameters.jai"},"2":{"patterns":[{"include":"#strings"}]}}},{"match":"(,)?(\\s*(#code|#code,null|#code,typed|#caller_code))?((cast(,trunc)?(,no_check)?(,trunc)?)\\s*(\\()\\s*((\\**)[a-zA-Z_](?:\\w|\\\\ *)*)\\s*(\\)))?(\\s*([a-zA-Z_](?:\\w|\\\\ *)*)(\\s*=))?([^,]*)","captures":{"1":{"name":"punctuation.separator.parameters.jai"},"14":{"name":"variable.parameter.jai"},"15":{"name":"keyword.operator.jai"},"16":{"patterns":[{"include":"#expression"}]},"2":{"name":"keyword.other.directive.jai"},"4":{"patterns":[{"include":"#casts"}]}}}]},"return-declarations":{"patterns":[{"match":"(,)?\\s*([a-zA-Z_](?:\\w|\\\\ *)*)\\s*(:)\\s*((\\[[^\\]]*\\])?\\s*(\\**)(\\$*)[a-zA-Z_](?:\\w|\\\\ *)*)\\s*(#must)?\\s*((@)([a-zA-Z_](?:\\w|\\\\ *)*))?\\s*(#expand)?\\s*(((#foreign\\s+([A-Z-a-z_]\\w*(\\s*(\")(([^\"\\\\]|\\\\.)*)(\"))?)|#compiler|#intrinsic|#runtime_support)\\s*)+\\s*(#deprecated\\s*((\")(([^\"\\\\]|\\\\.)*)(\"))?)?\\s*(;)?)?(\\s*#c_call|\\s*#no_context|\\s*#symmetric)*\\s*(//.*)?","captures":{"1":{"name":"punctuation.separator.parameters.jai"},"10":{"name":"punctuation.definition.annotation.jai"},"11":{"name":"variable.annotation.jai"},"12":{"name":"keyword.other.directive.jai"},"13":{"name":"keyword.control.import.directive.r1.jai"},"16":{"name":"constant.other.import.jai"},"18":{"name":"punctuation.definition.string.import.begin.jai"},"19":{"name":"string-quoted.other.import.jai"},"2":{"name":"variable.parameter.return.jai"},"21":{"name":"punctuation.definition.string.import.end.jai"},"22":{"name":"invalid.deprecated.jai"},"24":{"name":"punctuation.definition.string.deprecated.begin.jai"},"25":{"name":"string-quoted.other.deprecated.jai"},"27":{"name":"punctuation.definition.string.deprecated.end.jai"},"28":{"name":"punctuation.terminator.jai"},"29":{"name":"keyword.other.directive.jai"},"3":{"name":"keyword.declaration.jai"},"30":{"patterns":[{"include":"#comments"}]},"4":{"name":"storage.type.jai"},"5":{"patterns":[{"include":"#array"}]},"6":{"name":"keyword.operator.pointer.jai"},"7":{"name":"punctuation.definition.generic"},"8":{"name":"keyword.other.directive.jai"}}},{"match":"(,)?\\s*((\\[[^\\]]*\\])?\\s*(\\**)(\\$*)[a-zA-Z_](?:\\w|\\\\ *)*)\\s*(#must)?\\s*((@)([a-zA-Z_](?:\\w|\\\\ *)*))?\\s*(#expand)?\\s*(((#foreign\\s+([A-Z-a-z_]\\w*(\\s*(\")(([^\"\\\\]|\\\\.)*)(\"))?)|#compiler|#intrinsic|#runtime_support)\\s*)+\\s*(#deprecated\\s*((\")(([^\"\\\\]|\\\\.)*)(\"))?)?\\s*(;)?)?(\\s*#c_call|\\s*#no_context|\\s*#symmetric)*\\s*(//.*)?","captures":{"1":{"name":"punctuation.separator.parameters.jai"},"10":{"name":"keyword.other.directive.jai"},"11":{"name":"keyword.control.import.directive.jai"},"14":{"name":"constant.other.import.jai"},"16":{"name":"punctuation.definition.string.import.begin.jai"},"17":{"name":"string-quoted.other.import.jai"},"19":{"name":"punctuation.definition.string.import.end.jai"},"2":{"name":"storage.type.jai"},"20":{"name":"invalid.deprecated.jai"},"22":{"name":"punctuation.definition.string.deprecated.begin.jai"},"23":{"name":"string-quoted.other.deprecated.jai"},"25":{"name":"punctuation.definition.string.deprecated.end.jai"},"26":{"name":"punctuation.terminator.jai"},"27":{"name":"keyword.other.directive.jai"},"28":{"patterns":[{"include":"#comments"}]},"3":{"patterns":[{"include":"#array"}]},"4":{"name":"keyword.operator.pointer.jai"},"5":{"name":"punctuation.definition.generic"},"6":{"name":"keyword.other.directive.jai"},"8":{"name":"punctuation.definition.annotation.jai"},"9":{"name":"variable.annotation.jai"}}}]}}},"strings":{"patterns":[{"name":"string.quoted.double.empty.jai","match":"(\")(\")","captures":{"1":{"name":"punctuation.definition.string.empty.begin.jai"},"2":{"name":"punctuation.definition.string.empty.end.jai"}}},{"name":"string.quoted.double.jai","begin":"(\")","end":"(\"|$)","patterns":[{"name":"constant.character.escape.jai","match":"\\\\."},{"name":"constant.other.placeholder.jai","match":"%[0-9]+"},{"match":"(%)%","captures":{"1":{"name":"constant.character.escape.jai"}}},{"name":"constant.other.placeholder.jai","match":"%"}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin.jai"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.jai"}}},{"name":"string.here.embed.arm.jai","contentName":"string.unquoted.here.embed.arm.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(arm))\\b","end":"\\s*(\\3)(\\4)","patterns":[{}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.arm.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.arm.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.arm.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.arm.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.arm.jai"}}},{"name":"string.here.embed.bat.jai","contentName":"string.unquoted.here.embed.bat.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(bat))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.batchfile"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.bat.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.bat.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.bat.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.bat.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.bat.jai"}}},{"name":"string.here.embed.cpp.jai","contentName":"string.unquoted.here.embed.cpp.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(c(\\+\\+|pp)))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.c++"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.cpp.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.cpp.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.cpp.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.cpp.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.cpp.jai"}}},{"name":"string.here.embed.css.jai","contentName":"string.unquoted.here.embed.css.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(css))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.css"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.css.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.css.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.css.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.css.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.css.jai"}}},{"name":"string.here.embed.cs.jai","contentName":"string.unquoted.here.embed.cs.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(c(sharp|#|s)))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.cs"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.cs.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.cs.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.cs.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.cs.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.cs.jai"}}},{"name":"string.here.embed.c.jai","contentName":"string.unquoted.here.embed.c.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(c))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.c"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.c.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.c.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.c.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.c.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.c.jai"}}},{"name":"string.here.embed.glsl.jai","contentName":"string.unquoted.here.embed.glsl.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(glsl))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.glsl"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.glsl.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.glsl.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.glsl.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.glsl.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.glsl.jai"}}},{"name":"string.here.embed.guy.jai","contentName":"string.unquoted.here.embed.guy.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(guy))\\b","end":"\\s*(\\3)(\\4)","patterns":[{}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.guy.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.guy.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.guy.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.guy.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.guy.jai"}}},{"name":"string.here.embed.hlsl.jai","contentName":"string.unquoted.here.embed.hlsl.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(hlsl))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.hlsl"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.hlsl.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.hlsl.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.hlsl.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.hlsl.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.hlsl.jai"}}},{"name":"string.here.embed.jai.jai","contentName":"string.unquoted.here.embed.jai.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(jai))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.jai"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.jai.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.jai.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.jai.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.jai.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.jai.jai"}}},{"name":"string.here.embed.java.jai","contentName":"string.unquoted.here.embed.java.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(java))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.java"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.java.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.java.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.java.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.java.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.java.jai"}}},{"name":"string.here.embed.jsonc.jai","contentName":"string.unquoted.here.embed.jsonc.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(jsonc))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.json.comments"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.jsonc.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.jsonc.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.jsonc.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.jsonc.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.jsonc.jai"}}},{"name":"string.here.embed.json.jai","contentName":"string.unquoted.here.embed.json.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(json))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.json"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.json.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.json.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.json.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.json.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.json.jai"}}},{"name":"string.here.embed.js.jai","contentName":"string.unquoted.here.embed.js.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?((js|javascript)))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.js"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.js.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.js.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.js.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.js.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.js.jai"}}},{"name":"string.here.embed.lua.jai","contentName":"string.unquoted.here.embed.lua.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(lua))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.lua"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.lua.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.lua.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.lua.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.lua.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.lua.jai"}}},{"name":"string.here.embed.makefile.jai","contentName":"string.unquoted.here.embed.makefile.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(make(file)?))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.makefile"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.makefile.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.makefile.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.makefile.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.makefile.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.makefile.jai"}}},{"name":"string.here.embed.metal.jai","contentName":"string.unquoted.here.embed.metal.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?((metal|msl)))\\b","end":"\\s*(\\3)(\\4)","patterns":[{}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.metal.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.metal.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.metal.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.metal.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.metal.jai"}}},{"name":"string.here.embed.psl.jai","contentName":"string.unquoted.here.embed.psl.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?((powershell|psl)))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.powershell"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.psl.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.psl.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.psl.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.psl.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.psl.jai"}}},{"name":"string.here.embed.python.jai","contentName":"string.unquoted.here.embed.python.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(py(thon)?))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.python"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.python.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.python.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.python.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.python.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.python.jai"}}},{"name":"string.here.embed.shaderlab.jai","contentName":"string.unquoted.here.embed.shaderlab.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(shaderlab))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.shaderlab"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.shaderlab.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.shaderlab.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.shaderlab.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.shaderlab.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.shaderlab.jai"}}},{"name":"string.here.embed.shader.jai","contentName":"string.unquoted.here.embed.shader.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(shader))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.glsl"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.shader.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.shader.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.shader.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.shader.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.shader.jai"}}},{"name":"string.here.embed.sh.jai","contentName":"string.unquoted.here.embed.sh.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(sh(ell)?))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.shell"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.sh.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.sh.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.sh.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.sh.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.sh.jai"}}},{"name":"string.here.embed.sql.jai","contentName":"string.unquoted.here.embed.sql.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(sql))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.sql"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.sql.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.sql.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.sql.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.sql.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.sql.jai"}}},{"name":"string.here.embed.toml.jai","contentName":"string.unquoted.here.embed.toml.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(toml))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.toml"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.toml.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.toml.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.toml.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.toml.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.toml.jai"}}},{"name":"string.here.embed.ts.jai","contentName":"string.unquoted.here.embed.ts.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?((ts|typescript)))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.ts"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.ts.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.ts.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.ts.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.ts.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.ts.jai"}}},{"name":"string.here.embed.vdf.jai","contentName":"string.unquoted.here.embed.vdf.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?((vdf|valve)))\\b","end":"\\s*(\\3)(\\4)","patterns":[{}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.vdf.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.vdf.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.vdf.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.vdf.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.vdf.jai"}}},{"name":"string.here.embed.x64.jai","contentName":"string.unquoted.here.embed.x64.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(x(86_)?64))\\b","end":"\\s*(\\3)(\\4)","patterns":[{}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.x64.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.x64.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.x64.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.x64.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.x64.jai"}}},{"name":"string.here.embed.yaml.jai","contentName":"string.unquoted.here.embed.yaml.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(yaml))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"source.yaml"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.yaml.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.yaml.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.yaml.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.yaml.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.yaml.jai"}}},{"name":"string.here.embed.html.jai","contentName":"string.unquoted.here.embed.html.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(html))\\b","end":"\\s*(\\3)(\\4)","patterns":[{}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.html.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.html.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.html.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.html.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.html.jai"}}},{"name":"string.here.embed.md.jai","contentName":"string.unquoted.here.embed.md.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?((md|markdown)))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"text.md"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.md.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.md.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.md.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.md.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.md.jai"}}},{"name":"string.here.embed.xml.jai","contentName":"string.unquoted.here.embed.xml.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(xml))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"text.xml"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.xml.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.xml.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.xml.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.xml.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.xml.jai"}}},{"name":"string.here.embed.xsl.jai","contentName":"string.unquoted.here.embed.xsl.jai","begin":"(#string)\\s+((?i)([A-Za-z_]\\w*)?(xsl))\\b","end":"\\s*(\\3)(\\4)","patterns":[{"include":"text.xml.xsl"}],"beginCaptures":{"1":{"name":"keyword.other.directive.string.xsl.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.xsl.jai"},"4":{"name":"constant.other.stringdelimiter.here.embed.language.xsl.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.embed.xsl.jai"},"2":{"name":"constant.other.stringdelimiter.here.embed.language.xsl.jai"}}},{"name":"string.here.jai","contentName":"string.unquoted.here.jai","begin":"(#string)\\s+([A-Za-z_]\\w*)","end":"\\s*(\\2)","beginCaptures":{"1":{"name":"keyword.other.directive.string.jai"},"2":{"name":"constant.other.stringdelimiter.here.jai"}},"endCaptures":{"1":{"name":"constant.other.stringdelimiter.here.jai"}}}]},"structs":{"match":"\\b([a-zA-Z_](?:\\w|\\\\ *)*)\\s*(::)\\s*(struct)","captures":{"1":{"name":"entity.name.struct.jai"},"2":{"name":"keyword.declaration.jai"},"3":{"name":"keyword.declaration.struct.jai"}}},"symbols":{"patterns":[{"match":"(\\})\\s*(=)\\s*(\\.)([a-zA-Z_](?:\\w|\\\\ *)*)","captures":{"1":{"name":"punctuation.section.braces.end.jai"},"2":{"name":"keyword.declaration.jai"},"3":{"name":"punctuation.accessor.jai"},"4":{"name":"variable.enum.jai"}}},{"name":"keyword.declaration.jai","match":"(::|:=|:)"},{"name":"keyword.operator.jai","match":"(=|\\+|-|\\*|/|\u003c|\u003e|~|\\||\u0026|!|\\^)+"},{"name":"keyword.operator.percent.jai","match":"%"},{"name":"punctuation.jai","match":"(\\.\\.)"},{"name":"punctuation.section.parens.begin.jai","match":"\\("},{"name":"punctuation.section.parens.end.jai","match":"\\)"},{"name":"punctuation.section.braces.begin.jai","match":"\\{"},{"name":"punctuation.section.braces.end.jai","match":"\\}"},{"name":"punctuation.section.brackets.begin.jai","match":"\\["},{"name":"punctuation.section.brackets.end.jai","match":"\\]"},{"name":"punctuation.accessor.jai","match":"(\\.)"},{"name":"punctuation.separator.jai","match":"(,)"},{"name":"punctuation.terminator.jai","match":"(;)"}]},"variables":{"patterns":[{"match":"\\b((it_index|it)|([a-zA-Z_](?:\\w|\\\\ *)*))(\\.[a-zA-Z0-9_.]+)?\\b","captures":{"1":{"name":"variable.other.jai"},"2":{"name":"support.variable.jai"},"4":{"patterns":[{"include":"#members"}]}}}],"repository":{"members":{"match":"(\\.)([a-zA-Z_](?:\\w|\\\\ *)*)","captures":{"1":{"name":"punctuation.accessor.jai"},"2":{"name":"variable.other.member.jai"}}}}}}}
|