github-linguist 9.5.0 → 9.7.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/gno.mod.json +1 -0
- 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.aleo.json +1 -0
- data/grammars/source.apex.json +1 -1
- data/grammars/source.astro.json +1 -1
- data/grammars/source.baml.json +1 -0
- data/grammars/source.bb.json +1 -1
- data/grammars/source.bird2.json +1 -0
- data/grammars/source.blueprint.json +1 -0
- data/grammars/source.bnd.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.carbon.json +1 -0
- data/grammars/source.cel.json +1 -0
- data/grammars/source.cl.json +1 -1
- data/grammars/source.clar.json +1 -1
- data/grammars/source.cmake.json +1 -1
- data/grammars/source.cmd.json +1 -1
- data/grammars/source.comment-string.wesl.json +1 -1
- data/grammars/source.comment-string.wgsl.json +1 -1
- data/grammars/source.cs.json +1 -1
- data/grammars/source.csswg.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.dds.dspf.json +1 -1
- data/grammars/source.dds.icff.json +1 -1
- data/grammars/source.dds.lf.json +1 -1
- data/grammars/source.dds.pf.json +1 -1
- data/grammars/source.dds.prtf.json +1 -1
- data/grammars/source.deq.json +1 -0
- data/grammars/source.emacs.lisp.json +1 -1
- data/grammars/source.fift.json +1 -0
- data/grammars/source.flix.json +1 -1
- data/grammars/source.fpp.json +1 -0
- data/grammars/source.func.json +1 -0
- data/grammars/source.gdscript.json +1 -1
- data/grammars/source.gedcom.json +1 -1
- data/grammars/source.gimprc.json +1 -0
- data/grammars/source.gimpres.json +1 -0
- data/grammars/source.gitconfig.json +1 -1
- data/grammars/source.gno.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.hx.json +1 -1
- data/grammars/source.hxml.json +1 -1
- data/grammars/source.il.json +1 -0
- 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.jass.json +1 -0
- data/grammars/source.julia.json +1 -1
- data/grammars/source.just.json +1 -1
- data/grammars/source.kcl.json +1 -1
- data/grammars/source.koka.json +1 -1
- data/grammars/source.lean4.markdown.json +1 -1
- data/grammars/source.leo.json +1 -1
- data/grammars/source.lobster.json +1 -0
- data/grammars/source.logos.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.mdx.astro.json +1 -1
- data/grammars/source.mi.json +1 -1
- 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.ms.json +1 -0
- data/grammars/source.nim.json +1 -1
- data/grammars/source.openqasm.json +1 -1
- data/grammars/source.opy.json +1 -0
- data/grammars/source.paperspecs.json +1 -0
- data/grammars/source.pic.json +1 -1
- data/grammars/source.pkgconf.json +1 -0
- data/grammars/source.pl.json +1 -0
- data/grammars/source.pnlgrp.json +1 -1
- data/grammars/source.powerquery.json +1 -0
- data/grammars/source.powershell.json +1 -1
- data/grammars/source.prisma.json +1 -1
- data/grammars/source.qsharp.json +1 -1
- data/grammars/source.quint.json +1 -0
- data/grammars/source.rarlist.json +1 -0
- 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.rhai.json +1 -0
- data/grammars/source.rpg.json +1 -1
- data/grammars/source.rpgle.json +1 -1
- data/grammars/source.rust.json +1 -1
- data/grammars/source.scala.json +1 -1
- data/grammars/source.slang.json +1 -1
- data/grammars/source.slint.json +1 -1
- data/grammars/source.smithy.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.stim.json +1 -0
- data/grammars/source.surrealql.json +1 -1
- data/grammars/source.swift.json +1 -1
- data/grammars/source.tasm.json +1 -0
- data/grammars/source.tlb.json +1 -0
- data/grammars/source.tolk.json +1 -0
- data/grammars/source.ucode-template.json +1 -0
- data/grammars/source.ucode.json +1 -0
- 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.verse.json +1 -0
- data/grammars/source.vespaSchema.json +1 -0
- data/grammars/source.vhs.json +1 -0
- data/grammars/source.wgsl.json +1 -1
- data/grammars/source.yaml.salt.json +1 -1
- data/grammars/spicedb-yaml.injection.json +1 -0
- data/grammars/text.bbcode.json +1 -0
- data/grammars/text.cachedir.json +1 -0
- data/grammars/text.cookie-jar.json +1 -0
- data/grammars/text.html.handlebars.json +1 -1
- data/grammars/text.html.vue.json +1 -1
- data/grammars/text.mac-tts.json +1 -0
- data/grammars/text.recfile.json +1 -0
- data/grammars/text.roff.json +1 -1
- data/grammars/version +1 -1
- data/lib/linguist/VERSION +1 -1
- data/lib/linguist/blob_helper.rb +19 -0
- data/lib/linguist/classifier.rb +2 -1
- data/lib/linguist/generated.rb +40 -0
- data/lib/linguist/generic.yml +3 -0
- data/lib/linguist/heuristics.yml +97 -5
- data/lib/linguist/language.rb +13 -9
- data/lib/linguist/languages.yml +368 -37
- data/lib/linguist/languages_data.rb +7663 -0
- data/lib/linguist/lazy_blob.rb +25 -2
- data/lib/linguist/samples.rb +4 -10
- data/lib/linguist/samples_data.rb +196100 -0
- data/lib/linguist/vendor.yml +3 -0
- metadata +54 -18
- data/grammars/markdown.bicep.codeblock.json +0 -1
- data/lib/linguist/languages.json +0 -1
- data/lib/linguist/samples.json +0 -1
data/grammars/source.hx.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"Haxe","scopeName":"source.hx","patterns":[{"include":"#all"}],"repository":{"abstract":{"name":"meta.abstract.hx","begin":"(?=abstract\\s+[A-Z])","end":"(?\u003c=\\})|(;)","patterns":[{"include":"#abstract-name"},{"include":"#abstract-name-post"},{"include":"#abstract-block"}],"endCaptures":{"1":{"name":"punctuation.terminator.hx"}}},"abstract-block":{"name":"meta.block.hx","begin":"(?\u003c=\\{)","end":"(\\})","patterns":[{"include":"#method"},{"include":"#modifiers"},{"include":"#variable"},{"include":"#block"},{"include":"#block-contents"}],"endCaptures":{"1":{"name":"punctuation.definition.block.end.hx"}}},"abstract-name":{"begin":"\\b(abstract)\\b","end":"([_A-Za-z]\\w*)","patterns":[{"include":"#global"}],"beginCaptures":{"1":{"name":"storage.type.class.hx"}},"endCaptures":{"1":{"name":"entity.name.type.class.hx"}}},"abstract-name-post":{"begin":"(?\u003c=\\w)","end":"([\\{;])","patterns":[{"include":"#global"},{"name":"keyword.other.hx","match":"\\b(from|to)\\b"},{"include":"#type"},{"name":"punctuation.definition.other.hx","match":"[\\(\\)]"}],"endCaptures":{"1":{"name":"punctuation.definition.block.begin.hx"}}},"accessor-method":{"patterns":[{"name":"entity.name.function.hx","match":"\\b(get|set)_[_A-Za-z]\\w*\\b"}]},"all":{"patterns":[{"include":"#global"},{"include":"#package"},{"include":"#import"},{"include":"#using"},{"name":"storage.modifier.hx","match":"\\b(final)\\b(?=\\s+(class|interface|extern|private)\\b)"},{"include":"#abstract"},{"include":"#class"},{"include":"#enum"},{"include":"#interface"},{"include":"#typedef"},{"include":"#block"},{"include":"#block-contents"}]},"array":{"name":"meta.array.literal.hx","begin":"\\[","end":"\\]","patterns":[{"include":"#block"},{"include":"#block-contents"}],"beginCaptures":{"0":{"name":"punctuation.definition.array.begin.hx"}},"endCaptures":{"0":{"name":"punctuation.definition.array.end.hx"}}},"arrow-function":{"name":"meta.method.arrow.hx","begin":"(\\()(?=[^(]*?\\)\\s*-\u003e)","end":"(\\))\\s*(-\u003e)","patterns":[{"include":"#arrow-function-parameter"}],"beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.hx"}},"endCaptures":{"1":{"name":"punctuation.definition.parameters.end.hx"},"2":{"name":"storage.type.function.arrow.hx"}}},"arrow-function-parameter":{"begin":"(?\u003c=\\(|,)","end":"(?=\\)|,)","patterns":[{"include":"#parameter-name"},{"include":"#arrow-function-parameter-type-hint"},{"include":"#parameter-assign"},{"include":"#punctuation-comma"},{"include":"#global"}]},"arrow-function-parameter-type-hint":{"begin":":","end":"(?=\\)|,|=)","patterns":[{"include":"#type"}],"beginCaptures":{"0":{"name":"keyword.operator.type.annotation.hx"}}},"block":{"begin":"\\{","end":"\\}","patterns":[{"include":"#block"},{"include":"#block-contents"}],"beginCaptures":{"0":{"name":"punctuation.definition.block.begin.hx"}},"endCaptures":{"0":{"name":"punctuation.definition.block.end.hx"}}},"block-contents":{"patterns":[{"include":"#global"},{"include":"#regex"},{"include":"#array"},{"include":"#constants"},{"include":"#strings"},{"include":"#metadata"},{"include":"#method"},{"include":"#variable"},{"include":"#modifiers"},{"include":"#new-expr"},{"include":"#for-loop"},{"include":"#keywords"},{"include":"#arrow-function"},{"include":"#method-call"},{"include":"#enum-constructor-call"},{"include":"#punctuation-braces"},{"include":"#macro-reification"},{"include":"#operators"},{"include":"#operator-assignment"},{"include":"#punctuation-terminator"},{"include":"#punctuation-comma"},{"include":"#punctuation-accessor"},{"include":"#identifiers"}]},"class":{"name":"meta.class.hx","begin":"(?=class)","end":"(?\u003c=\\})|(;)","patterns":[{"include":"#class-name"},{"include":"#class-name-post"},{"include":"#class-block"}],"endCaptures":{"1":{"name":"punctuation.terminator.hx"}}},"class-block":{"name":"meta.block.hx","begin":"(?\u003c=\\{)","end":"(\\})","patterns":[{"include":"#method"},{"include":"#modifiers"},{"include":"#variable"},{"include":"#block"},{"include":"#block-contents"}],"endCaptures":{"1":{"name":"punctuation.definition.block.end.hx"}}},"class-name":{"name":"meta.class.identifier.hx","begin":"\\b(class)\\b","end":"([_A-Za-z]\\w*)","patterns":[{"include":"#global"}],"beginCaptures":{"1":{"name":"storage.type.class.hx"}},"endCaptures":{"1":{"name":"entity.name.type.class.hx"}}},"class-name-post":{"begin":"(?\u003c=\\w)","end":"([\\{;])","patterns":[{"include":"#modifiers-inheritance"},{"include":"#type"}],"endCaptures":{"1":{"name":"punctuation.definition.block.begin.hx"}}},"comments":{"patterns":[{"name":"comment.block.documentation.hx","begin":"/\\*\\*(?!/)","end":"\\*/","patterns":[{"include":"#javadoc-tags"}],"beginCaptures":{"0":{"name":"punctuation.definition.comment.hx"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.hx"}}},{"name":"comment.block.hx","begin":"/\\*","end":"\\*/","patterns":[{"include":"#javadoc-tags"}],"beginCaptures":{"0":{"name":"punctuation.definition.comment.hx"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.hx"}}},{"name":"comment.line.double-slash.hx","match":"(//).*$\\n?","captures":{"1":{"name":"punctuation.definition.comment.hx"}}}]},"conditional-compilation":{"patterns":[{"match":"((#(if|elseif))[\\s!]+([a-zA-Z_][a-zA-Z0-9_]*(\\.[a-zA-Z_][a-zA-Z0-9_]*)*)(?=\\s|/\\*|//))","captures":{"0":{"name":"punctuation.definition.tag"}}},{"name":"punctuation.definition.tag","begin":"((#(if|elseif))[\\s!]*)(?=\\()","end":"(?\u003c=\\)|\\n)","patterns":[{"include":"#conditional-compilation-parens"}],"beginCaptures":{"0":{"name":"punctuation.definition.tag"}},"endCaptures":{"0":{"name":"punctuation.definition.tag"}}},{"name":"punctuation.definition.tag","match":"(#(end|else|error|line))"},{"name":"punctuation.definition.tag","match":"(#([a-zA-Z0-9_]*))\\s"}]},"conditional-compilation-parens":{"begin":"\\(","end":"\\)","patterns":[{"include":"#conditional-compilation-parens"}]},"constant-name":{"name":"variable.other.hx","match":"\\b([_A-Z][_A-Z0-9]*)\\b"},"constants":{"patterns":[{"name":"constant.language.hx","match":"\\b(true|false|null)\\b"},{"match":"\\b(?:0[xX][0-9a-fA-F][_0-9a-fA-F]*([iu][0-9][0-9_]*)?)\\b","captures":{"0":{"name":"constant.numeric.hex.hx"},"1":{"name":"constant.numeric.suffix.hx"}}},{"match":"\\b(?:0[bB][01][_01]*([iu][0-9][0-9_]*)?)\\b","captures":{"0":{"name":"constant.numeric.bin.hx"},"1":{"name":"constant.numeric.suffix.hx"}}},{"match":"(?x)\n(?\u003c!\\$)(?:\n (?:\\b[0-9][0-9_]*(\\.)[0-9_]+[eE][+-]?[0-9_]+([fiu][0-9][0-9_]*)?\\b)| # 1.1E+3f64\n (?:\\b[0-9][0-9_]*(\\.)[eE][+-]?[0-9_]+([fiu][0-9][0-9_]*)?\\b)| # 1.E+3f64\n (?:\\B(\\.)[0-9][0-9_]*[eE][+-]?[0-9_]+([fiu][0-9][0-9_]*)?\\b)| # .1E+3f64\n (?:\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*([fiu][0-9][0-9_]*)?\\b)| # 1E+3f64\n (?:\\b[0-9][0-9_]*(\\.)[0-9_]+([fiu][0-9][0-9_]*)?\\b)| # 1.1f64\n (?:\\b[0-9][0-9_]*(\\.)(?!\\.)(?:\\B|([fiu][0-9][0-9_]*)\\b))| # 1.f64\n (?:\\B(\\.)[0-9][0-9_]*([fiu][0-9][0-9_]*)?\\b)| # .1f64\n (?:\\b[0-9][0-9_]*([fiu][0-9][0-9_]*)?\\b) # 1u64\n)(?!\\$)","captures":{"0":{"name":"constant.numeric.decimal.hx"},"1":{"name":"meta.delimiter.decimal.period.hx"},"10":{"name":"meta.delimiter.decimal.period.hx"},"11":{"name":"constant.numeric.suffix.hx"},"12":{"name":"meta.delimiter.decimal.period.hx"},"13":{"name":"constant.numeric.suffix.hx"},"14":{"name":"constant.numeric.suffix.hx"},"2":{"name":"constant.numeric.suffix.hx"},"3":{"name":"meta.delimiter.decimal.period.hx"},"4":{"name":"constant.numeric.suffix.hx"},"5":{"name":"meta.delimiter.decimal.period.hx"},"6":{"name":"constant.numeric.suffix.hx"},"7":{"name":"constant.numeric.suffix.hx"},"8":{"name":"meta.delimiter.decimal.period.hx"},"9":{"name":"constant.numeric.suffix.hx"}}}]},"enum":{"name":"meta.enum.hx","begin":"(?=enum\\s+[A-Z])","end":"(?\u003c=\\})|(;)","patterns":[{"include":"#enum-name"},{"include":"#enum-name-post"},{"include":"#enum-block"}],"endCaptures":{"1":{"name":"punctuation.terminator.hx"}}},"enum-block":{"name":"meta.block.hx","begin":"(?\u003c=\\{)","end":"(\\})","patterns":[{"include":"#global"},{"include":"#metadata"},{"include":"#parameters"},{"include":"#identifiers"}],"endCaptures":{"1":{"name":"punctuation.definition.block.end.hx"}}},"enum-constructor-call":{"begin":"\\b(?\u003c!\\.)((_*[a-z]\\w*\\.)*)(_*[A-Z]\\w*)(?:(\\.)(_*[A-Z]\\w*[a-z]\\w*))*\\s*(\\()","end":"(\\))","patterns":[{"include":"#block"},{"include":"#block-contents"}],"beginCaptures":{"1":{"name":"support.package.hx"},"3":{"name":"entity.name.type.hx"},"4":{"name":"support.package.hx"},"5":{"name":"entity.name.type.hx"},"6":{"name":"meta.brace.round.hx"}},"endCaptures":{"1":{"name":"meta.brace.round.hx"}}},"enum-name":{"begin":"\\b(enum)\\b","end":"([_A-Za-z]\\w*)","patterns":[{"include":"#global"}],"beginCaptures":{"1":{"name":"storage.type.class.hx"}},"endCaptures":{"1":{"name":"entity.name.type.class.hx"}}},"enum-name-post":{"begin":"(?\u003c=\\w)","end":"([\\{;])","patterns":[{"include":"#type"}],"endCaptures":{"1":{"name":"punctuation.definition.block.begin.hx"}}},"for-loop":{"begin":"\\b(for)\\b\\s*(\\()","end":"(\\))","patterns":[{"name":"keyword.other.in.hx","match":"\\b(in)\\b"},{"include":"#block"},{"include":"#block-contents"}],"beginCaptures":{"1":{"name":"keyword.control.flow-control.hx"},"2":{"name":"meta.brace.round.hx"}},"endCaptures":{"1":{"name":"meta.brace.round.hx"}}},"function-type":{"begin":"\\(","end":"\\)","patterns":[{"include":"#function-type-parameter"}],"beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.hx"}},"endCaptures":{"0":{"name":"punctuation.definition.parameters.end.hx"}}},"function-type-parameter":{"begin":"(?\u003c=\\(|,)","end":"(?=\\)|,)","patterns":[{"include":"#global"},{"include":"#metadata"},{"include":"#operator-optional"},{"include":"#punctuation-comma"},{"include":"#function-type-parameter-name"},{"include":"#function-type-parameter-type-hint"},{"include":"#parameter-assign"},{"include":"#type"},{"include":"#global"}]},"function-type-parameter-name":{"match":"([_a-zA-Z]\\w*)(?=\\s*:)","captures":{"1":{"name":"variable.parameter.hx"}}},"function-type-parameter-type-hint":{"begin":":","end":"(?=\\)|,|=)","patterns":[{"include":"#type"}],"beginCaptures":{"0":{"name":"keyword.operator.type.annotation.hx"}}},"global":{"patterns":[{"include":"#comments"},{"include":"#conditional-compilation"}]},"identifier-name":{"name":"variable.other.hx","match":"\\b([_A-Za-z]\\w*)\\b"},"identifiers":{"patterns":[{"include":"#constant-name"},{"include":"#type-name"},{"include":"#identifier-name"}]},"import":{"begin":"import\\b","end":"$|(;)","patterns":[{"include":"#type-path"},{"name":"keyword.control.as.hx","match":"\\b(as)\\b"},{"name":"keyword.control.in.hx","match":"\\b(in)\\b"},{"name":"constant.language.import-all.hx","match":"\\*"},{"name":"variable.other.hxt","match":"\\b([_A-Za-z]\\w*)\\b(?=\\s*(as|in|$|(;)))"},{"include":"#type-path-package-name"}],"beginCaptures":{"0":{"name":"keyword.control.import.hx"}},"endCaptures":{"1":{"name":"punctuation.terminator.hx"}}},"interface":{"name":"meta.interface.hx","begin":"(?=interface)","end":"(?\u003c=\\})|(;)","patterns":[{"include":"#interface-name"},{"include":"#interface-name-post"},{"include":"#interface-block"}],"endCaptures":{"1":{"name":"punctuation.terminator.hx"}}},"interface-block":{"name":"meta.block.hx","begin":"(?\u003c=\\{)","end":"(\\})","patterns":[{"include":"#method"},{"include":"#variable"},{"include":"#block"},{"include":"#block-contents"}],"endCaptures":{"1":{"name":"punctuation.definition.block.end.hx"}}},"interface-name":{"begin":"\\b(interface)\\b","end":"([_A-Za-z]\\w*)","patterns":[{"include":"#global"}],"beginCaptures":{"1":{"name":"storage.type.class.hx"}},"endCaptures":{"1":{"name":"entity.name.type.class.hx"}}},"interface-name-post":{"begin":"(?\u003c=\\w)","end":"([\\{;])","patterns":[{"include":"#global"},{"include":"#modifiers-inheritance"},{"include":"#type"}],"endCaptures":{"1":{"name":"punctuation.definition.block.begin.hx"}}},"javadoc-tags":{"patterns":[{"match":"(@(?:param|exception|throws|event))\\s+([_A-Za-z]\\w*)\\s+","captures":{"1":{"name":"storage.type.class.javadoc"},"2":{"name":"variable.other.javadoc"}}},{"match":"(@since)\\s+([\\w\\.-]+)\\s+","captures":{"1":{"name":"storage.type.class.javadoc"},"2":{"name":"constant.numeric.javadoc"}}},{"match":"@(param|exception|throws|deprecated|returns?|since|default|see|event)","captures":{"0":{"name":"storage.type.class.javadoc"}}}]},"keywords":{"patterns":[{"begin":"(?\u003c=trace|$type|if|while|for|super)\\s*(\\()","end":"\\)","patterns":[{"include":"#block-contents"}],"beginCaptures":{"1":{"name":"meta.brace.round.hx"}},"endCaptures":{"0":{"name":"meta.brace.round.hx"}}},{"begin":"(?\u003c=catch)\\s*(\\()","end":"\\)","patterns":[{"include":"#block-contents"},{"include":"#type-check"}],"beginCaptures":{"1":{"name":"meta.brace.round.hx"}},"endCaptures":{"0":{"name":"meta.brace.round.hx"}}},{"begin":"(?\u003c=cast)\\s*(\\()","end":"\\)","patterns":[{"begin":"(?=,)","end":"(?=\\))","patterns":[{"include":"#type"}]},{"include":"#block-contents"}],"beginCaptures":{"1":{"name":"meta.brace.round.hx"}},"endCaptures":{"0":{"name":"meta.brace.round.hx"}}},{"name":"keyword.control.catch-exception.hx","match":"\\b(try|catch|throw)\\b"},{"begin":"\\b(case|default)\\b","end":":|(?=if)|$","patterns":[{"include":"#global"},{"include":"#metadata"},{"match":"\\b(var|final)\\b\\s*([_a-zA-Z]\\w*)\\b","captures":{"1":{"name":"storage.type.variable.hx"},"2":{"name":"variable.other.hx"}}},{"include":"#array"},{"include":"#constants"},{"include":"#strings"},{"name":"meta.brace.round.hx","match":"\\("},{"name":"meta.brace.round.hx","match":"\\)"},{"include":"#macro-reification"},{"name":"keyword.operator.extractor.hx","match":"=\u003e"},{"include":"#operator-assignment"},{"include":"#punctuation-comma"},{"include":"#keywords"},{"include":"#method-call"},{"include":"#identifiers"}],"beginCaptures":{"1":{"name":"keyword.control.flow-control.hx"}}},{"name":"keyword.control.flow-control.hx","match":"\\b(if|else|return|do|while|for|break|continue|switch|case|default)\\b"},{"name":"keyword.other.untyped.hx","match":"\\b(cast|untyped)\\b"},{"name":"keyword.other.trace.hx","match":"\\btrace\\b"},{"name":"keyword.other.type.hx","match":"\\$type\\b"},{"name":"keyword.other.untyped-property.hx","match":"\\__(global|this)__\\b"},{"name":"variable.language.hx","match":"\\b(this|super)\\b"},{"name":"keyword.operator.new.hx","match":"\\bnew\\b"},{"name":"storage.type.hx","match":"\\b(abstract|class|enum|interface|typedef)\\b"},{"name":"storage.type.function.arrow.hx","match":"-\u003e"},{"include":"#modifiers"},{"include":"#modifiers-inheritance"}]},"keywords-accessor":{"name":"storage.type.property.hx","match":"\\b(private|default|get|set|dynamic|never|null)\\b"},"macro-reification":{"patterns":[{"match":"(\\$)([eabipv])\\{","captures":{"1":{"name":"punctuation.definition.reification.hx"},"2":{"name":"keyword.reification.hx"}}},{"match":"((\\$)([a-zA-Z]*))","captures":{"2":{"name":"punctuation.definition.reification.hx"},"3":{"name":"variable.reification.hx"}}}]},"metadata":{"patterns":[{"begin":"(@)(:(abi|abstract|access|allow|analyzer|annotation|arrayAccess|astSource|autoBuild|bind|bitmap|bridgeProperties|build|buildXml|bypassAccessor|callable|classCode|commutative|compilerGenerated|const|coreApi|coreType|cppFileCode|cppInclude|cppNamespaceCode|cs.assemblyMeta|cs.assemblyStrict|cs.using|dce|debug|decl|delegate|depend|deprecated|eager|enum|event|expose|extern|file|fileXml|final|fixed|flash.property|font|forward.new|forward.variance|forward|forwardStatics|from|functionCode|functionTailCode|generic|genericBuild|genericClassPerMethod|getter|hack|headerClassCode|headerCode|headerInclude|headerNamespaceCode|hlNative|hxGen|ifFeature|include|inheritDoc|inline|internal|isVar|java.native|javaCanonical|jsRequire|jvm.synthetic|keep|keepInit|keepSub|luaDotMethod|luaRequire|macro|markup|mergeBlock|multiReturn|multiType|native|nativeChildren|nativeGen|nativeProperty|nativeStaticExtension|noClosure|noCompletion|noDebug|noDoc|noImportGlobal|noPrivateAccess|noStack|noUsing|nonVirtual|notNull|nullSafety|objc|objcProtocol|op|optional|overload|persistent|phpClassConst|phpGlobal|phpMagic|phpNoConstructor|pos|private|privateAccess|property|protected|publicFields|pure|pythonImport|readOnly|remove|require|resolve|rtti|runtimeValue|scalar|selfCall|semantics|setter|sound|sourceFile|stackOnly|strict|struct|structAccess|structInit|suppressWarnings|templatedCall|throws|to|transient|transitive|unifyMinDynamic|unreflective|unsafe|using|void|volatile)\\b)\\s*(\\()","end":"\\)","patterns":[{"include":"#block-contents"}],"beginCaptures":{"1":{"name":"punctuation.metadata.hx"},"2":{"name":"storage.modifier.metadata.hx"},"3":{"name":"meta.brace.round.hx"}},"endCaptures":{"0":{"name":"meta.brace.round.hx"}}},{"match":"((@)(:(abi|abstract|access|allow|analyzer|annotation|arrayAccess|astSource|autoBuild|bind|bitmap|bridgeProperties|build|buildXml|bypassAccessor|callable|classCode|commutative|compilerGenerated|const|coreApi|coreType|cppFileCode|cppInclude|cppNamespaceCode|cs.assemblyMeta|cs.assemblyStrict|cs.using|dce|debug|decl|delegate|depend|deprecated|eager|enum|event|expose|extern|file|fileXml|final|fixed|flash.property|font|forward.new|forward.variance|forward|forwardStatics|from|functionCode|functionTailCode|generic|genericBuild|genericClassPerMethod|getter|hack|headerClassCode|headerCode|headerInclude|headerNamespaceCode|hlNative|hxGen|ifFeature|include|inheritDoc|inline|internal|isVar|java.native|javaCanonical|jsRequire|jvm.synthetic|keep|keepInit|keepSub|luaDotMethod|luaRequire|macro|markup|mergeBlock|multiReturn|multiType|native|nativeChildren|nativeGen|nativeProperty|nativeStaticExtension|noClosure|noCompletion|noDebug|noDoc|noImportGlobal|noPrivateAccess|noStack|noUsing|nonVirtual|notNull|nullSafety|objc|objcProtocol|op|optional|overload|persistent|phpClassConst|phpGlobal|phpMagic|phpNoConstructor|pos|private|privateAccess|property|protected|publicFields|pure|pythonImport|readOnly|remove|require|resolve|rtti|runtimeValue|scalar|selfCall|semantics|setter|sound|sourceFile|stackOnly|strict|struct|structAccess|structInit|suppressWarnings|templatedCall|throws|to|transient|transitive|unifyMinDynamic|unreflective|unsafe|using|void|volatile)\\b))","captures":{"2":{"name":"punctuation.metadata.hx"},"3":{"name":"storage.modifier.metadata.hx"}}},{"begin":"(@)(:?[a-zA-Z_]*)\\s*(\\()","end":"\\)","patterns":[{"include":"#block-contents"}],"beginCaptures":{"1":{"name":"punctuation.metadata.hx"},"2":{"name":"variable.metadata.hx"},"3":{"name":"meta.brace.round.hx"}},"endCaptures":{"0":{"name":"meta.brace.round.hx"}}},{"match":"(@)(:?)([a-zA-Z_]*(\\.))*([a-zA-Z_]*)?","captures":{"1":{"name":"punctuation.metadata.hx"},"2":{"name":"variable.metadata.hx"},"3":{"name":"variable.metadata.hx"},"4":{"name":"punctuation.accessor.hx"},"5":{"name":"variable.metadata.hx"}}}]},"method":{"name":"meta.method.hx","begin":"(?=\\bfunction\\b)","end":"(?\u003c=[\\};])","patterns":[{"include":"#macro-reification"},{"include":"#method-name"},{"include":"#method-name-post"},{"include":"#method-block"}]},"method-block":{"name":"meta.method.block.hx","begin":"(?\u003c=\\{)","end":"(\\})","patterns":[{"include":"#block"},{"include":"#block-contents"}],"beginCaptures":{"1":{"name":"punctuation.definition.block.begin.hx"}},"endCaptures":{"1":{"name":"punctuation.definition.block.end.hx"}}},"method-call":{"begin":"\\b(?:(__(?:addressOf|as|call|checked|cpp|cs|define_feature|delete|feature|field|fixed|foreach|forin|has_next|hkeys|in|int|is|java|js|keys|lock|lua|lua_table|new|php|physeq|prefix|ptr|resources|rethrow|set|setfield|sizeof|type|typeof|unprotect|unsafe|valueOf|var|vector|vmem_get|vmem_set|vmem_sign|instanceof|strict_eq|strict_neq)__)|([_a-z]\\w*))\\s*(\\()","end":"(\\))","patterns":[{"include":"#block"},{"include":"#block-contents"}],"beginCaptures":{"1":{"name":"keyword.other.untyped-function.hx"},"2":{"name":"entity.name.function.hx"},"3":{"name":"meta.brace.round.hx"}},"endCaptures":{"1":{"name":"meta.brace.round.hx"}}},"method-name":{"begin":"\\b(function)\\b\\s*\\b(?:(new)|([_A-Za-z]\\w*))?\\b","end":"(?=$|\\()","patterns":[{"include":"#macro-reification"},{"include":"#type-parameters"}],"beginCaptures":{"1":{"name":"storage.type.function.hx"},"2":{"name":"storage.type.hx"},"3":{"name":"entity.name.function.hx"}}},"method-name-post":{"begin":"(?\u003c=[\\w\\s\u003e])","end":"(\\{)|(;)","patterns":[{"include":"#parameters"},{"include":"#method-return-type-hint"},{"include":"#block"},{"include":"#block-contents"}],"endCaptures":{"1":{"name":"punctuation.definition.block.begin.hx"},"2":{"name":"punctuation.terminator.hx"}}},"method-return-type-hint":{"begin":"(?\u003c=\\))\\s*(:)","end":"(?=\\{|;|[a-z0-9])","patterns":[{"include":"#type"}],"beginCaptures":{"1":{"name":"keyword.operator.type.annotation.hx"}}},"modifiers":{"patterns":[{"name":"storage.type.class","match":"\\b(enum)\\b"},{"name":"storage.modifier.hx","match":"\\b(public|private|static|dynamic|inline|macro|extern|override|overload|abstract)\\b"},{"name":"storage.modifier.hx","match":"\\b(final)\\b(?=\\s+(public|private|static|dynamic|inline|macro|extern|override|overload|abstract|function))"}]},"modifiers-inheritance":{"name":"storage.modifier.hx","match":"\\b(implements|extends)\\b"},"new-expr":{"name":"new.expr.hx","begin":"(?\u003c!\\.)\\b(new)\\b","end":"(?=$|\\()","patterns":[{"include":"#type"}],"beginCaptures":{"1":{"name":"keyword.operator.new.hx"}}},"operator-assignment":{"name":"keyword.operator.assignment.hx","match":"(=)"},"operator-optional":{"name":"keyword.operator.optional.hx","match":"(\\?)(?!\\s)"},"operator-rest":{"name":"keyword.operator.rest.hx","match":"\\.\\.\\."},"operator-type-hint":{"name":"keyword.operator.type.annotation.hx","match":"(:)"},"operators":{"patterns":[{"name":"keyword.operator.logical.hx","match":"(\u0026\u0026|\\|\\|)"},{"name":"keyword.operator.bitwise.hx","match":"(~|\u0026|\\||\\^|\u003e\u003e\u003e|\u003c\u003c|\u003e\u003e)"},{"name":"keyword.operator.comparison.hx","match":"(==|!=|\u003c=|\u003e=|\u003c|\u003e)"},{"name":"keyword.operator.logical.hx","match":"(!)"},{"name":"keyword.operator.increment-decrement.hx","match":"(\\-\\-|\\+\\+)"},{"name":"keyword.operator.arithmetic.hx","match":"(\\-|\\+|\\*|\\/|%)"},{"name":"keyword.operator.intiterator.hx","match":"\\.\\.\\."},{"name":"keyword.operator.arrow.hx","match":"=\u003e"},{"name":"keyword.operator.nullcoalescing.hx","match":"\\?\\?"},{"name":"keyword.operator.safenavigation.hx","match":"\\?\\."},{"name":"keyword.other.hx","match":"\\bis\\b(?!\\()"},{"begin":"\\?","end":":","patterns":[{"include":"#block"},{"include":"#block-contents"}],"beginCaptures":{"0":{"name":"keyword.operator.ternary.hx"}},"endCaptures":{"0":{"name":"keyword.operator.ternary.hx"}}}]},"package":{"begin":"package\\b","end":"$|(;)","patterns":[{"include":"#type-path"},{"include":"#type-path-package-name"}],"beginCaptures":{"0":{"name":"keyword.other.package.hx"}},"endCaptures":{"1":{"name":"punctuation.terminator.hx"}}},"parameter":{"begin":"(?\u003c=\\(|,)","end":"(?=\\)(?!\\s*-\u003e)|,)","patterns":[{"include":"#parameter-name"},{"include":"#parameter-type-hint"},{"include":"#parameter-assign"},{"include":"#global"}]},"parameter-assign":{"begin":"=","end":"(?=\\)|,)","patterns":[{"include":"#block"},{"include":"#block-contents"}],"beginCaptures":{"0":{"name":"keyword.operator.assignment.hx"}}},"parameter-name":{"patterns":[{"match":"\\s*([_a-zA-Z]\\w*)","captures":{"1":{"name":"variable.parameter.hx"}}},{"include":"#global"},{"include":"#metadata"},{"include":"#operator-optional"},{"include":"#operator-rest"}]},"parameter-type-hint":{"begin":":","end":"(?=\\)(?!\\s*-\u003e)|,|=)","patterns":[{"include":"#type"}],"beginCaptures":{"0":{"name":"keyword.operator.type.annotation.hx"}}},"parameters":{"name":"meta.parameters.hx","begin":"\\(","end":"\\s*(\\)(?!\\s*-\u003e))","patterns":[{"include":"#parameter"},{"include":"#punctuation-comma"}],"beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.hx"}},"endCaptures":{"1":{"name":"punctuation.definition.parameters.end.hx"}}},"punctuation-accessor":{"name":"punctuation.accessor.hx","match":"\\."},"punctuation-braces":{"begin":"\\(","end":"\\)","patterns":[{"include":"#keywords"},{"include":"#block"},{"include":"#block-contents"},{"include":"#type-check"}],"beginCaptures":{"0":{"name":"meta.brace.round.hx"}},"endCaptures":{"0":{"name":"meta.brace.round.hx"}}},"punctuation-comma":{"name":"punctuation.separator.comma.hx","match":","},"punctuation-terminator":{"name":"punctuation.terminator.hx","match":";"},"regex":{"name":"string.regexp.hx","begin":"(~/)","end":"(/)([gimsu]*)","patterns":[{"include":"#regexp"}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin.hx"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.hx"},"2":{"name":"keyword.other.hx"}}},"regex-character-class":{"patterns":[{"name":"constant.other.character-class.regexp","match":"\\\\[wWsSdDtrnvf]|\\."},{"name":"constant.character.numeric.regexp","match":"\\\\([0-7]{3}|x[[:xdigit:]][[:xdigit:]]|u[[:xdigit:]][[:xdigit:]][[:xdigit:]][[:xdigit:]])"},{"name":"constant.character.control.regexp","match":"\\\\c[A-Z]"},{"name":"constant.character.escape.backslash.regexp","match":"\\\\."}]},"regexp":{"patterns":[{"name":"keyword.control.anchor.regexp","match":"\\\\[bB]|\\^|\\$"},{"name":"keyword.other.back-reference.regexp","match":"\\\\[1-9]\\d*"},{"name":"keyword.operator.quantifier.regexp","match":"[?+*]|\\{(\\d+,\\d+|\\d+,|,\\d+|\\d+)\\}\\??"},{"name":"keyword.operator.or.regexp","match":"\\|"},{"name":"meta.group.assertion.regexp","begin":"(\\()((\\?=)|(\\?!))","end":"(\\))","patterns":[{"include":"#regexp"}],"beginCaptures":{"1":{"name":"punctuation.definition.group.regexp"},"2":{"name":"punctuation.definition.group.assertion.regexp"},"3":{"name":"meta.assertion.look-ahead.regexp"},"4":{"name":"meta.assertion.negative-look-ahead.regexp"}},"endCaptures":{"1":{"name":"punctuation.definition.group.regexp"}}},{"name":"meta.group.regexp","begin":"\\((\\?:)?","end":"\\)","patterns":[{"include":"#regexp"}],"beginCaptures":{"0":{"name":"punctuation.definition.group.regexp"},"1":{"name":"punctuation.definition.group.capture.regexp"}},"endCaptures":{"0":{"name":"punctuation.definition.group.regexp"}}},{"name":"constant.other.character-class.set.regexp","begin":"(\\[)(\\^)?","end":"(\\])","patterns":[{"name":"constant.other.character-class.range.regexp","match":"(?:.|(\\\\(?:[0-7]{3}|x[[:xdigit:]][[:xdigit:]]|u[[:xdigit:]][[:xdigit:]][[:xdigit:]][[:xdigit:]]))|(\\\\c[A-Z])|(\\\\.))\\-(?:[^\\]\\\\]|(\\\\(?:[0-7]{3}|x[[:xdigit:]][[:xdigit:]]|u[[:xdigit:]][[:xdigit:]][[:xdigit:]][[:xdigit:]]))|(\\\\c[A-Z])|(\\\\.))","captures":{"1":{"name":"constant.character.numeric.regexp"},"2":{"name":"constant.character.control.regexp"},"3":{"name":"constant.character.escape.backslash.regexp"},"4":{"name":"constant.character.numeric.regexp"},"5":{"name":"constant.character.control.regexp"},"6":{"name":"constant.character.escape.backslash.regexp"}}},{"include":"#regex-character-class"}],"beginCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"},"2":{"name":"keyword.operator.negation.regexp"}},"endCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"}}},{"include":"#regex-character-class"}]},"string-escape-sequences":{"patterns":[{"name":"constant.character.escape.hx","match":"\\\\[0-3][0-9]{2}"},{"name":"constant.character.escape.hx","match":"\\\\x[0-9A-Fa-f]{2}"},{"name":"constant.character.escape.hx","match":"\\\\u[0-9]{4}"},{"name":"constant.character.escape.hx","match":"\\\\u\\{[0-9A-Fa-f]{1,}\\}"},{"name":"constant.character.escape.hx","match":"\\\\[nrt\"'\\\\]"},{"name":"invalid.escape.sequence.hx","match":"\\\\."}]},"strings":{"patterns":[{"name":"string.quoted.double.hx","begin":"\"","end":"\"","patterns":[{"include":"#string-escape-sequences"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.hx"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.hx"}}},{"begin":"(')","end":"(')","patterns":[{"name":"string.quoted.single.hx","begin":"\\$(?=\\$)","end":"\\$","beginCaptures":{"0":{"name":"constant.character.escape.hx"}},"endCaptures":{"0":{"name":"constant.character.escape.hx"}}},{"include":"#string-escape-sequences"},{"begin":"(\\${)","end":"(})","patterns":[{"include":"#block-contents"}],"beginCaptures":{"0":{"name":"punctuation.definition.block.begin.hx"}},"endCaptures":{"0":{"name":"punctuation.definition.block.end.hx"}}},{"match":"(\\$)([_a-zA-Z]\\w*)","captures":{"1":{"name":"punctuation.definition.block.begin.hx"},"2":{"name":"variable.other.hx"}}},{"name":"constant.character.escape.hx"},{"name":"string.quoted.single.hx","match":"."}],"beginCaptures":{"0":{"name":"string.quoted.single.hx"},"1":{"name":"punctuation.definition.string.begin.hx"}},"endCaptures":{"0":{"name":"string.quoted.single.hx"},"1":{"name":"punctuation.definition.string.end.hx"}}}]},"type":{"patterns":[{"include":"#global"},{"include":"#macro-reification"},{"include":"#type-name"},{"include":"#type-parameters"},{"name":"keyword.operator.type.function.hx","match":"-\u003e"},{"name":"keyword.operator.type.intersection.hx","match":"\u0026"},{"name":"keyword.operator.optional","match":"\\?(?=\\s*[_A-Z])"},{"name":"punctuation.definition.tag","match":"\\?(?!\\s*[_A-Z])"},{"begin":"(\\{)","end":"(?\u003c=\\})","patterns":[{"include":"#typedef-block"}],"beginCaptures":{"0":{"name":"punctuation.definition.block.begin.hx"}}},{"include":"#function-type"}]},"type-check":{"begin":"(?\u003c!macro)(?=:)","end":"(?=\\))","patterns":[{"include":"#operator-type-hint"},{"include":"#type"}]},"type-name":{"patterns":[{"match":"\\b(Any|Array|ArrayAccess|Bool|Class|Date|DateTools|Dynamic|Enum|EnumValue|EReg|Float|IMap|Int|IntIterator|Iterable|Iterator|KeyValueIterator|KeyValueIterable|Lambda|List|ListIterator|ListNode|Map|Math|Null|Reflect|Single|Std|String|StringBuf|StringTools|Sys|Type|UInt|UnicodeString|ValueType|Void|Xml|XmlType)(?:(\\.)(_*[A-Z]\\w*[a-z]\\w*))*\\b","captures":{"1":{"name":"support.class.builtin.hx"},"2":{"name":"support.package.hx"},"3":{"name":"entity.name.type.hx"}}},{"match":"\\b(?\u003c![^.]\\.)((_*[a-z]\\w*\\.)*)(_*[A-Z]\\w*)(?:(\\.)(_*[A-Z]\\w*[a-z]\\w*))*\\b","captures":{"1":{"name":"support.package.hx"},"3":{"name":"entity.name.type.hx"},"4":{"name":"support.package.hx"},"5":{"name":"entity.name.type.hx"}}}]},"type-parameter-constraint-new":{"name":"keyword.operator.type.annotation.hxt","match":":"},"type-parameter-constraint-old":{"begin":"(:)\\s*(\\()","end":"\\)","patterns":[{"include":"#type"},{"include":"#punctuation-comma"}],"beginCaptures":{"1":{"name":"keyword.operator.type.annotation.hx"},"2":{"name":"punctuation.definition.constraint.begin.hx"}},"endCaptures":{"0":{"name":"punctuation.definition.constraint.end.hx"}}},"type-parameters":{"name":"meta.type-parameters.hx","begin":"(\u003c)","end":"(?=$)|(\u003e)","patterns":[{"include":"#type"},{"include":"#type-parameter-constraint-old"},{"include":"#type-parameter-constraint-new"},{"include":"#global"},{"include":"#regex"},{"include":"#array"},{"include":"#constants"},{"include":"#strings"},{"include":"#metadata"},{"include":"#punctuation-comma"}],"beginCaptures":{"1":{"name":"punctuation.definition.typeparameters.begin.hx"}},"endCaptures":{"1":{"name":"punctuation.definition.typeparameters.end.hx"}}},"type-path":{"patterns":[{"include":"#global"},{"include":"#punctuation-accessor"},{"include":"#type-path-type-name"}]},"type-path-package-name":{"name":"support.package.hx","match":"\\b([_A-Za-z]\\w*)\\b"},"type-path-type-name":{"name":"entity.name.type.hx","match":"\\b(_*[A-Z]\\w*)\\b"},"typedef":{"name":"meta.typedef.hx","begin":"(?=typedef)","end":"(?\u003c=\\})|(;)","patterns":[{"include":"#typedef-name"},{"include":"#typedef-name-post"},{"include":"#typedef-block"}],"endCaptures":{"1":{"name":"punctuation.terminator.hx"}}},"typedef-block":{"name":"meta.block.hx","begin":"(?\u003c=\\{)","end":"(\\})","patterns":[{"include":"#global"},{"include":"#metadata"},{"include":"#method"},{"include":"#variable"},{"include":"#modifiers"},{"include":"#punctuation-comma"},{"include":"#operator-optional"},{"include":"#typedef-extension"},{"include":"#typedef-simple-field-type-hint"},{"include":"#identifier-name"},{"include":"#strings"}],"endCaptures":{"1":{"name":"punctuation.definition.block.end.hx"}}},"typedef-extension":{"begin":"\u003e","end":",|$","patterns":[{"include":"#type"}]},"typedef-name":{"begin":"\\b(typedef)\\b","end":"([_A-Za-z]\\w*)","patterns":[{"include":"#global"}],"beginCaptures":{"1":{"name":"storage.type.class.hx"}},"endCaptures":{"1":{"name":"entity.name.type.class.hx"}}},"typedef-name-post":{"begin":"(?\u003c=\\w)","end":"(\\{)|(?=;)","patterns":[{"include":"#global"},{"include":"#punctuation-brackets"},{"include":"#punctuation-separator"},{"include":"#operator-assignment"},{"include":"#type"}],"endCaptures":{"1":{"name":"punctuation.definition.block.begin.hx"}}},"typedef-simple-field-type-hint":{"begin":":","end":"(?=\\}|,|;)","patterns":[{"include":"#type"}],"beginCaptures":{"0":{"name":"keyword.operator.type.annotation.hx"}}},"using":{"begin":"using\\b","end":"$|(;)","patterns":[{"include":"#type-path"},{"include":"#type-path-package-name"}],"beginCaptures":{"0":{"name":"keyword.other.using.hx"}},"endCaptures":{"1":{"name":"punctuation.terminator.hx"}}},"variable":{"begin":"(?=\\b(var|final)\\b)","end":"(?=$)|(;)","patterns":[{"include":"#variable-name"},{"include":"#variable-name-next"},{"include":"#variable-assign"},{"include":"#variable-name-post"}],"endCaptures":{"1":{"name":"punctuation.terminator.hx"}}},"variable-accessors":{"name":"meta.parameters.hx","begin":"\\(","end":"\\)","patterns":[{"include":"#global"},{"include":"#keywords-accessor"},{"include":"#accessor-method"},{"include":"#punctuation-comma"}],"beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.hx"}},"endCaptures":{"0":{"name":"punctuation.definition.parameters.end.hx"}}},"variable-assign":{"begin":"=","end":"(?=;|,)","patterns":[{"include":"#block"},{"include":"#block-contents"}],"beginCaptures":{"0":{"name":"keyword.operator.assignment.hx"}}},"variable-name":{"begin":"\\b(var|final)\\b","end":"(?=$)|([_a-zA-Z]\\w*)","patterns":[{"include":"#operator-optional"}],"beginCaptures":{"1":{"name":"storage.type.variable.hx"}},"endCaptures":{"1":{"name":"variable.other.hx"}}},"variable-name-next":{"begin":",","end":"([_a-zA-Z]\\w*)","patterns":[{"include":"#global"}],"beginCaptures":{"0":{"name":"punctuation.separator.comma.hx"}},"endCaptures":{"1":{"name":"variable.other.hx"}}},"variable-name-post":{"begin":"(?\u003c=\\w)","end":"(?=;)|(?==)","patterns":[{"include":"#variable-accessors"},{"include":"#variable-type-hint"},{"include":"#block-contents"}]},"variable-type-hint":{"begin":":","end":"(?=$|;|,|=)","patterns":[{"include":"#type"}],"beginCaptures":{"0":{"name":"keyword.operator.type.annotation.hx"}}}}}
|
|
1
|
+
{"name":"Haxe","scopeName":"source.hx","patterns":[{"include":"#all"}],"repository":{"abstract":{"name":"meta.abstract.hx","begin":"(?=abstract\\s+[A-Z])","end":"(?\u003c=\\})|(;)","patterns":[{"include":"#abstract-name"},{"include":"#abstract-name-post"},{"include":"#abstract-block"}],"endCaptures":{"1":{"name":"punctuation.terminator.hx"}}},"abstract-block":{"name":"meta.block.hx","begin":"(?\u003c=\\{)","end":"(\\})","patterns":[{"include":"#method"},{"include":"#modifiers"},{"include":"#variable"},{"include":"#block"},{"include":"#block-contents"}],"endCaptures":{"1":{"name":"punctuation.definition.block.end.hx"}}},"abstract-name":{"begin":"\\b(abstract)\\b","end":"([_A-Za-z]\\w*)","patterns":[{"include":"#global"}],"beginCaptures":{"1":{"name":"storage.type.class.hx"}},"endCaptures":{"1":{"name":"entity.name.type.class.hx"}}},"abstract-name-post":{"begin":"(?\u003c=\\w)","end":"([\\{;])","patterns":[{"include":"#global"},{"begin":"\\b(from|to)\\b(?=\\s*\\{)","end":"(?\u003c=\\})","patterns":[{"include":"#type"}],"beginCaptures":{"1":{"name":"keyword.other.hx"}}},{"name":"keyword.other.hx","match":"\\b(from|to)\\b"},{"include":"#type"},{"name":"punctuation.definition.other.hx","match":"[\\(\\)]"}],"endCaptures":{"1":{"name":"punctuation.definition.block.begin.hx"}}},"accessor-method":{"patterns":[{"name":"entity.name.function.hx","match":"\\b(get|set)_[_A-Za-z]\\w*\\b"}]},"all":{"patterns":[{"include":"#global"},{"include":"#package"},{"include":"#import"},{"include":"#using"},{"name":"storage.modifier.hx","match":"\\b(final)\\b(?=\\s+(class|interface|extern|private)\\b)"},{"include":"#abstract"},{"include":"#class"},{"include":"#enum"},{"include":"#interface"},{"include":"#typedef"},{"include":"#block"},{"include":"#block-contents"}]},"array":{"name":"meta.array.literal.hx","begin":"\\[","end":"\\]","patterns":[{"include":"#block"},{"include":"#block-contents"}],"beginCaptures":{"0":{"name":"punctuation.definition.array.begin.hx"}},"endCaptures":{"0":{"name":"punctuation.definition.array.end.hx"}}},"arrow-function":{"name":"meta.method.arrow.hx","begin":"(\\()(?=[^(]*?\\)\\s*-\u003e)","end":"(\\))\\s*(-\u003e)","patterns":[{"include":"#arrow-function-parameter"}],"beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.hx"}},"endCaptures":{"1":{"name":"punctuation.definition.parameters.end.hx"},"2":{"name":"storage.type.function.arrow.hx"}}},"arrow-function-parameter":{"begin":"(?\u003c=\\(|,)","end":"(?=\\)|,)","patterns":[{"include":"#parameter-name"},{"include":"#arrow-function-parameter-type-hint"},{"include":"#parameter-assign"},{"include":"#punctuation-comma"},{"include":"#global"}]},"arrow-function-parameter-type-hint":{"begin":":","end":"(?=\\)|,|=)","patterns":[{"include":"#type"}],"beginCaptures":{"0":{"name":"keyword.operator.type.annotation.hx"}}},"block":{"begin":"\\{","end":"\\}","patterns":[{"include":"#block"},{"include":"#block-contents"}],"beginCaptures":{"0":{"name":"punctuation.definition.block.begin.hx"}},"endCaptures":{"0":{"name":"punctuation.definition.block.end.hx"}}},"block-contents":{"patterns":[{"include":"#global"},{"include":"#regex"},{"include":"#array"},{"include":"#constants"},{"include":"#strings"},{"include":"#metadata"},{"include":"#method"},{"include":"#variable"},{"include":"#modifiers"},{"include":"#new-expr"},{"include":"#for-loop"},{"include":"#keywords"},{"include":"#arrow-function"},{"include":"#method-call"},{"include":"#enum-constructor-call"},{"include":"#punctuation-braces"},{"include":"#macro-reification"},{"include":"#operators"},{"include":"#operator-assignment"},{"include":"#punctuation-terminator"},{"include":"#punctuation-comma"},{"include":"#punctuation-accessor"},{"include":"#identifiers"},{"include":"#method-return-type-hint"}]},"case-object-pattern":{"begin":"\\{","end":"\\}","patterns":[{"include":"#global"},{"include":"#case-object-pattern"},{"include":"#array"},{"include":"#constants"},{"include":"#strings"},{"include":"#macro-reification"},{"include":"#punctuation-comma"},{"include":"#identifiers"}],"beginCaptures":{"0":{"name":"meta.brace.curly.hx"}},"endCaptures":{"0":{"name":"meta.brace.curly.hx"}}},"class":{"name":"meta.class.hx","begin":"(?=class)","end":"(?\u003c=\\})|(;)","patterns":[{"include":"#class-name"},{"include":"#class-name-post"},{"include":"#class-block"}],"endCaptures":{"1":{"name":"punctuation.terminator.hx"}}},"class-block":{"name":"meta.block.hx","begin":"(?\u003c=\\{)","end":"(\\})","patterns":[{"include":"#method"},{"include":"#modifiers"},{"include":"#variable"},{"include":"#block"},{"include":"#block-contents"}],"endCaptures":{"1":{"name":"punctuation.definition.block.end.hx"}}},"class-name":{"name":"meta.class.identifier.hx","begin":"\\b(class)\\b","end":"([_A-Za-z]\\w*)","patterns":[{"include":"#global"}],"beginCaptures":{"1":{"name":"storage.type.class.hx"}},"endCaptures":{"1":{"name":"entity.name.type.class.hx"}}},"class-name-post":{"begin":"(?\u003c=\\w)","end":"([\\{;])","patterns":[{"include":"#modifiers-inheritance"},{"include":"#type"}],"endCaptures":{"1":{"name":"punctuation.definition.block.begin.hx"}}},"comments":{"patterns":[{"name":"comment.block.documentation.hx","begin":"/\\*\\*(?!/)","end":"\\*/","patterns":[{"include":"#javadoc-tags"}],"beginCaptures":{"0":{"name":"punctuation.definition.comment.hx"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.hx"}}},{"name":"comment.block.hx","begin":"/\\*","end":"\\*/","patterns":[{"include":"#javadoc-tags"}],"beginCaptures":{"0":{"name":"punctuation.definition.comment.hx"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.hx"}}},{"name":"comment.line.double-slash.hx","match":"(//).*$\\n?","captures":{"1":{"name":"punctuation.definition.comment.hx"}}}]},"conditional-compilation":{"patterns":[{"match":"((#(if|elseif))[\\s!]+([a-zA-Z_][a-zA-Z0-9_]*(\\.[a-zA-Z_][a-zA-Z0-9_]*)*)(?=\\s|/\\*|//))","captures":{"0":{"name":"punctuation.definition.tag"}}},{"name":"punctuation.definition.tag","begin":"((#(if|elseif))[\\s!]*)(?=\\()","end":"(?\u003c=\\)|\\n)","patterns":[{"include":"#conditional-compilation-parens"}],"beginCaptures":{"0":{"name":"punctuation.definition.tag"}},"endCaptures":{"0":{"name":"punctuation.definition.tag"}}},{"name":"punctuation.definition.tag","match":"(#(end|else|error|line))"},{"name":"punctuation.definition.tag","match":"(#([a-zA-Z0-9_]*))\\s"}]},"conditional-compilation-parens":{"begin":"\\(","end":"\\)","patterns":[{"include":"#conditional-compilation-parens"}]},"constant-name":{"name":"variable.other.hx","match":"\\b([_A-Z][_A-Z0-9]*)\\b"},"constants":{"patterns":[{"name":"constant.language.hx","match":"\\b(true|false|null)\\b"},{"match":"\\b(?:0[xX][0-9a-fA-F][_0-9a-fA-F]*([iu][0-9][0-9_]*)?)\\b","captures":{"0":{"name":"constant.numeric.hex.hx"},"1":{"name":"constant.numeric.suffix.hx"}}},{"match":"\\b(?:0[bB][01][_01]*([iu][0-9][0-9_]*)?)\\b","captures":{"0":{"name":"constant.numeric.bin.hx"},"1":{"name":"constant.numeric.suffix.hx"}}},{"match":"(?x)\n(?\u003c!\\$)(?:\n (?:\\b[0-9][0-9_]*(\\.)[0-9_]+[eE][+-]?[0-9_]+([fiu][0-9][0-9_]*)?\\b)| # 1.1E+3f64\n (?:\\b[0-9][0-9_]*(\\.)[eE][+-]?[0-9_]+([fiu][0-9][0-9_]*)?\\b)| # 1.E+3f64\n (?:\\B(\\.)[0-9][0-9_]*[eE][+-]?[0-9_]+([fiu][0-9][0-9_]*)?\\b)| # .1E+3f64\n (?:\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*([fiu][0-9][0-9_]*)?\\b)| # 1E+3f64\n (?:\\b[0-9][0-9_]*(\\.)[0-9_]+([fiu][0-9][0-9_]*)?\\b)| # 1.1f64\n (?:\\b[0-9][0-9_]*(\\.)(?!\\.)(?:\\B|([fiu][0-9][0-9_]*)\\b))| # 1.f64\n (?:\\B(\\.)[0-9][0-9_]*([fiu][0-9][0-9_]*)?\\b)| # .1f64\n (?:\\b[0-9][0-9_]*([fiu][0-9][0-9_]*)?\\b) # 1u64\n)(?!\\$)","captures":{"0":{"name":"constant.numeric.decimal.hx"},"1":{"name":"meta.delimiter.decimal.period.hx"},"10":{"name":"meta.delimiter.decimal.period.hx"},"11":{"name":"constant.numeric.suffix.hx"},"12":{"name":"meta.delimiter.decimal.period.hx"},"13":{"name":"constant.numeric.suffix.hx"},"14":{"name":"constant.numeric.suffix.hx"},"2":{"name":"constant.numeric.suffix.hx"},"3":{"name":"meta.delimiter.decimal.period.hx"},"4":{"name":"constant.numeric.suffix.hx"},"5":{"name":"meta.delimiter.decimal.period.hx"},"6":{"name":"constant.numeric.suffix.hx"},"7":{"name":"constant.numeric.suffix.hx"},"8":{"name":"meta.delimiter.decimal.period.hx"},"9":{"name":"constant.numeric.suffix.hx"}}}]},"enum":{"name":"meta.enum.hx","begin":"(?=enum\\s+[A-Z])","end":"(?\u003c=\\})|(;)","patterns":[{"include":"#enum-name"},{"include":"#enum-name-post"},{"include":"#enum-block"}],"endCaptures":{"1":{"name":"punctuation.terminator.hx"}}},"enum-block":{"name":"meta.block.hx","begin":"(?\u003c=\\{)","end":"(\\})","patterns":[{"include":"#global"},{"include":"#metadata"},{"include":"#parameters"},{"include":"#identifiers"}],"endCaptures":{"1":{"name":"punctuation.definition.block.end.hx"}}},"enum-constructor-call":{"begin":"\\b(?\u003c!\\.)((_*[a-z]\\w*\\.)*)(_*[A-Z]\\w*)(?:(\\.)(_*[A-Z]\\w*[a-z]\\w*))*\\s*(\\()","end":"(\\))","patterns":[{"include":"#block"},{"include":"#block-contents"}],"beginCaptures":{"1":{"name":"support.package.hx"},"3":{"name":"entity.name.type.hx"},"4":{"name":"support.package.hx"},"5":{"name":"entity.name.type.hx"},"6":{"name":"meta.brace.round.hx"}},"endCaptures":{"1":{"name":"meta.brace.round.hx"}}},"enum-name":{"begin":"\\b(enum)\\b","end":"([_A-Za-z]\\w*)","patterns":[{"include":"#global"}],"beginCaptures":{"1":{"name":"storage.type.class.hx"}},"endCaptures":{"1":{"name":"entity.name.type.class.hx"}}},"enum-name-post":{"begin":"(?\u003c=\\w)","end":"([\\{;])","patterns":[{"include":"#type"}],"endCaptures":{"1":{"name":"punctuation.definition.block.begin.hx"}}},"for-loop":{"begin":"\\b(for)\\b\\s*(\\()","end":"(\\))","patterns":[{"name":"keyword.other.in.hx","match":"\\b(in)\\b"},{"include":"#block"},{"include":"#block-contents"}],"beginCaptures":{"1":{"name":"keyword.control.flow-control.hx"},"2":{"name":"meta.brace.round.hx"}},"endCaptures":{"1":{"name":"meta.brace.round.hx"}}},"function-type":{"begin":"\\(","end":"\\)","patterns":[{"include":"#function-type-parameter"}],"beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.hx"}},"endCaptures":{"0":{"name":"punctuation.definition.parameters.end.hx"}}},"function-type-parameter":{"begin":"(?\u003c=\\(|,)","end":"(?=\\)|,)","patterns":[{"include":"#global"},{"include":"#metadata"},{"include":"#operator-optional"},{"include":"#punctuation-comma"},{"include":"#function-type-parameter-name"},{"include":"#function-type-parameter-type-hint"},{"include":"#parameter-assign"},{"include":"#type"},{"include":"#global"}]},"function-type-parameter-name":{"match":"([_a-zA-Z]\\w*)(?=\\s*:)","captures":{"1":{"name":"variable.parameter.hx"}}},"function-type-parameter-type-hint":{"begin":":","end":"(?=\\)|,|=)","patterns":[{"include":"#type"}],"beginCaptures":{"0":{"name":"keyword.operator.type.annotation.hx"}}},"global":{"patterns":[{"include":"#comments"},{"include":"#conditional-compilation"}]},"identifier-name":{"name":"variable.other.hx","match":"\\b([_A-Za-z]\\w*)\\b"},"identifiers":{"patterns":[{"include":"#constant-name"},{"include":"#type-name"},{"include":"#identifier-name"}]},"import":{"begin":"import\\b","end":"$|(;)","patterns":[{"include":"#type-path"},{"name":"keyword.control.as.hx","match":"\\b(as)\\b"},{"name":"keyword.control.in.hx","match":"\\b(in)\\b"},{"name":"constant.language.import-all.hx","match":"\\*"},{"name":"variable.other.hxt","match":"\\b([_A-Za-z]\\w*)\\b(?=\\s*(as|in|$|(;)))"},{"include":"#type-path-package-name"}],"beginCaptures":{"0":{"name":"keyword.control.import.hx"}},"endCaptures":{"1":{"name":"punctuation.terminator.hx"}}},"interface":{"name":"meta.interface.hx","begin":"(?=interface)","end":"(?\u003c=\\})|(;)","patterns":[{"include":"#interface-name"},{"include":"#interface-name-post"},{"include":"#interface-block"}],"endCaptures":{"1":{"name":"punctuation.terminator.hx"}}},"interface-block":{"name":"meta.block.hx","begin":"(?\u003c=\\{)","end":"(\\})","patterns":[{"include":"#method"},{"include":"#variable"},{"include":"#block"},{"include":"#block-contents"}],"endCaptures":{"1":{"name":"punctuation.definition.block.end.hx"}}},"interface-name":{"begin":"\\b(interface)\\b","end":"([_A-Za-z]\\w*)","patterns":[{"include":"#global"}],"beginCaptures":{"1":{"name":"storage.type.class.hx"}},"endCaptures":{"1":{"name":"entity.name.type.class.hx"}}},"interface-name-post":{"begin":"(?\u003c=\\w)","end":"([\\{;])","patterns":[{"include":"#global"},{"include":"#modifiers-inheritance"},{"include":"#type"}],"endCaptures":{"1":{"name":"punctuation.definition.block.begin.hx"}}},"javadoc-tags":{"patterns":[{"match":"(@(?:param|exception|throws|event))\\s+([_A-Za-z]\\w*)\\s+","captures":{"1":{"name":"storage.type.class.javadoc"},"2":{"name":"variable.other.javadoc"}}},{"match":"(@since)\\s+([\\w\\.-]+)\\s+","captures":{"1":{"name":"storage.type.class.javadoc"},"2":{"name":"constant.numeric.javadoc"}}},{"match":"@(param|exception|throws|deprecated|returns?|since|default|see|event)","captures":{"0":{"name":"storage.type.class.javadoc"}}}]},"keywords":{"patterns":[{"begin":"(?\u003c=trace|$type|if|while|for|super)\\s*(\\()","end":"\\)","patterns":[{"include":"#block-contents"}],"beginCaptures":{"1":{"name":"meta.brace.round.hx"}},"endCaptures":{"0":{"name":"meta.brace.round.hx"}}},{"begin":"(?\u003c=catch)\\s*(\\()","end":"\\)","patterns":[{"include":"#block-contents"},{"include":"#type-check"}],"beginCaptures":{"1":{"name":"meta.brace.round.hx"}},"endCaptures":{"0":{"name":"meta.brace.round.hx"}}},{"begin":"(?\u003c=cast)\\s*(\\()","end":"\\)","patterns":[{"begin":"(?=,)","end":"(?=\\))","patterns":[{"include":"#type"}]},{"include":"#block-contents"}],"beginCaptures":{"1":{"name":"meta.brace.round.hx"}},"endCaptures":{"0":{"name":"meta.brace.round.hx"}}},{"name":"keyword.control.catch-exception.hx","match":"\\b(try|catch|throw)\\b"},{"begin":"\\b(case|default)\\b","end":":|(?=if)|$","patterns":[{"include":"#global"},{"include":"#case-object-pattern"},{"include":"#metadata"},{"match":"\\b(var|final)\\b\\s*([_a-zA-Z]\\w*)\\b","captures":{"1":{"name":"storage.type.variable.hx"},"2":{"name":"variable.other.hx"}}},{"include":"#array"},{"include":"#constants"},{"include":"#strings"},{"name":"meta.brace.round.hx","match":"\\("},{"name":"meta.brace.round.hx","match":"\\)"},{"include":"#macro-reification"},{"name":"keyword.operator.extractor.hx","match":"=\u003e"},{"include":"#operator-assignment"},{"include":"#punctuation-comma"},{"include":"#keywords"},{"include":"#method-call"},{"include":"#identifiers"}],"beginCaptures":{"1":{"name":"keyword.control.flow-control.hx"}}},{"name":"keyword.control.flow-control.hx","match":"\\b(if|else|return|do|while|for|break|continue|switch|case|default)\\b"},{"name":"keyword.other.untyped.hx","match":"\\b(cast|untyped)\\b"},{"name":"keyword.other.trace.hx","match":"\\btrace\\b"},{"name":"keyword.other.type.hx","match":"\\$type\\b"},{"name":"keyword.other.untyped-property.hx","match":"\\__(global|this)__\\b"},{"name":"variable.language.hx","match":"\\b(this|super)\\b"},{"name":"keyword.operator.new.hx","match":"\\bnew\\b"},{"name":"storage.type.hx","match":"\\b(abstract|class|enum|interface|typedef)\\b"},{"name":"storage.type.function.arrow.hx","match":"-\u003e"},{"include":"#modifiers"},{"include":"#modifiers-inheritance"}]},"keywords-accessor":{"name":"storage.type.property.hx","match":"\\b(private|default|get|set|dynamic|never|null)\\b"},"macro-reification":{"patterns":[{"match":"(\\$)([eabipv])\\{","captures":{"1":{"name":"punctuation.definition.reification.hx"},"2":{"name":"keyword.reification.hx"}}},{"match":"((\\$)([a-zA-Z]*))","captures":{"2":{"name":"punctuation.definition.reification.hx"},"3":{"name":"variable.reification.hx"}}}]},"metadata":{"patterns":[{"begin":"(@)(:(abi|abstract|access|allow|analyzer|annotation|arrayAccess|astSource|autoBuild|bind|bitmap|bridgeProperties|build|buildXml|bypassAccessor|callable|classCode|commutative|compilerGenerated|const|coreApi|coreType|cppFileCode|cppInclude|cppNamespaceCode|cs.assemblyMeta|cs.assemblyStrict|cs.using|dce|debug|decl|delegate|depend|deprecated|eager|enum|event|expose|extern|file|fileXml|final|fixed|flash.property|font|forward.new|forward.variance|forward|forwardStatics|from|functionCode|functionTailCode|generic|genericBuild|genericClassPerMethod|getter|hack|headerClassCode|headerCode|headerInclude|headerNamespaceCode|hlNative|hxGen|ifFeature|include|inheritDoc|inline|internal|isVar|java.native|javaCanonical|jsRequire|jvm.synthetic|keep|keepInit|keepSub|luaDotMethod|luaRequire|macro|markup|mergeBlock|multiReturn|multiType|native|nativeChildren|nativeGen|nativeProperty|nativeStaticExtension|noClosure|noCompletion|noDebug|noDoc|noImportGlobal|noPrivateAccess|noStack|noUsing|nonVirtual|notNull|nullSafety|objc|objcProtocol|op|optional|overload|persistent|phpClassConst|phpGlobal|phpMagic|phpNoConstructor|pos|private|privateAccess|property|protected|publicFields|pure|pythonImport|readOnly|remove|require|resolve|rtti|runtimeValue|scalar|selfCall|semantics|setter|sound|sourceFile|stackOnly|strict|struct|structAccess|structInit|suppressWarnings|templatedCall|throws|to|transient|transitive|unifyMinDynamic|unreflective|unsafe|using|void|volatile)\\b)\\s*(\\()","end":"\\)","patterns":[{"include":"#block-contents"}],"beginCaptures":{"1":{"name":"punctuation.metadata.hx"},"2":{"name":"storage.modifier.metadata.hx"},"3":{"name":"meta.brace.round.hx"}},"endCaptures":{"0":{"name":"meta.brace.round.hx"}}},{"match":"((@)(:(abi|abstract|access|allow|analyzer|annotation|arrayAccess|astSource|autoBuild|bind|bitmap|bridgeProperties|build|buildXml|bypassAccessor|callable|classCode|commutative|compilerGenerated|const|coreApi|coreType|cppFileCode|cppInclude|cppNamespaceCode|cs.assemblyMeta|cs.assemblyStrict|cs.using|dce|debug|decl|delegate|depend|deprecated|eager|enum|event|expose|extern|file|fileXml|final|fixed|flash.property|font|forward.new|forward.variance|forward|forwardStatics|from|functionCode|functionTailCode|generic|genericBuild|genericClassPerMethod|getter|hack|headerClassCode|headerCode|headerInclude|headerNamespaceCode|hlNative|hxGen|ifFeature|include|inheritDoc|inline|internal|isVar|java.native|javaCanonical|jsRequire|jvm.synthetic|keep|keepInit|keepSub|luaDotMethod|luaRequire|macro|markup|mergeBlock|multiReturn|multiType|native|nativeChildren|nativeGen|nativeProperty|nativeStaticExtension|noClosure|noCompletion|noDebug|noDoc|noImportGlobal|noPrivateAccess|noStack|noUsing|nonVirtual|notNull|nullSafety|objc|objcProtocol|op|optional|overload|persistent|phpClassConst|phpGlobal|phpMagic|phpNoConstructor|pos|private|privateAccess|property|protected|publicFields|pure|pythonImport|readOnly|remove|require|resolve|rtti|runtimeValue|scalar|selfCall|semantics|setter|sound|sourceFile|stackOnly|strict|struct|structAccess|structInit|suppressWarnings|templatedCall|throws|to|transient|transitive|unifyMinDynamic|unreflective|unsafe|using|void|volatile)\\b))","captures":{"2":{"name":"punctuation.metadata.hx"},"3":{"name":"storage.modifier.metadata.hx"}}},{"begin":"(@)(:?[a-zA-Z_]*)\\s*(\\()","end":"\\)","patterns":[{"include":"#block-contents"}],"beginCaptures":{"1":{"name":"punctuation.metadata.hx"},"2":{"name":"variable.metadata.hx"},"3":{"name":"meta.brace.round.hx"}},"endCaptures":{"0":{"name":"meta.brace.round.hx"}}},{"match":"(@)(:?)([a-zA-Z_]*(\\.))*([a-zA-Z_]*)?","captures":{"1":{"name":"punctuation.metadata.hx"},"2":{"name":"variable.metadata.hx"},"3":{"name":"variable.metadata.hx"},"4":{"name":"punctuation.accessor.hx"},"5":{"name":"variable.metadata.hx"}}}]},"method":{"name":"meta.method.hx","begin":"(?=\\bfunction\\b)","end":"(?\u003c=\\})|(?=\\s*[^\\s{])","patterns":[{"include":"#macro-reification"},{"include":"#method-name"},{"include":"#parameters"},{"include":"#method-return"},{"match":"(\\{)","captures":{"1":{"name":"punctuation.definition.block.begin.hx"}}},{"include":"#method-block"}],"applyEndPatternLast":true},"method-block":{"name":"meta.method.block.hx","begin":"(?\u003c=\\{)","end":"(\\})","patterns":[{"include":"#block"},{"include":"#block-contents"}],"beginCaptures":{"1":{"name":"punctuation.definition.block.begin.hx"}},"endCaptures":{"1":{"name":"punctuation.definition.block.end.hx"}}},"method-call":{"begin":"\\b(?:(__(?:addressOf|as|call|checked|cpp|cs|define_feature|delete|feature|field|fixed|foreach|forin|has_next|hkeys|in|int|is|java|js|keys|lock|lua|lua_table|new|php|physeq|prefix|ptr|resources|rethrow|set|setfield|sizeof|type|typeof|unprotect|unsafe|valueOf|var|vector|vmem_get|vmem_set|vmem_sign|instanceof|strict_eq|strict_neq)__)|([_a-z]\\w*))\\s*(\\()","end":"(\\))","patterns":[{"include":"#block"},{"include":"#block-contents"}],"beginCaptures":{"1":{"name":"keyword.other.untyped-function.hx"},"2":{"name":"entity.name.function.hx"},"3":{"name":"meta.brace.round.hx"}},"endCaptures":{"1":{"name":"meta.brace.round.hx"}}},"method-name":{"begin":"\\b(function)\\b\\s*\\b(?:(new)|([_A-Za-z]\\w*))?\\b","end":"(?=$|\\()","patterns":[{"include":"#macro-reification"},{"include":"#type-parameters"}],"beginCaptures":{"1":{"name":"storage.type.function.hx"},"2":{"name":"storage.type.hx"},"3":{"name":"entity.name.function.hx"}}},"method-return":{"begin":"(?\u003c=\\))\\s*(:)","end":"(?=\\{|;)|(?\u003c=\\s)(?=[a-z0-9]\\w*\\b(?!\\s*\\.))","patterns":[{"include":"#type"}],"beginCaptures":{"1":{"name":"keyword.operator.type.annotation.hx"}}},"method-return-type-hint":{"end":"(?=\\{|;)|(?\u003c=\\s)(?=[a-z0-9]\\w*\\b(?!\\s*\\.))","patterns":[{"include":"#type"}],"beginCaptures":{"1":{"name":"keyword.operator.type.annotation.hx"}}},"modifiers":{"patterns":[{"name":"storage.type.class","match":"\\b(enum)\\b"},{"name":"storage.modifier.hx","match":"\\b(public|private|static|dynamic|inline|macro|extern|override|overload|abstract)\\b"},{"name":"storage.modifier.hx","match":"\\b(final)\\b(?=\\s+(public|private|static|dynamic|inline|macro|extern|override|overload|abstract|function))"}]},"modifiers-inheritance":{"name":"storage.modifier.hx","match":"\\b(implements|extends)\\b"},"new-expr":{"name":"new.expr.hx","begin":"(?\u003c!\\.)\\b(new)\\b","end":"(?=$|\\()","patterns":[{"include":"#type"}],"beginCaptures":{"1":{"name":"keyword.operator.new.hx"}}},"operator-assignment":{"name":"keyword.operator.assignment.hx","match":"(=)"},"operator-optional":{"name":"keyword.operator.optional.hx","match":"(\\?)(?!\\s)"},"operator-rest":{"name":"keyword.operator.rest.hx","match":"\\.\\.\\."},"operator-type-hint":{"name":"keyword.operator.type.annotation.hx","match":"(:)"},"operators":{"patterns":[{"name":"keyword.operator.logical.hx","match":"(\u0026\u0026|\\|\\|)"},{"name":"keyword.operator.bitwise.hx","match":"(~|\u0026|\\||\\^|\u003e\u003e\u003e|\u003c\u003c|\u003e\u003e)"},{"name":"keyword.operator.comparison.hx","match":"(==|!=|\u003c=|\u003e=|\u003c|\u003e)"},{"name":"keyword.operator.logical.hx","match":"(!)"},{"name":"keyword.operator.increment-decrement.hx","match":"(\\-\\-|\\+\\+)"},{"name":"keyword.operator.arithmetic.hx","match":"(\\-|\\+|\\*|\\/|%)"},{"name":"keyword.operator.intiterator.hx","match":"\\.\\.\\."},{"name":"keyword.operator.arrow.hx","match":"=\u003e"},{"name":"keyword.operator.nullcoalescing.hx","match":"\\?\\?"},{"name":"keyword.operator.safenavigation.hx","match":"\\?\\."},{"name":"keyword.other.hx","match":"\\bis\\b(?!\\()"},{"begin":"\\?","end":":","patterns":[{"include":"#block"},{"include":"#block-contents"}],"beginCaptures":{"0":{"name":"keyword.operator.ternary.hx"}},"endCaptures":{"0":{"name":"keyword.operator.ternary.hx"}}}]},"package":{"begin":"package\\b","end":"$|(;)","patterns":[{"include":"#type-path"},{"include":"#type-path-package-name"}],"beginCaptures":{"0":{"name":"keyword.other.package.hx"}},"endCaptures":{"1":{"name":"punctuation.terminator.hx"}}},"parameter":{"begin":"(?\u003c=\\(|,)","end":"(?=\\)(?!\\s*-\u003e)|,)","patterns":[{"include":"#parameter-name"},{"include":"#parameter-type-hint"},{"include":"#parameter-assign"},{"include":"#global"}]},"parameter-assign":{"begin":"=","end":"(?=\\)|,)","patterns":[{"include":"#block"},{"include":"#block-contents"}],"beginCaptures":{"0":{"name":"keyword.operator.assignment.hx"}}},"parameter-name":{"patterns":[{"match":"\\s*([_a-zA-Z]\\w*)","captures":{"1":{"name":"variable.parameter.hx"}}},{"include":"#global"},{"include":"#metadata"},{"include":"#operator-optional"},{"include":"#operator-rest"}]},"parameter-type-hint":{"begin":":","end":"(?=\\)(?!\\s*-\u003e)|,|=)","patterns":[{"include":"#type"}],"beginCaptures":{"0":{"name":"keyword.operator.type.annotation.hx"}}},"parameters":{"name":"meta.parameters.hx","begin":"\\(","end":"\\s*(\\)(?!\\s*-\u003e))","patterns":[{"include":"#parameter"},{"include":"#punctuation-comma"}],"beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.hx"}},"endCaptures":{"1":{"name":"punctuation.definition.parameters.end.hx"}}},"punctuation-accessor":{"name":"punctuation.accessor.hx","match":"\\."},"punctuation-braces":{"begin":"\\(","end":"\\)","patterns":[{"include":"#keywords"},{"include":"#block"},{"include":"#block-contents"},{"include":"#type-check"}],"beginCaptures":{"0":{"name":"meta.brace.round.hx"}},"endCaptures":{"0":{"name":"meta.brace.round.hx"}}},"punctuation-comma":{"name":"punctuation.separator.comma.hx","match":","},"punctuation-terminator":{"name":"punctuation.terminator.hx","match":";"},"regex":{"name":"string.regexp.hx","begin":"(~/)","end":"(/)([gimsu]*)","patterns":[{"include":"#regexp"}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin.hx"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.hx"},"2":{"name":"keyword.other.hx"}}},"regex-character-class":{"patterns":[{"name":"constant.other.character-class.regexp","match":"\\\\[wWsSdDtrnvf]|\\."},{"name":"constant.character.numeric.regexp","match":"\\\\([0-7]{3}|x[[:xdigit:]][[:xdigit:]]|u[[:xdigit:]][[:xdigit:]][[:xdigit:]][[:xdigit:]])"},{"name":"constant.character.control.regexp","match":"\\\\c[A-Z]"},{"name":"constant.character.escape.backslash.regexp","match":"\\\\."}]},"regexp":{"patterns":[{"name":"keyword.control.anchor.regexp","match":"\\\\[bB]|\\^|\\$"},{"name":"keyword.other.back-reference.regexp","match":"\\\\[1-9]\\d*"},{"name":"keyword.operator.quantifier.regexp","match":"[?+*]|\\{(\\d+,\\d+|\\d+,|,\\d+|\\d+)\\}\\??"},{"name":"keyword.operator.or.regexp","match":"\\|"},{"name":"meta.group.assertion.regexp","begin":"(\\()((\\?=)|(\\?!))","end":"(\\))","patterns":[{"include":"#regexp"}],"beginCaptures":{"1":{"name":"punctuation.definition.group.regexp"},"2":{"name":"punctuation.definition.group.assertion.regexp"},"3":{"name":"meta.assertion.look-ahead.regexp"},"4":{"name":"meta.assertion.negative-look-ahead.regexp"}},"endCaptures":{"1":{"name":"punctuation.definition.group.regexp"}}},{"name":"meta.group.regexp","begin":"\\((\\?:)?","end":"\\)","patterns":[{"include":"#regexp"}],"beginCaptures":{"0":{"name":"punctuation.definition.group.regexp"},"1":{"name":"punctuation.definition.group.capture.regexp"}},"endCaptures":{"0":{"name":"punctuation.definition.group.regexp"}}},{"name":"constant.other.character-class.set.regexp","begin":"(\\[)(\\^)?","end":"(\\])","patterns":[{"name":"constant.other.character-class.range.regexp","match":"(?:.|(\\\\(?:[0-7]{3}|x[[:xdigit:]][[:xdigit:]]|u[[:xdigit:]][[:xdigit:]][[:xdigit:]][[:xdigit:]]))|(\\\\c[A-Z])|(\\\\.))\\-(?:[^\\]\\\\]|(\\\\(?:[0-7]{3}|x[[:xdigit:]][[:xdigit:]]|u[[:xdigit:]][[:xdigit:]][[:xdigit:]][[:xdigit:]]))|(\\\\c[A-Z])|(\\\\.))","captures":{"1":{"name":"constant.character.numeric.regexp"},"2":{"name":"constant.character.control.regexp"},"3":{"name":"constant.character.escape.backslash.regexp"},"4":{"name":"constant.character.numeric.regexp"},"5":{"name":"constant.character.control.regexp"},"6":{"name":"constant.character.escape.backslash.regexp"}}},{"include":"#regex-character-class"}],"beginCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"},"2":{"name":"keyword.operator.negation.regexp"}},"endCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"}}},{"include":"#regex-character-class"}]},"string-escape-sequences":{"patterns":[{"name":"constant.character.escape.hx","match":"\\\\[0-3][0-9]{2}"},{"name":"constant.character.escape.hx","match":"\\\\x[0-9A-Fa-f]{2}"},{"name":"constant.character.escape.hx","match":"\\\\u[0-9]{4}"},{"name":"constant.character.escape.hx","match":"\\\\u\\{[0-9A-Fa-f]{1,}\\}"},{"name":"constant.character.escape.hx","match":"\\\\[nrt\"'\\\\]"},{"name":"invalid.escape.sequence.hx","match":"\\\\."}]},"strings":{"patterns":[{"name":"string.quoted.double.hx","begin":"\"","end":"\"","patterns":[{"include":"#string-escape-sequences"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.hx"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.hx"}}},{"begin":"(')","end":"(')","patterns":[{"name":"string.quoted.single.hx","begin":"\\$(?=\\$)","end":"\\$","beginCaptures":{"0":{"name":"constant.character.escape.hx"}},"endCaptures":{"0":{"name":"constant.character.escape.hx"}}},{"include":"#string-escape-sequences"},{"begin":"(\\${)","end":"(})","patterns":[{"include":"#block"},{"include":"#block-contents"}],"beginCaptures":{"0":{"name":"punctuation.definition.block.begin.hx"}},"endCaptures":{"0":{"name":"punctuation.definition.block.end.hx"}}},{"match":"(\\$)([_a-zA-Z]\\w*)","captures":{"1":{"name":"punctuation.definition.block.begin.hx"},"2":{"name":"variable.other.hx"}}},{"name":"constant.character.escape.hx"},{"name":"string.quoted.single.hx","match":"."}],"beginCaptures":{"0":{"name":"string.quoted.single.hx"},"1":{"name":"punctuation.definition.string.begin.hx"}},"endCaptures":{"0":{"name":"string.quoted.single.hx"},"1":{"name":"punctuation.definition.string.end.hx"}}}]},"type":{"patterns":[{"include":"#global"},{"include":"#macro-reification"},{"include":"#type-name"},{"include":"#type-parameters"},{"name":"keyword.operator.type.function.hx","match":"-\u003e"},{"name":"keyword.operator.type.intersection.hx","match":"\u0026"},{"name":"keyword.operator.optional","match":"\\?(?=\\s*[_A-Z])"},{"name":"punctuation.definition.tag","match":"\\?(?!\\s*[_A-Z])"},{"begin":"(\\{)","end":"(?\u003c=\\})","patterns":[{"include":"#typedef-block"}],"beginCaptures":{"0":{"name":"punctuation.definition.block.begin.hx"}}},{"include":"#function-type"}]},"type-check":{"begin":"(?\u003c!macro)(?=:)","end":"(?=\\)|,)","patterns":[{"include":"#operator-type-hint"},{"include":"#type"}]},"type-name":{"patterns":[{"match":"\\b(Any|Array|ArrayAccess|Bool|Class|Date|DateTools|Dynamic|Enum|EnumValue|EReg|Float|IMap|Int|IntIterator|Iterable|Iterator|KeyValueIterator|KeyValueIterable|Lambda|List|ListIterator|ListNode|Map|Math|Null|Reflect|Single|Std|String|StringBuf|StringTools|Sys|Type|UInt|UnicodeString|ValueType|Void|Xml|XmlType)(?:(\\.)(_*[A-Z]\\w*[a-z]\\w*))*\\b","captures":{"1":{"name":"support.class.builtin.hx"},"2":{"name":"support.package.hx"},"3":{"name":"entity.name.type.hx"}}},{"match":"\\b(?\u003c![^.]\\.)((_*[a-z]\\w*\\.)*)(_*[A-Z]\\w*)(?:(\\.)(_*[A-Z]\\w*[a-z]\\w*))*\\b","captures":{"1":{"name":"support.package.hx"},"3":{"name":"entity.name.type.hx"},"4":{"name":"support.package.hx"},"5":{"name":"entity.name.type.hx"}}}]},"type-parameter-constraint-new":{"name":"keyword.operator.type.annotation.hxt","match":":"},"type-parameter-constraint-old":{"begin":"(:)\\s*(\\()","end":"\\)","patterns":[{"include":"#type"},{"include":"#punctuation-comma"}],"beginCaptures":{"1":{"name":"keyword.operator.type.annotation.hx"},"2":{"name":"punctuation.definition.constraint.begin.hx"}},"endCaptures":{"0":{"name":"punctuation.definition.constraint.end.hx"}}},"type-parameters":{"name":"meta.type-parameters.hx","begin":"(\u003c)","end":"(?=$)|(\u003e)","patterns":[{"include":"#type"},{"include":"#type-parameter-constraint-old"},{"include":"#type-parameter-constraint-new"},{"include":"#global"},{"include":"#regex"},{"include":"#array"},{"include":"#constants"},{"include":"#strings"},{"include":"#metadata"},{"include":"#punctuation-comma"}],"beginCaptures":{"1":{"name":"punctuation.definition.typeparameters.begin.hx"}},"endCaptures":{"1":{"name":"punctuation.definition.typeparameters.end.hx"}}},"type-path":{"patterns":[{"include":"#global"},{"include":"#punctuation-accessor"},{"include":"#type-path-type-name"}]},"type-path-package-name":{"name":"support.package.hx","match":"\\b([_A-Za-z]\\w*)\\b"},"type-path-type-name":{"name":"entity.name.type.hx","match":"\\b(_*[A-Z]\\w*)\\b"},"typedef":{"name":"meta.typedef.hx","begin":"(?=typedef)","end":"(?\u003c=\\})|(;)","patterns":[{"include":"#typedef-name"},{"include":"#typedef-name-post"},{"include":"#typedef-block"}],"endCaptures":{"1":{"name":"punctuation.terminator.hx"}}},"typedef-block":{"name":"meta.block.hx","begin":"(?\u003c=\\{)","end":"(\\})","patterns":[{"include":"#global"},{"include":"#metadata"},{"include":"#method"},{"include":"#variable"},{"include":"#modifiers"},{"include":"#punctuation-comma"},{"include":"#punctuation-terminator"},{"include":"#operator-optional"},{"include":"#typedef-extension"},{"include":"#typedef-simple-field-type-hint"},{"include":"#identifier-name"},{"include":"#strings"}],"endCaptures":{"1":{"name":"punctuation.definition.block.end.hx"}}},"typedef-extension":{"begin":"\u003e","end":",|$","patterns":[{"include":"#type"}]},"typedef-name":{"begin":"\\b(typedef)\\b","end":"([_A-Za-z]\\w*)","patterns":[{"include":"#global"}],"beginCaptures":{"1":{"name":"storage.type.class.hx"}},"endCaptures":{"1":{"name":"entity.name.type.class.hx"}}},"typedef-name-post":{"begin":"(?\u003c=\\w)","end":"(\\{)|(?=;)","patterns":[{"include":"#global"},{"include":"#punctuation-brackets"},{"include":"#punctuation-separator"},{"include":"#operator-assignment"},{"include":"#type"}],"endCaptures":{"1":{"name":"punctuation.definition.block.begin.hx"}}},"typedef-simple-field-type-hint":{"begin":":","end":"(?=\\}|,|;)","patterns":[{"include":"#type"}],"beginCaptures":{"0":{"name":"keyword.operator.type.annotation.hx"}}},"using":{"begin":"using\\b","end":"$|(;)","patterns":[{"include":"#type-path"},{"include":"#type-path-package-name"}],"beginCaptures":{"0":{"name":"keyword.other.using.hx"}},"endCaptures":{"1":{"name":"punctuation.terminator.hx"}}},"variable":{"begin":"(?=\\b(var|final)\\b)","end":"(?=$)|(;)","patterns":[{"include":"#variable-name"},{"include":"#variable-name-next"},{"include":"#variable-assign"},{"include":"#variable-name-post"}],"endCaptures":{"1":{"name":"punctuation.terminator.hx"}}},"variable-accessors":{"name":"meta.parameters.hx","begin":"\\(","end":"\\)","patterns":[{"include":"#global"},{"include":"#keywords-accessor"},{"include":"#accessor-method"},{"include":"#punctuation-comma"}],"beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.hx"}},"endCaptures":{"0":{"name":"punctuation.definition.parameters.end.hx"}}},"variable-assign":{"begin":"=","end":"(?=;|,|$)","patterns":[{"include":"#block"},{"include":"#block-contents"}],"beginCaptures":{"0":{"name":"keyword.operator.assignment.hx"}}},"variable-name":{"begin":"\\b(var|final)\\b","end":"(?=$)|([_a-zA-Z]\\w*)","patterns":[{"include":"#operator-optional"}],"beginCaptures":{"1":{"name":"storage.type.variable.hx"}},"endCaptures":{"1":{"name":"variable.other.hx"}}},"variable-name-next":{"begin":",","end":"([_a-zA-Z]\\w*)","patterns":[{"include":"#global"}],"beginCaptures":{"0":{"name":"punctuation.separator.comma.hx"}},"endCaptures":{"1":{"name":"variable.other.hx"}}},"variable-name-post":{"begin":"(?\u003c=\\w)","end":"(?=;)|(?==)","patterns":[{"include":"#variable-accessors"},{"include":"#variable-type-hint"},{"include":"#block-contents"}]},"variable-type-hint":{"begin":":","end":"(?=$|;|,|=)","patterns":[{"include":"#type"}],"beginCaptures":{"0":{"name":"keyword.operator.type.annotation.hx"}}}}}
|
data/grammars/source.hxml.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"Hxml","scopeName":"source.hxml","patterns":[{"name":"comment.line.number-sign.hxml","match":"(#).*$\\n?","captures":{"1":{"name":"punctuation.definition.comment.hxml"}}},{"begin":"(?\u003c!\\w)(--macro)\\b","end":"\\n","patterns":[{"include":"source.hx#block-contents"}],"beginCaptures":{"1":{"name":"keyword.other.hxml"}}},{"match":"(?\u003c!\\w)(-m|-main|--main|--run)\\b\\s*\\b(?:(([a-z][a-zA-Z0-9]*\\.)*)(_*[A-Z]\\w*))?\\b","captures":{"1":{"name":"keyword.other.hxml"},"2":{"name":"support.package.hx"},"4":{"name":"entity.name.type.hx"}}},{"match":"(?\u003c!\\w)(-cppia|-cpp?|-js|-as3|-swf-(header|version|lib(-extern)?)|-swf9?|-neko|-python|-php|-cs|-java-lib|-java|-xml|-lua|-hl|-x|-lib|-D|-resource|-exclude|-version|-v|-debug|-prompt|-cmd|-dce\\s+(std|full|no)?|--flash-strict|--no-traces|--flash-use-stage|--neko-source|--gen-hx-classes|-net-lib|-net-std|-c-arg|--each|--next|--display|--no-output|--times|--no-inline|--no-opt|--php-front|--php-lib|--php-prefix|--remap|--help-defines|--help-metas|-help|--help|-java|-cs|--js-modern|--interp|--eval|--dce|--wait|--connect|--cwd|--run).*$","captures":{"1":{"name":"keyword.other.hxml"}}},{"match":"(?\u003c!\\w)(--js(on)?|--lua|--swf-(header|version|lib(-extern)?)|--swf|--as3|--neko|--php|--cppia|--cpp|--cppia|--cs|--java-lib(-extern)?|--java|--jvm|--python|--hl|-p|--class-path|-L|--library|--define|-r|--resource|--cmd|-C|--verbose|--debug|--prompt|--xml|--json|--net-lib|--net-std|--c-arg|--version|--haxelib-global|-h|--main|--server-connect|--server-listen).*$","captures":{"1":{"name":"keyword.other.hxml"}}}]}
|
|
1
|
+
{"name":"Hxml","scopeName":"source.hxml","patterns":[{"name":"comment.line.number-sign.hxml","match":"(#).*$\\n?","captures":{"1":{"name":"punctuation.definition.comment.hxml"}}},{"begin":"(?\u003c!\\w)(--macro)\\b","end":"\\n","patterns":[{"include":"source.hx#block-contents"}],"beginCaptures":{"1":{"name":"keyword.other.hxml"}}},{"match":"(?\u003c!\\w)(-m|-main|--main|--run)\\b\\s*\\b(?:(([a-z][a-zA-Z0-9]*\\.)*)(_*[A-Z]\\w*))?\\b","captures":{"1":{"name":"keyword.other.hxml"},"2":{"name":"support.package.hx"},"4":{"name":"entity.name.type.hx"}}},{"match":"^\\s*(([a-z][a-zA-Z0-9]*\\.)*)(_*[A-Z]\\w*)\\s*$","captures":{"1":{"name":"support.package.hx"},"3":{"name":"entity.name.type.hx"}}},{"match":"(?\u003c!\\w)(-cppia|-cpp?|-js|-as3|-swf-(header|version|lib(-extern)?)|-swf9?|-neko|-python|-php|-cs|-java-lib|-java|-xml|-lua|-hl|-x|-lib|-D|-resource|-exclude|-version|-v|-debug|-prompt|-cmd|-dce\\s+(std|full|no)?|--flash-strict|--no-traces|--flash-use-stage|--neko-source|--gen-hx-classes|-net-lib|-net-std|-c-arg|--each|--next|--display|--no-output|--times|--no-inline|--no-opt|--php-front|--php-lib|--php-prefix|--remap|--help-defines|--help-metas|-help|--help|-java|-cs|--js-modern|--interp|--eval|--dce|--wait|--connect|--cwd|--run).*$","captures":{"1":{"name":"keyword.other.hxml"}}},{"match":"(?\u003c!\\w)(--js(on)?|--lua|--swf-(header|version|lib(-extern)?)|--swf|--as3|--neko|--php|--cppia|--cpp|--cppia|--cs|--java-lib(-extern)?|--java|--jvm|--python|--hl|-p|--class-path|-L|--library|--define|-r|--resource|--cmd|-C|--verbose|--debug|--prompt|--xml|--json|--net-lib|--net-std|--c-arg|--version|--haxelib-global|-h|--main|--server-connect|--server-listen).*$","captures":{"1":{"name":"keyword.other.hxml"}}}]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"name":"IL Assembly","scopeName":"source.il","patterns":[{"include":"#comment"},{"include":"#string-double"},{"include":"#string-single"},{"include":"#bytearray"},{"include":"#directive"},{"include":"#label"},{"include":"#opcode-prefix"},{"include":"#opcode-control"},{"include":"#opcode"},{"include":"#storage-modifier"},{"include":"#type-builtin"},{"include":"#number-hex"},{"include":"#number-float"},{"include":"#number-integer"},{"include":"#assembly-ref"},{"include":"#punctuation"}],"repository":{"assembly-ref":{"name":"entity.name.type.module.il","match":"\\[[A-Za-z_][\\w.]*\\]"},"bytearray":{"begin":"\\b(bytearray)\\s*(\\()","end":"\\)","patterns":[{"include":"#comment"},{"name":"constant.numeric.hex.il","match":"[0-9a-fA-F]{2}"}],"beginCaptures":{"1":{"name":"keyword.other.bytearray.il"},"2":{"name":"punctuation.section.parens.begin.il"}},"endCaptures":{"0":{"name":"punctuation.section.parens.end.il"}}},"comment":{"name":"comment.line.double-slash.il","match":"//.*$"},"directive":{"patterns":[{"name":"keyword.control.directive.il","match":"(?\u003c![.\\w])\\.(assembly|module|class|namespace|method|field|property|event|custom)(?![.\\w])"},{"name":"keyword.control.directive.il","match":"(?\u003c![.\\w])\\.(maxstack|locals|entrypoint|try|catch|finally|filter|fault|override)(?![.\\w])"},{"name":"keyword.control.directive.il","match":"(?\u003c![.\\w])\\.(data|size|pack|param|permissionset|zeroinit|emitbyte)(?![.\\w])"},{"name":"keyword.control.directive.il","match":"(?\u003c![.\\w])\\.(get|set|addon|removeon|fire|other)(?![.\\w])"},{"name":"keyword.control.directive.il","match":"(?\u003c![.\\w])\\.(export|vtfixup|vtentry|corflags|subsystem|imagebase|stackreserve|file|hash|mresource)(?![.\\w])"},{"name":"keyword.control.directive.il","match":"(?\u003c![.\\w])\\.(line|language|ctor|cctor|ver|publickey|publickeytoken|culture|locale)(?![.\\w])"}]},"label":{"match":"^\\s*([A-Za-z_$][A-Za-z_$0-9]*)\\s*(:)(?!:)","captures":{"1":{"name":"entity.name.label.il"},"2":{"name":"punctuation.separator.label.il"}}},"number-float":{"name":"constant.numeric.float.il","match":"\\b[0-9]+\\.[0-9]+(?:[eE][+-]?[0-9]+)?\\b"},"number-hex":{"name":"constant.numeric.hex.il","match":"\\b0[xX][0-9a-fA-F]+\\b"},"number-integer":{"name":"constant.numeric.integer.il","match":"\\b[0-9]+\\b"},"opcode":{"patterns":[{"name":"support.function.opcode.il","match":"(?\u003c![.\\w])(?:ldarg|ldarg\\.[0-3s]|ldarga|ldarga\\.s|ldloc|ldloc\\.[0-3s]|ldloca|ldloca\\.s)(?![.\\w])"},{"name":"support.function.opcode.il","match":"(?\u003c![.\\w])(?:ldc\\.i4|ldc\\.i4\\.[0-8]|ldc\\.i4\\.m1|ldc\\.i4\\.s|ldc\\.i8|ldc\\.r4|ldc\\.r8|ldstr|ldnull)(?![.\\w])"},{"name":"support.function.opcode.il","match":"(?\u003c![.\\w])(?:ldfld|ldsfld|ldflda|ldsflda|ldlen|ldobj|ldftn|ldvirtftn|ldtoken)(?![.\\w])"},{"name":"support.function.opcode.il","match":"(?\u003c![.\\w])(?:ldelem|ldelem\\.i[1248]?|ldelem\\.u[1248]|ldelem\\.r[48]|ldelem\\.ref|ldelema)(?![.\\w])"},{"name":"support.function.opcode.il","match":"(?\u003c![.\\w])(?:ldind\\.i[1248]?|ldind\\.u[1248]|ldind\\.r[48]|ldind\\.ref)(?![.\\w])"},{"name":"support.function.opcode.il","match":"(?\u003c![.\\w])(?:starg|starg\\.s|stloc|stloc\\.[0-3s]|stfld|stsfld|stobj)(?![.\\w])"},{"name":"support.function.opcode.il","match":"(?\u003c![.\\w])(?:stelem|stelem\\.i[1248]?|stelem\\.r[48]|stelem\\.ref)(?![.\\w])"},{"name":"support.function.opcode.il","match":"(?\u003c![.\\w])(?:stind\\.i[1248]?|stind\\.r[48]|stind\\.ref)(?![.\\w])"},{"name":"support.function.opcode.il","match":"(?\u003c![.\\w])(?:add|add\\.ovf|add\\.ovf\\.un|sub|sub\\.ovf|sub\\.ovf\\.un|mul|mul\\.ovf|mul\\.ovf\\.un|div|div\\.un|rem|rem\\.un|neg)(?![.\\w])"},{"name":"support.function.opcode.il","match":"(?\u003c![.\\w])(?:and|or|xor|not|shl|shr|shr\\.un)(?![.\\w])"},{"name":"support.function.opcode.il","match":"(?\u003c![.\\w])(?:conv\\.i[1248]?|conv\\.u[1248]?|conv\\.r[48]|conv\\.r\\.un)(?![.\\w])"},{"name":"support.function.opcode.il","match":"(?\u003c![.\\w])(?:conv\\.ovf\\.i[1248]?|conv\\.ovf\\.i[1248]?\\.un|conv\\.ovf\\.u[1248]?|conv\\.ovf\\.u[1248]?\\.un)(?![.\\w])"},{"name":"support.function.opcode.il","match":"(?\u003c![.\\w])(?:ceq|cgt|cgt\\.un|clt|clt\\.un|ckfinite)(?![.\\w])"},{"name":"support.function.opcode.il","match":"(?\u003c![.\\w])(?:newobj|newarr|initobj|castclass|isinst|box|unbox|unbox\\.any|sizeof)(?![.\\w])"},{"name":"support.function.opcode.il","match":"(?\u003c![.\\w])(?:mkrefany|refanytype|refanyval|pop|dup|nop|localloc|initblk|cpblk|cpobj|arglist|break)(?![.\\w])"}]},"opcode-control":{"patterns":[{"name":"keyword.control.flow.il","match":"(?\u003c![.\\w])(?:br|br\\.s|brfalse|brfalse\\.s|brtrue|brtrue\\.s)(?![.\\w])"},{"name":"keyword.control.flow.il","match":"(?\u003c![.\\w])(?:beq|beq\\.s|bge|bge\\.s|bge\\.un|bge\\.un\\.s|bgt|bgt\\.s|bgt\\.un|bgt\\.un\\.s)(?![.\\w])"},{"name":"keyword.control.flow.il","match":"(?\u003c![.\\w])(?:ble|ble\\.s|ble\\.un|ble\\.un\\.s|blt|blt\\.s|blt\\.un|blt\\.un\\.s|bne\\.un|bne\\.un\\.s)(?![.\\w])"},{"name":"keyword.control.flow.il","match":"(?\u003c![.\\w])(?:switch|call|calli|callvirt|ret|jmp)(?![.\\w])"},{"name":"keyword.control.flow.il","match":"(?\u003c![.\\w])(?:throw|rethrow|leave|leave\\.s|endfinally|endfilter|endfault)(?![.\\w])"}]},"opcode-prefix":{"name":"keyword.other.prefix.il","match":"(?\u003c![.\\w])(?:tail|volatile|unaligned|readonly|constrained|no)\\."},"punctuation":{"patterns":[{"name":"punctuation.separator.accessor.il","match":"::"},{"name":"punctuation.section.braces.begin.il","match":"\\{"},{"name":"punctuation.section.braces.end.il","match":"\\}"}]},"storage-modifier":{"patterns":[{"name":"storage.modifier.il","match":"\\b(?:public|private|family|assembly|famorassem|famandassem|privatescope|compilercontrolled)\\b"},{"name":"storage.modifier.il","match":"\\b(?:static|instance|virtual|abstract|sealed|newslot|final|hidebysig)\\b"},{"name":"storage.modifier.il","match":"\\b(?:specialname|rtspecialname|pinvokeimpl|managed|unmanaged|cil|runtime|internalcall)\\b"},{"name":"storage.modifier.il","match":"\\b(?:forwardref|noinlining|aggressiveinlining|synchronized)\\b"},{"name":"storage.modifier.il","match":"\\b(?:interface|enum|extends|implements|nested|sequential|explicit|auto)\\b"},{"name":"storage.modifier.il","match":"\\b(?:ansi|unicode|autochar|beforefieldinit|serializable|initonly|literal|notserialized|extern)\\b"},{"name":"storage.modifier.il","match":"\\b(?:init|marshal|modopt|modreq|in|out|opt|at|bytearray|nullref|vararg|default)\\b"}]},"string-double":{"name":"string.quoted.double.il","begin":"\"","end":"\"","patterns":[{"name":"constant.character.escape.il","match":"\\\\."}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.il"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.il"}}},"string-single":{"name":"string.quoted.single.il","begin":"'","end":"'","patterns":[{"name":"constant.character.escape.il","match":"\\\\."}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.il"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.il"}}},"type-builtin":{"name":"support.type.il","match":"\\b(?:void|bool|char|int8|int16|int32|int64|float32|float64|native|unsigned|int|object|string|typedref|class|valuetype)\\b"}}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"name":"GIMP Interpreter Definition","scopeName":"source.interp","patterns":[{"include":"#main"}],"repository":{"binfmt":{"name":"meta.binfmt-spec.interp","match":"(?x)^\n(\\S) # Initial character specifies delimiter\n((?:(?!\\1)[^\\r\\n])*+) (\\1) # Name\n((?:(?!\\1)[^\\r\\n])*+) (\\1) # Type\n((?:(?!\\1)[^\\r\\n])*+) (\\1) # Offset\n((?:(?!\\1)[^\\r\\n])*+) (\\1) # Match\n((?:(?!\\1)[^\\r\\n])*+) (\\1) # Mask ANDed with match (only if magic number)\n((?:(?!\\1)[^\\r\\n])*+) (\\1) # Interpreter\n((?:(?!\\1)[^\\r\\n])*+) # Flags","captures":{"1":{"patterns":[{"include":"#delim"}]},"10":{"name":"string.quoted.other.mask.interp","patterns":[{"include":"#esc"}]},"11":{"patterns":[{"include":"#delim"}]},"12":{"name":"string.quoted.other.filename.interp"},"13":{"patterns":[{"include":"#delim"}]},"14":{"name":"meta.association-flags.interp","patterns":[{"name":"storage.modifier.flag.preserve-argv.interp","match":"P"},{"name":"storage.modifier.flag.open-binary.interp","match":"O"},{"name":"storage.modifier.flag.credentials.interp","match":"C"},{"name":"storage.modifier.flag.fix-binary.interp","match":"F"},{"name":"invalid.illegal.argument.unrecognised-flag.interp","match":"[^POCF\\s]"}]},"2":{"name":"entity.name.interpreter.interp"},"3":{"patterns":[{"include":"#delim"}]},"4":{"name":"meta.association-type.interp","patterns":[{"name":"storage.type.association.magic.interp","match":"^(M)$"},{"name":"storage.type.association.extension.interp","match":"^(E)$"},{"name":"invalid.illegal.argument.interp","match":"^.*\\S.*$"}]},"5":{"patterns":[{"include":"#delim"}]},"6":{"name":"meta.match-offset.interp","patterns":[{"include":"etc#intNoExp"},{"name":"invalid.illegal.argument.interp","match":"^.*\\D.*$"}]},"7":{"patterns":[{"include":"#delim"}]},"8":{"name":"string.quoted.other.match.interp","patterns":[{"include":"#esc"}]},"9":{"patterns":[{"include":"#delim"}]}}},"delim":{"name":"punctuation.delimiter.separator.field.interp","match":"^\\S+","captures":{"0":{"name":"sublimelinter.gutter-mark"}}},"esc":{"name":"constant.character.escape.codepoint.hexadecimal.interp","match":"(\\\\)x[A-Fa-f0-9]{2}","captures":{"1":{"name":"punctuation.definition.escape.backslash.interp"}}},"execPath":{"name":"meta.exec-file.interp","contentName":"string.unquoted.other.filename.interp","begin":"^(?:(\\w+)|((?:/[^/=]+)++))(=)","end":"(?=\\s*$)","beginCaptures":{"1":{"name":"variable.assignment.interpreter.name.interp"},"2":{"name":"variable.assignment.interpreter.path.interp"},"3":{"patterns":[{"include":"etc#eql"}]}}},"main":{"patterns":[{"include":"etc#commentStartHash"},{"include":"#execPath"},{"include":"#binfmt"}]}}}
|