github-linguist 9.1.0 → 9.3.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/bin/github-linguist +24 -5
- data/grammars/etc.json +1 -1
- data/grammars/injection.interpolated-ruby.json +1 -0
- data/grammars/injections.etc.json +1 -1
- data/grammars/inline.edgeql.json +1 -1
- data/grammars/liquid.injection.json +1 -1
- data/grammars/markdown.move.codeblock.json +1 -1
- data/grammars/source.4dm.json +1 -1
- data/grammars/source.QB64.json +1 -1
- data/grammars/source.abl.json +1 -1
- data/grammars/source.aiken.json +1 -0
- data/grammars/source.apex.json +1 -1
- data/grammars/source.ash.json +1 -0
- data/grammars/source.ats.json +1 -1
- data/grammars/source.ballerina.json +1 -1
- data/grammars/source.brs.json +1 -1
- data/grammars/source.bru.json +1 -0
- data/grammars/source.c++.json +1 -1
- data/grammars/source.c.calendar.json +1 -0
- data/grammars/source.c.json +1 -1
- data/grammars/source.c.linker.json +1 -1
- data/grammars/source.c3.json +1 -0
- data/grammars/source.cl.json +1 -1
- data/grammars/source.clue.json +1 -0
- data/grammars/source.cmake.json +1 -1
- data/grammars/source.cobol.json +1 -1
- data/grammars/source.cooklang.json +1 -0
- data/grammars/source.cs.json +1 -1
- data/grammars/source.curlrc.json +1 -1
- data/grammars/source.daslang.json +1 -0
- data/grammars/source.dds.dspf.json +1 -1
- data/grammars/source.dotenv.json +1 -1
- data/grammars/source.edgeql.json +1 -1
- data/grammars/source.erlang.json +1 -1
- data/grammars/source.flix.json +1 -0
- data/grammars/source.fsharp.json +1 -1
- data/grammars/source.gdscript.json +1 -1
- data/grammars/source.git-revlist.json +1 -1
- data/grammars/source.gitignore.json +1 -1
- data/grammars/source.gleam.json +1 -1
- data/grammars/source.harbour.json +1 -1
- data/grammars/source.httpspec.json +1 -1
- data/grammars/source.hx.json +1 -1
- data/grammars/source.ilecobol.json +1 -0
- data/grammars/source.inputrc.json +1 -1
- data/grammars/source.jai.json +1 -1
- data/grammars/source.jq.json +1 -1
- data/grammars/source.json.comments.json +1 -1
- data/grammars/source.julia.console.json +1 -1
- data/grammars/source.julia.json +1 -1
- data/grammars/source.just.json +1 -1
- data/grammars/source.koka.json +1 -0
- data/grammars/source.lean4.json +1 -1
- data/grammars/source.leo.json +1 -0
- data/grammars/source.livescript.json +1 -1
- data/grammars/source.luau.json +1 -1
- data/grammars/source.m2.json +1 -1
- data/grammars/source.m3u.json +1 -0
- data/grammars/source.mermaid.flowchart.json +1 -1
- data/grammars/source.mermaid.gantt.json +1 -1
- data/grammars/source.mermaid.json +1 -1
- data/grammars/source.mermaid.pie-chart.json +1 -1
- data/grammars/source.mermaid.quad-chart.json +1 -0
- data/grammars/source.mermaid.sankey.json +1 -0
- data/grammars/source.mermaid.timeline.json +1 -0
- data/grammars/source.mermaid.user-journey.json +1 -1
- data/grammars/source.mermaid.zenuml.json +1 -0
- data/grammars/source.moonbit.json +1 -1
- data/grammars/source.move.json +1 -1
- data/grammars/source.nasl.json +1 -1
- data/grammars/source.nginx.json +1 -1
- data/grammars/source.nickel.json +1 -0
- data/grammars/source.nim.json +1 -1
- data/grammars/source.nr.json +1 -1
- data/grammars/source.nushell.json +1 -1
- data/grammars/source.objc.json +1 -1
- data/grammars/source.odin-ehr.json +1 -1
- data/grammars/source.odin.json +1 -1
- data/grammars/source.openqasm.json +1 -0
- data/grammars/source.postscript.json +1 -1
- data/grammars/source.psl.json +1 -0
- data/grammars/source.quakec.json +1 -0
- data/grammars/source.record-jar.json +1 -1
- data/grammars/source.rescript.json +1 -1
- data/grammars/source.roc.json +1 -1
- data/grammars/source.rosmsg.json +1 -0
- data/grammars/source.rust.json +1 -1
- data/grammars/source.sail.json +1 -0
- data/grammars/source.sieve.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.stan.json +1 -1
- data/grammars/source.sway.json +1 -1
- data/grammars/source.swift.json +1 -1
- data/grammars/source.tact.json +1 -1
- data/grammars/source.talon.json +1 -1
- data/grammars/source.templ.json +1 -1
- data/grammars/source.toc.json +1 -1
- data/grammars/source.torrc.json +1 -0
- data/grammars/source.typst.json +1 -1
- data/grammars/source.uplc.json +1 -0
- data/grammars/source.vba.json +1 -1
- data/grammars/source.vcl.json +1 -0
- data/grammars/source.vento.json +1 -0
- data/grammars/source.vhdl.json +1 -1
- data/grammars/source.vue.json +1 -1
- data/grammars/source.wdl.json +1 -1
- data/grammars/source.wesl.json +1 -0
- data/grammars/source.wgsl.json +1 -1
- data/grammars/source.wit.json +1 -1
- data/grammars/source.zmodel.json +1 -0
- data/grammars/text.adblock.json +1 -1
- data/grammars/text.codeowners.json +1 -1
- data/grammars/text.html.jte.json +1 -1
- data/grammars/text.html.liquid.json +1 -1
- data/grammars/text.html.vento.json +1 -0
- data/grammars/text.jira.json +1 -0
- data/grammars/text.marko.json +1 -1
- data/grammars/text.slim.json +1 -1
- data/grammars/text.srt.json +1 -1
- data/grammars/text.valve-cfg.json +1 -1
- data/grammars/text.xml.svg.json +1 -1
- data/grammars/version +1 -1
- data/lib/linguist/VERSION +1 -1
- data/lib/linguist/generated.rb +28 -6
- data/lib/linguist/generic.yml +2 -0
- data/lib/linguist/heuristics.yml +47 -9
- data/lib/linguist/instrumenter.rb +19 -0
- data/lib/linguist/languages.json +1 -1
- data/lib/linguist/languages.yml +327 -102
- data/lib/linguist/samples.json +1 -1
- data/lib/linguist.rb +1 -0
- metadata +39 -12
- data/grammars/source.c.platform.json +0 -1
- data/grammars/source.varnish.vcl.json +0 -1
@@ -1 +1 @@
|
|
1
|
-
{"name":"GDScript","scopeName":"source.gdscript","patterns":[{"include":"#statement"},{"include":"#expression"}],"repository":{"annotated_parameter":{"begin":"(?x)\n \\s* ([a-zA-Z_]\\w*) \\s* (:)\\s* ([a-zA-Z_]\\w*)? \n","end":"(,)|(?=\\))","patterns":[{"include":"#expression"},{"name":"keyword.operator.assignment.gdscript","match":"=(?!=)"}],"beginCaptures":{"1":{"name":"variable.parameter.function.language.gdscript"},"2":{"name":"punctuation.separator.annotation.gdscript"},"3":{"name":"entity.name.type.class.gdscript"}},"endCaptures":{"1":{"name":"punctuation.separator.parameters.gdscript"}}},"annotations":{"match":"(@)(export|export_group|export_color_no_alpha|export_custom|export_dir|export_enum|export_exp_easing|export_file|export_flags|export_flags_2d_navigation|export_flags_2d_physics|export_flags_2d_render|export_flags_3d_navigation|export_flags_3d_physics|export_flags_3d_render|export_global_dir|export_global_file|export_multiline|export_node_path|export_placeholder|export_range|export_storage|icon|onready|rpc|tool|warning_ignore|static_unload)\\b","captures":{"1":{"name":"entity.name.function.decorator.gdscript"},"2":{"name":"entity.name.function.decorator.gdscript"}}},"any_method":{"name":"entity.name.function.other.gdscript","match":"\\b([A-Za-z_]\\w*)\\b(?=\\s*(?:[(]))"},"any_property":{"match":"\\b(\\.)\\s*(?\u003c![@\\$#%])(?:([A-Z_][A-Z_0-9]*)|([A-Za-z_]\\w*))\\b(?![(])","captures":{"1":{"name":"punctuation.accessor.gdscript"},"2":{"name":"constant.language.gdscript"},"3":{"name":"variable.other.property.gdscript"}}},"any_variable":{"name":"variable.other.gdscript","match":"\\b(?\u003c![@\\$#%])([A-Za-z_]\\w*)\\b(?![(])"},"arithmetic_operator":{"name":"keyword.operator.arithmetic.gdscript","match":"-\u003e|\\+=|-=|\\*\\*=|\\*=|\\^=|/=|%=|\u0026=|~=|\\|=|\\*\\*|\\*|/|%|\\+|-"},"assignment_operator":{"name":"keyword.operator.assignment.gdscript","match":"="},"base_expression":{"patterns":[{"include":"#builtin_get_node_shorthand"},{"include":"#nodepath_object"},{"include":"#nodepath_function"},{"include":"#strings"},{"include":"#builtin_classes"},{"include":"#const_vars"},{"include":"#keywords"},{"include":"#operators"},{"include":"#lambda_declaration"},{"include":"#class_declaration"},{"include":"#variable_declaration"},{"include":"#signal_declaration_bare"},{"include":"#signal_declaration"},{"include":"#function_declaration"},{"include":"#statement_keyword"},{"include":"#assignment_operator"},{"include":"#in_keyword"},{"include":"#control_flow"},{"include":"#match_keyword"},{"include":"#curly_braces"},{"include":"#square_braces"},{"include":"#round_braces"},{"include":"#function_call"},{"include":"#region"},{"include":"#comment"},{"include":"#self"},{"include":"#func"},{"include":"#letter"},{"include":"#numbers"},{"include":"#pascal_case_class"},{"include":"#line_continuation"}]},"bitwise_operator":{"name":"keyword.operator.bitwise.gdscript","match":"\u0026|\\||\u003c\u003c=|\u003e\u003e=|\u003c\u003c|\u003e\u003e|\\^|~"},"boolean_operator":{"name":"keyword.operator.boolean.gdscript","match":"(\u0026\u0026|\\|\\|)"},"builtin_classes":{"name":"entity.name.type.class.builtin.gdscript","match":"(?\u003c![^.]\\.|:)\\b(Vector2|Vector2i|Vector3|Vector3i|Vector4|Vector4i|Color|Rect2|Rect2i|Array|Basis|Dictionary|Plane|Quat|RID|Rect3|Transform|Transform2D|Transform3D|AABB|String|Color|NodePath|PoolByteArray|PoolIntArray|PoolRealArray|PoolStringArray|PoolVector2Array|PoolVector3Array|PoolColorArray|bool|int|float|Signal|Callable|StringName|Quaternion|Projection|PackedByteArray|PackedInt32Array|PackedInt64Array|PackedFloat32Array|PackedFloat64Array|PackedStringArray|PackedVector2Array|PackedVector2iArray|PackedVector3Array|PackedVector3iArray|PackedVector4Array|PackedColorArray|JSON|UPNP|OS|IP|JSONRPC|XRVRS)\\b"},"builtin_get_node_shorthand":{"patterns":[{"include":"#builtin_get_node_shorthand_quoted"},{"include":"#builtin_get_node_shorthand_bare"},{"include":"#builtin_get_node_shorthand_bare_multi"}]},"builtin_get_node_shorthand_bare":{"name":"meta.literal.nodepath.bare.gdscript","captures":{"1":{"name":"keyword.control.flow.gdscript"},"2":{"name":"constant.character.escape.gdscript"},"3":{"name":"constant.character.escape.gdscript"},"4":{"name":"constant.character.escape.gdscript"}}},"builtin_get_node_shorthand_bare_multi":{"name":"meta.literal.nodepath.bare.gdscript","begin":"(\\$\\s*|%|\\$%\\s*)(/\\s*)?([a-zA-Z_]\\w*)","end":"(?!\\s*/\\s*%?\\s*[a-zA-Z_]\\w*)","patterns":[{"match":"(/)\\s*(%)?\\s*([a-zA-Z_]\\w*)\\s*","captures":{"1":{"name":"constant.character.escape.gdscript"},"2":{"name":"keyword.control.flow.gdscript"},"3":{"name":"constant.character.escape.gdscript"}}}],"beginCaptures":{"1":{"name":"keyword.control.flow.gdscript"},"2":{"name":"constant.character.escape.gdscript"},"3":{"name":"constant.character.escape.gdscript"}}},"builtin_get_node_shorthand_quoted":{"name":"string.quoted.gdscript meta.literal.nodepath.gdscript constant.character.escape.gdscript","begin":"(?:(\\$|%)|(\u0026|\\^|@))(\"|')","end":"(\\3)","patterns":[{"name":"keyword.control.flow","match":"%"}],"beginCaptures":{"1":{"name":"keyword.control.flow.gdscript"},"2":{"name":"variable.other.enummember.gdscript"}}},"class_declaration":{"match":"(?\u003c=^class)\\s+([a-zA-Z_]\\w*)\\s*(?=:)","captures":{"1":{"name":"entity.name.type.class.gdscript"},"2":{"name":"class.other.gdscript"}}},"class_enum":{"match":"\\b([A-Z][a-zA-Z_0-9]*)\\.([A-Z_0-9]+)","captures":{"1":{"name":"entity.name.type.class.gdscript"},"2":{"name":"variable.other.enummember.gdscript"}}},"class_is":{"match":"\\s+(is)\\s+([a-zA-Z_]\\w*)","captures":{"1":{"name":"storage.type.is.gdscript"},"2":{"name":"entity.name.type.class.gdscript"}}},"class_name":{"match":"(?\u003c=class_name)\\s+([a-zA-Z_]\\w*(\\.([a-zA-Z_]\\w*))?)","captures":{"1":{"name":"entity.name.type.class.gdscript"},"2":{"name":"class.other.gdscript"}}},"class_new":{"match":"\\b([a-zA-Z_]\\w*).(new)\\(","captures":{"1":{"name":"entity.name.type.class.gdscript"},"2":{"name":"storage.type.new.gdscript"},"3":{"name":"punctuation.parenthesis.begin.gdscript"}}},"comment":{"name":"comment.line.number-sign.gdscript","match":"(##|#).*$\\n?","captures":{"1":{"name":"punctuation.definition.comment.number-sign.gdscript"}}},"compare_operator":{"name":"keyword.operator.comparison.gdscript","match":"\u003c=|\u003e=|==|\u003c|\u003e|!=|!"},"const_vars":{"name":"variable.other.constant.gdscript","match":"\\b([A-Z_][A-Z_0-9]*)\\b"},"control_flow":{"name":"keyword.control.gdscript","match":"\\b(?:if|elif|else|while|break|continue|pass|return|when|yield|await)\\b"},"curly_braces":{"begin":"\\{","end":"\\}","patterns":[{"include":"#base_expression"},{"include":"#any_variable"}],"beginCaptures":{"0":{"name":"punctuation.definition.dict.begin.gdscript"}},"endCaptures":{"0":{"name":"punctuation.definition.dict.end.gdscript"}}},"expression":{"patterns":[{"include":"#getter_setter_godot4"},{"include":"#base_expression"},{"include":"#assignment_operator"},{"include":"#annotations"},{"include":"#class_name"},{"include":"#builtin_classes"},{"include":"#class_new"},{"include":"#class_is"},{"include":"#class_enum"},{"include":"#any_method"},{"include":"#any_variable"},{"include":"#any_property"}]},"extends_statement":{"match":"(extends)\\s+([a-zA-Z_]\\w*\\.[a-zA-Z_]\\w*)?","captures":{"1":{"name":"keyword.language.gdscript"},"2":{"name":"entity.other.inherited-class.gdscript"}}},"func":{"name":"keyword.language.gdscript","match":"\\bfunc\\b"},"function_arguments":{"contentName":"meta.function.parameters.gdscript","begin":"(\\()","end":"(?=\\))(?!\\)\\s*\\()","patterns":[{"name":"punctuation.separator.arguments.gdscript","match":"(,)"},{"match":"\\b([a-zA-Z_]\\w*)\\s*(=)(?!=)","captures":{"1":{"name":"variable.parameter.function-call.gdscript"},"2":{"name":"keyword.operator.assignment.gdscript"}}},{"name":"keyword.operator.assignment.gdscript","match":"=(?!=)"},{"include":"#base_expression"},{"match":"\\s*(\\))\\s*(\\()","captures":{"1":{"name":"punctuation.definition.arguments.end.gdscript"},"2":{"name":"punctuation.definition.arguments.begin.gdscript"}}},{"include":"#letter"},{"include":"#any_variable"},{"include":"#any_property"},{"include":"#keywords"}],"beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.gdscript"}}},"function_call":{"name":"meta.function-call.gdscript","begin":"(?=\\b[a-zA-Z_]\\w*\\b\\()","end":"(\\))","patterns":[{"include":"#function_name"},{"include":"#function_arguments"}],"endCaptures":{"1":{"name":"punctuation.definition.arguments.end.gdscript"}}},"function_declaration":{"name":"meta.function.gdscript","begin":"(?x) \\s*\n (func) \\s+\n ([a-zA-Z_]\\w*) \\s*\n (?=\\()","end":"(:)","patterns":[{"include":"#parameters"},{"include":"#line_continuation"},{"include":"#base_expression"}],"beginCaptures":{"1":{"name":"keyword.language.gdscript storage.type.function.gdscript"},"2":{"name":"entity.name.function.gdscript"}},"endCaptures":{"1":{"name":"punctuation.section.function.begin.gdscript"}}},"function_name":{"patterns":[{"include":"#builtin_classes"},{"name":"keyword.language.gdscript","match":"\\b(preload)\\b"},{"name":"entity.name.function.gdscript","match":"\\b([a-zA-Z_]\\w*)\\b"}]},"getter_setter_godot4":{"patterns":[{"name":"meta.variable.declaration.getter.gdscript","match":"(get)\\s*(:)","captures":{"1":{"name":"entity.name.function.gdscript"},"2":{"name":"punctuation.separator.annotation.gdscript"}}},{"name":"meta.variable.declaration.setter.gdscript","match":"(set)\\s*(\\()\\s*([A-Za-z_]\\w*)\\s*(\\))\\s*(:)","captures":{"1":{"name":"entity.name.function.gdscript"},"2":{"name":"punctuation.definition.arguments.begin.gdscript"},"3":{"name":"variable.other.gdscript"},"4":{"name":"punctuation.definition.arguments.end.gdscript"},"5":{"name":"punctuation.separator.annotation.gdscript"}}}]},"in_keyword":{"patterns":[{"begin":"\\b(for)\\b","end":":","patterns":[{"name":"keyword.control.gdscript","match":"\\bin\\b"},{"include":"#base_expression"},{"include":"#any_variable"},{"include":"#any_property"}],"captures":{"1":{"name":"keyword.control.gdscript"}}},{"name":"keyword.operator.wordlike.gdscript","match":"\\bin\\b"}]},"keywords":{"name":"keyword.language.gdscript","match":"\\b(?:class|class_name|abstract|is|onready|tool|static|export|as|void|enum|assert|breakpoint|sync|remote|master|puppet|slave|remotesync|mastersync|puppetsync|trait|namespace|super)\\b"},"lambda_declaration":{"name":"meta.function.gdscript","begin":"(func)\\s?(?=\\()","end":"(:|(?=[#'\"\\n]))","patterns":[{"include":"#parameters"},{"include":"#line_continuation"},{"include":"#base_expression"},{"include":"#any_variable"},{"include":"#any_property"}],"beginCaptures":{"1":{"name":"keyword.language.gdscript storage.type.function.gdscript"},"2":{"name":"entity.name.function.gdscript"}}},"letter":{"name":"constant.language.gdscript","match":"\\b(?:true|false|null)\\b"},"line_continuation":{"patterns":[{"match":"(\\\\)\\s*(\\S.*$\\n?)","captures":{"1":{"name":"punctuation.separator.continuation.line.gdscript"},"2":{"name":"invalid.illegal.line.continuation.gdscript"}}},{"begin":"(\\\\)\\s*$\\n?","end":"(?x)\n (?=^\\s*$)\n |\n (?! (\\s* [rR]? (\\'\\'\\'|\\\"\\\"\\\"|\\'|\\\"))\n |\n (\\G $) (?# '\\G' is necessary for ST)\n )\n","patterns":[{"include":"#base_expression"}],"beginCaptures":{"1":{"name":"punctuation.separator.continuation.line.gdscript"}}}]},"loose_default":{"begin":"(=)","end":"(,)|(?=\\))","patterns":[{"include":"#expression"}],"beginCaptures":{"1":{"name":"keyword.operator.gdscript"}},"endCaptures":{"1":{"name":"punctuation.separator.parameters.gdscript"}}},"match_keyword":{"match":"^\n\\s*(match)","captures":{"1":{"name":"keyword.control.gdscript"}}},"nodepath_function":{"name":"meta.function.gdscript","contentName":"meta.function.parameters.gdscript","begin":"(get_node_or_null|has_node|has_node_and_resource|find_node|get_node)\\s*(\\()","end":"(\\))","patterns":[{"name":"string.quoted.gdscript meta.literal.nodepath.gdscript constant.character.escape","begin":"(\"|')","end":"\\1","patterns":[{"name":"keyword.control.flow","match":"%"}]},{"include":"#expression"}],"beginCaptures":{"1":{"name":"entity.name.function.gdscript"},"2":{"name":"punctuation.definition.parameters.begin.gdscript"}},"endCaptures":{"1":{"name":"punctuation.definition.parameters.end.gdscript"}}},"nodepath_object":{"name":"meta.literal.nodepath.gdscript","begin":"(NodePath)\\s*(?:\\()","end":"(?:\\))","patterns":[{"name":"string.quoted.gdscript constant.character.escape.gdscript","begin":"(\"|')","end":"\\1","patterns":[{"name":"keyword.control.flow.gdscript","match":"%"}]}],"beginCaptures":{"1":{"name":"support.class.library.gdscript"}}},"numbers":{"patterns":[{"name":"constant.numeric.integer.binary.gdscript","match":"0b[01_]+"},{"name":"constant.numeric.integer.hexadecimal.gdscript","match":"0x[0-9A-Fa-f_]+"},{"name":"constant.numeric.float.gdscript","match":"\\.[0-9][0-9_]*([eE][+-]?[0-9_]+)?"},{"name":"constant.numeric.float.gdscript","match":"([0-9][0-9_]*)\\.[0-9_]*([eE][+-]?[0-9_]+)?"},{"name":"constant.numeric.float.gdscript","match":"([0-9][0-9_]*)?\\.[0-9_]*([eE][+-]?[0-9_]+)"},{"name":"constant.numeric.float.gdscript","match":"[0-9][0-9_]*[eE][+-]?[0-9_]+"},{"name":"constant.numeric.integer.gdscript","match":"[-]?[0-9][0-9_]*"}]},"operators":{"patterns":[{"include":"#wordlike_operator"},{"include":"#boolean_operator"},{"include":"#arithmetic_operator"},{"include":"#bitwise_operator"},{"include":"#compare_operator"}]},"parameters":{"name":"meta.function.parameters.gdscript","begin":"(\\()","end":"(\\))","patterns":[{"include":"#annotated_parameter"},{"match":"(?x)\n ([a-zA-Z_]\\w*)\n \\s* (?: (,) | (?=[)#\\n=]))\n","captures":{"1":{"name":"variable.parameter.function.language.gdscript"},"2":{"name":"punctuation.separator.parameters.gdscript"}}},{"include":"#comment"},{"include":"#loose_default"}],"beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.gdscript"}},"endCaptures":{"1":{"name":"punctuation.definition.parameters.end.gdscript"}}},"pascal_case_class":{"name":"entity.name.type.class.gdscript","match":"\\b([A-Z]+[a-z_0-9]*([A-Z]?[a-z_0-9]+)*[A-Z]?)\\b"},"region":{"name":"keyword.language.region.gdscript","match":"#(end)?region.*$\\n?"},"round_braces":{"begin":"\\(","end":"\\)","patterns":[{"include":"#base_expression"},{"include":"#any_variable"}],"beginCaptures":{"0":{"name":"punctuation.parenthesis.begin.gdscript"}},"endCaptures":{"0":{"name":"punctuation.parenthesis.end.gdscript"}}},"self":{"name":"variable.language.gdscript","match":"\\bself\\b"},"signal_declaration":{"name":"meta.signal.gdscript","begin":"(?x) \\s*\n (signal) \\s+\n ([a-zA-Z_]\\w*) \\s*\n (?=\\()","end":"((?=[#'\"\\n]))","patterns":[{"include":"#parameters"},{"include":"#line_continuation"}],"beginCaptures":{"1":{"name":"keyword.language.gdscript storage.type.function.gdscript"},"2":{"name":"entity.name.function.gdscript"}}},"signal_declaration_bare":{"name":"meta.signal.gdscript","match":"(?x) \\s*\n (signal) \\s+\n ([a-zA-Z_]\\w*)(?=[\\n\\s])","captures":{"1":{"name":"keyword.language.gdscript storage.type.function.gdscript"},"2":{"name":"entity.name.function.gdscript"}}},"square_braces":{"begin":"\\[","end":"\\]","patterns":[{"include":"#base_expression"},{"include":"#any_variable"}],"beginCaptures":{"0":{"name":"punctuation.definition.list.begin.gdscript"}},"endCaptures":{"0":{"name":"punctuation.definition.list.end.gdscript"}}},"statement":{"patterns":[{"include":"#extends_statement"}]},"statement_keyword":{"patterns":[{"name":"keyword.control.flow.gdscript","match":"(?x)\n \\b(?\u003c!\\.)(\n continue | assert | break | elif | else | if | pass | return | while )\\b\n"},{"name":"storage.type.class.gdscript","match":"\\b(?\u003c!\\.)(class)\\b"},{"match":"(?x)\n ^\\s*(\n case | match\n )(?=\\s*([-+\\w\\d(\\[{'\":#]|$))\\b\n","captures":{"1":{"name":"keyword.control.flow.gdscript"}}}]},"string_bracket_placeholders":{"patterns":[{"name":"meta.format.brace.gdscript","match":"(?x)\n (\n {{ | }}\n | (?:\n {\n \\w* (\\.[[:alpha:]_]\\w* | \\[[^\\]'\"]+\\])*\n (![rsa])?\n ( : \\w? [\u003c\u003e=^]? [-+ ]? \\#?\n \\d* ,? (\\.\\d+)? [bcdeEfFgGnosxX%]? )?\n })\n )\n","captures":{"1":{"name":"constant.character.format.placeholder.other.gdscript"},"3":{"name":"storage.type.format.gdscript"},"4":{"name":"storage.type.format.gdscript"}}},{"name":"meta.format.brace.gdscript","match":"(?x)\n (\n {\n \\w* (\\.[[:alpha:]_]\\w* | \\[[^\\]'\"]+\\])*\n (![rsa])?\n (:)\n [^'\"{}\\n]* (?:\n \\{ [^'\"}\\n]*? \\} [^'\"{}\\n]*\n )*\n }\n )\n","captures":{"1":{"name":"constant.character.format.placeholder.other.gdscript"},"3":{"name":"storage.type.format.gdscript"},"4":{"name":"storage.type.format.gdscript"}}}]},"string_percent_placeholders":{"name":"meta.format.percent.gdscript","match":"(?x)\n (\n % (\\([\\w\\s]*\\))?\n [-+#0 ]*\n (\\d+|\\*)? (\\.(\\d+|\\*))?\n ([hlL])?\n [diouxXeEfFgGcrsab%]\n )\n","captures":{"1":{"name":"constant.character.format.placeholder.other.gdscript"}}},"strings":{"name":"string.quoted.gdscript","begin":"(r)?(\"\"\"|'''|\"|')","end":"\\2","patterns":[{"name":"constant.character.escape.gdscript","match":"\\\\."},{"include":"#string_percent_placeholders"},{"include":"#string_bracket_placeholders"}],"beginCaptures":{"1":{"name":"constant.character.escape.gdscript"}}},"variable_declaration":{"name":"meta.variable.declaration.gdscript","begin":"\\b(?:(var)|(const))\\b","end":"$|;","patterns":[{"match":"(:)?\\s*(set|get)\\s+=\\s+([a-zA-Z_]\\w*)","captures":{"1":{"name":"punctuation.separator.annotation.gdscript"},"2":{"name":"entity.name.function.gdscript"},"3":{"name":"entity.name.function.gdscript"}}},{"name":"keyword.operator.assignment.gdscript","match":":=|=(?!=)"},{"match":"(:)\\s*([a-zA-Z_]\\w*)?","captures":{"1":{"name":"punctuation.separator.annotation.gdscript"},"2":{"name":"entity.name.type.class.gdscript"}}},{"match":"(setget)\\s+([a-zA-Z_]\\w*)(?:[,]\\s*([a-zA-Z_]\\w*))?","captures":{"1":{"name":"keyword.language.gdscript"},"2":{"name":"entity.name.function.gdscript"},"3":{"name":"entity.name.function.gdscript"}}},{"include":"#expression"},{"include":"#letter"},{"include":"#any_variable"},{"include":"#any_property"},{"include":"#keywords"}],"beginCaptures":{"1":{"name":"keyword.language.gdscript storage.type.var.gdscript"},"2":{"name":"keyword.language.gdscript storage.type.const.gdscript"}}},"wordlike_operator":{"name":"keyword.operator.wordlike.gdscript","match":"\\b(and|or|not)\\b"}}}
|
1
|
+
{"name":"GDScript","scopeName":"source.gdscript","patterns":[{"include":"#statement"},{"include":"#expression"}],"repository":{"annotated_parameter":{"begin":"(?x)\n \\s* ([a-zA-Z_]\\w*) \\s* (:)\\s* ([a-zA-Z_]\\w*)? \n","end":"(,)|(?=\\))","patterns":[{"include":"#expression"},{"name":"keyword.operator.assignment.gdscript","match":"=(?!=)"}],"beginCaptures":{"1":{"name":"variable.parameter.function.language.gdscript"},"2":{"name":"punctuation.separator.annotation.gdscript"},"3":{"name":"entity.name.type.class.gdscript"}},"endCaptures":{"1":{"name":"punctuation.separator.parameters.gdscript"}}},"annotations":{"match":"(@)(abstract|export|export_category|export_color_no_alpha|export_custom|export_dir|export_enum|export_exp_easing|export_file|export_file_path|export_flags|export_flags_2d_navigation|export_flags_2d_physics|export_flags_2d_render|export_flags_3d_navigation|export_flags_3d_physics|export_flags_3d_render|export_flags_avoidance|export_global_dir|export_global_file|export_group|export_multiline|export_node_path|export_placeholder|export_range|export_storage|export_subgroup|export_tool_button|icon|onready|rpc|static_unload|tool|warning_ignore|warning_ignore_restore|warning_ignore_start)\\b","captures":{"1":{"name":"entity.name.function.decorator.gdscript"},"2":{"name":"entity.name.function.decorator.gdscript"}}},"any_method":{"name":"entity.name.function.other.gdscript","match":"\\b([A-Za-z_]\\w*)\\b(?=\\s*(?:[(]))"},"any_property":{"match":"\\b(\\.)\\s*(?\u003c![@\\$#%])(?:([A-Z_][A-Z_0-9]*)|([A-Za-z_]\\w*))\\b(?![(])","captures":{"1":{"name":"punctuation.accessor.gdscript"},"2":{"name":"constant.language.gdscript"},"3":{"name":"variable.other.property.gdscript"}}},"any_variable":{"name":"variable.other.gdscript","match":"\\b(?\u003c![@\\$#%])([A-Za-z_]\\w*)\\b(?![(])"},"arithmetic_operator":{"name":"keyword.operator.arithmetic.gdscript","match":"-\u003e|\\+=|-=|\\*\\*=|\\*=|\\^=|/=|%=|\u0026=|~=|\\|=|\\*\\*|\\*|/|%|\\+|-"},"assignment_operator":{"name":"keyword.operator.assignment.gdscript","match":"="},"base_expression":{"patterns":[{"include":"#builtin_get_node_shorthand"},{"include":"#nodepath_object"},{"include":"#nodepath_function"},{"include":"#strings"},{"include":"#builtin_classes"},{"include":"#const_vars"},{"include":"#keywords"},{"include":"#operators"},{"include":"#lambda_declaration"},{"include":"#class_declaration"},{"include":"#variable_declaration"},{"include":"#signal_declaration_bare"},{"include":"#signal_declaration"},{"include":"#function_declaration"},{"include":"#statement_keyword"},{"include":"#assignment_operator"},{"include":"#in_keyword"},{"include":"#control_flow"},{"include":"#match_keyword"},{"include":"#curly_braces"},{"include":"#square_braces"},{"include":"#round_braces"},{"include":"#function_call"},{"include":"#region"},{"include":"#comment"},{"include":"#func"},{"include":"#letter"},{"include":"#numbers"},{"include":"#pascal_case_class"},{"include":"#line_continuation"}]},"bitwise_operator":{"name":"keyword.operator.bitwise.gdscript","match":"\u0026|\\||\u003c\u003c=|\u003e\u003e=|\u003c\u003c|\u003e\u003e|\\^|~"},"boolean_operator":{"name":"keyword.operator.boolean.gdscript","match":"(\u0026\u0026|\\|\\|)"},"builtin_classes":{"name":"entity.name.type.class.builtin.gdscript","match":"(?\u003c![^.]\\.|:)\\b(Vector2|Vector2i|Vector3|Vector3i|Vector4|Vector4i|Color|Rect2|Rect2i|Array|Basis|Dictionary|Plane|Quat|RID|Rect3|Transform|Transform2D|Transform3D|AABB|String|Color|NodePath|PoolByteArray|PoolIntArray|PoolRealArray|PoolStringArray|PoolVector2Array|PoolVector3Array|PoolColorArray|bool|int|float|Signal|Callable|StringName|Quaternion|Projection|PackedByteArray|PackedInt32Array|PackedInt64Array|PackedFloat32Array|PackedFloat64Array|PackedStringArray|PackedVector2Array|PackedVector2iArray|PackedVector3Array|PackedVector3iArray|PackedVector4Array|PackedColorArray|JSON|UPNP|OS|IP|JSONRPC|XRVRS|Variant|void)\\b"},"builtin_get_node_shorthand":{"patterns":[{"include":"#builtin_get_node_shorthand_quoted"},{"include":"#builtin_get_node_shorthand_bare"},{"include":"#builtin_get_node_shorthand_bare_multi"}]},"builtin_get_node_shorthand_bare":{"name":"meta.literal.nodepath.bare.gdscript","captures":{"1":{"name":"keyword.control.flow.gdscript"},"2":{"name":"constant.character.escape.gdscript"},"3":{"name":"constant.character.escape.gdscript"},"4":{"name":"constant.character.escape.gdscript"}}},"builtin_get_node_shorthand_bare_multi":{"name":"meta.literal.nodepath.bare.gdscript","begin":"(\\$\\s*|%|\\$%\\s*)(/\\s*)?([a-zA-Z_]\\w*)","end":"(?!\\s*/\\s*%?\\s*[a-zA-Z_]\\w*)","patterns":[{"match":"(/)\\s*(%)?\\s*([a-zA-Z_]\\w*)\\s*","captures":{"1":{"name":"constant.character.escape.gdscript"},"2":{"name":"keyword.control.flow.gdscript"},"3":{"name":"constant.character.escape.gdscript"}}}],"beginCaptures":{"1":{"name":"keyword.control.flow.gdscript"},"2":{"name":"constant.character.escape.gdscript"},"3":{"name":"constant.character.escape.gdscript"}}},"builtin_get_node_shorthand_quoted":{"name":"string.quoted.gdscript meta.literal.nodepath.gdscript constant.character.escape.gdscript","begin":"(?:(\\$|%)|(\u0026|\\^|@))(\"|')","end":"(\\3)","patterns":[{"name":"keyword.control.flow","match":"%"}],"beginCaptures":{"1":{"name":"keyword.control.flow.gdscript"},"2":{"name":"variable.other.enummember.gdscript"}}},"class_declaration":{"match":"(?\u003c=^class)\\s+([a-zA-Z_]\\w*)\\s*(?=:)","captures":{"1":{"name":"entity.name.type.class.gdscript"},"2":{"name":"class.other.gdscript"}}},"class_enum":{"match":"\\b([A-Z][a-zA-Z_0-9]*)\\.([A-Z_0-9]+)","captures":{"1":{"name":"entity.name.type.class.gdscript"},"2":{"name":"variable.other.enummember.gdscript"}}},"class_is":{"match":"\\s+(is)\\s+([a-zA-Z_]\\w*)","captures":{"1":{"name":"storage.type.is.gdscript"},"2":{"name":"entity.name.type.class.gdscript"}}},"class_name":{"match":"(?\u003c=class_name)\\s+([a-zA-Z_]\\w*(\\.([a-zA-Z_]\\w*))?)","captures":{"1":{"name":"entity.name.type.class.gdscript"},"2":{"name":"class.other.gdscript"}}},"class_new":{"match":"\\b([a-zA-Z_]\\w*).(new)\\(","captures":{"1":{"name":"entity.name.type.class.gdscript"},"2":{"name":"storage.type.new.gdscript"},"3":{"name":"punctuation.parenthesis.begin.gdscript"}}},"comment":{"name":"comment.line.number-sign.gdscript","match":"(##|#).*$\\n?","captures":{"1":{"name":"punctuation.definition.comment.number-sign.gdscript"}}},"compare_operator":{"name":"keyword.operator.comparison.gdscript","match":"\u003c=|\u003e=|==|\u003c|\u003e|!=|!"},"const_vars":{"name":"variable.other.constant.gdscript","match":"\\b([A-Z_][A-Z_0-9]*)\\b"},"control_flow":{"name":"keyword.control.gdscript","match":"\\b(?:if|elif|else|while|break|continue|pass|return|when|yield|await)\\b"},"curly_braces":{"begin":"\\{","end":"\\}","patterns":[{"include":"#base_expression"},{"include":"#any_variable"}],"beginCaptures":{"0":{"name":"punctuation.definition.dict.begin.gdscript"}},"endCaptures":{"0":{"name":"punctuation.definition.dict.end.gdscript"}}},"expression":{"patterns":[{"include":"#getter_setter_godot4"},{"include":"#base_expression"},{"include":"#assignment_operator"},{"include":"#annotations"},{"include":"#class_name"},{"include":"#builtin_classes"},{"include":"#class_new"},{"include":"#class_is"},{"include":"#class_enum"},{"include":"#any_method"},{"include":"#any_variable"},{"include":"#any_property"}]},"extends_statement":{"match":"(extends)\\s+([a-zA-Z_]\\w*\\.[a-zA-Z_]\\w*)?","captures":{"1":{"name":"keyword.language.gdscript"},"2":{"name":"entity.other.inherited-class.gdscript"}}},"func":{"name":"keyword.language.gdscript storage.type.function.gdscript","match":"\\bfunc\\b"},"function_arguments":{"contentName":"meta.function.parameters.gdscript","begin":"(\\()","end":"(?=\\))(?!\\)\\s*\\()","patterns":[{"name":"punctuation.separator.arguments.gdscript","match":"(,)"},{"match":"\\b([a-zA-Z_]\\w*)\\s*(=)(?!=)","captures":{"1":{"name":"variable.parameter.function-call.gdscript"},"2":{"name":"keyword.operator.assignment.gdscript"}}},{"name":"keyword.operator.assignment.gdscript","match":"=(?!=)"},{"include":"#base_expression"},{"match":"\\s*(\\))\\s*(\\()","captures":{"1":{"name":"punctuation.definition.arguments.end.gdscript"},"2":{"name":"punctuation.definition.arguments.begin.gdscript"}}},{"include":"#letter"},{"include":"#any_variable"},{"include":"#any_property"},{"include":"#keywords"}],"beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.gdscript"}}},"function_call":{"name":"meta.function-call.gdscript","begin":"(?=\\b[a-zA-Z_]\\w*\\b\\()","end":"(\\))","patterns":[{"include":"#function_name"},{"include":"#function_arguments"}],"endCaptures":{"1":{"name":"punctuation.definition.arguments.end.gdscript"}}},"function_declaration":{"name":"meta.function.gdscript","begin":"(?x) \\s*\n (func) \\s+\n ([a-zA-Z_]\\w*) \\s*\n (?=\\()","end":"(:)","patterns":[{"include":"#parameters"},{"include":"#line_continuation"},{"include":"#base_expression"}],"beginCaptures":{"1":{"name":"keyword.language.gdscript storage.type.function.gdscript"},"2":{"name":"entity.name.function.gdscript"}},"endCaptures":{"1":{"name":"punctuation.section.function.begin.gdscript"}}},"function_name":{"patterns":[{"include":"#builtin_classes"},{"name":"keyword.language.gdscript","match":"\\b(preload)\\b"},{"name":"entity.name.function.gdscript","match":"\\b([a-zA-Z_]\\w*)\\b"}]},"getter_setter_godot4":{"patterns":[{"name":"meta.variable.declaration.getter.gdscript","match":"(get)\\s*(:)","captures":{"1":{"name":"entity.name.function.gdscript"},"2":{"name":"punctuation.separator.annotation.gdscript"}}},{"name":"meta.variable.declaration.setter.gdscript","match":"(set)\\s*(\\()\\s*([A-Za-z_]\\w*)\\s*(\\))\\s*(:)","captures":{"1":{"name":"entity.name.function.gdscript"},"2":{"name":"punctuation.definition.arguments.begin.gdscript"},"3":{"name":"variable.other.gdscript"},"4":{"name":"punctuation.definition.arguments.end.gdscript"},"5":{"name":"punctuation.separator.annotation.gdscript"}}}]},"in_keyword":{"patterns":[{"begin":"\\b(for)\\b","end":":","patterns":[{"name":"keyword.control.gdscript","match":"\\bin\\b"},{"include":"#base_expression"},{"include":"#any_variable"},{"include":"#any_property"}],"captures":{"1":{"name":"keyword.control.gdscript"}}},{"name":"keyword.operator.wordlike.gdscript","match":"\\bin\\b"}]},"keywords":{"name":"keyword.language.gdscript","match":"\\b(?:class|class_name|is|onready|tool|static|export|as|enum|assert|breakpoint|sync|remote|master|puppet|slave|remotesync|mastersync|puppetsync|trait|namespace|super|self)\\b"},"lambda_declaration":{"name":"meta.function.gdscript","begin":"(func)\\s?(?=\\()","end":"(:|(?=[#'\"\\n]))","patterns":[{"include":"#parameters"},{"include":"#line_continuation"},{"include":"#base_expression"},{"include":"#any_variable"},{"include":"#any_property"}],"beginCaptures":{"1":{"name":"keyword.language.gdscript storage.type.function.gdscript"},"2":{"name":"entity.name.function.gdscript"}}},"letter":{"name":"constant.language.gdscript","match":"\\b(?:true|false|null)\\b"},"line_continuation":{"patterns":[{"match":"(\\\\)\\s*(\\S.*$\\n?)","captures":{"1":{"name":"punctuation.separator.continuation.line.gdscript"},"2":{"name":"invalid.illegal.line.continuation.gdscript"}}},{"begin":"(\\\\)\\s*$\\n?","end":"(?x)\n (?=^\\s*$)\n |\n (?! (\\s* [rR]? (\\'\\'\\'|\\\"\\\"\\\"|\\'|\\\"))\n |\n (\\G $) (?# '\\G' is necessary for ST)\n )\n","patterns":[{"include":"#base_expression"}],"beginCaptures":{"1":{"name":"punctuation.separator.continuation.line.gdscript"}}}]},"loose_default":{"begin":"(=)","end":"(,)|(?=\\))","patterns":[{"include":"#expression"}],"beginCaptures":{"1":{"name":"keyword.operator.gdscript"}},"endCaptures":{"1":{"name":"punctuation.separator.parameters.gdscript"}}},"match_keyword":{"match":"^\n\\s*(match)","captures":{"1":{"name":"keyword.control.gdscript"}}},"nodepath_function":{"name":"meta.function.gdscript","contentName":"meta.function.parameters.gdscript","begin":"(get_node_or_null|has_node|has_node_and_resource|find_node|get_node)\\s*(\\()","end":"(\\))","patterns":[{"name":"string.quoted.gdscript meta.literal.nodepath.gdscript constant.character.escape.gdscript","begin":"(\"|')","end":"\\1","patterns":[{"name":"keyword.control.flow.gdscript","match":"%"}]},{"include":"#expression"}],"beginCaptures":{"1":{"name":"entity.name.function.gdscript"},"2":{"name":"punctuation.definition.parameters.begin.gdscript"}},"endCaptures":{"1":{"name":"punctuation.definition.parameters.end.gdscript"}}},"nodepath_object":{"name":"meta.literal.nodepath.gdscript","begin":"(NodePath)\\s*(?:\\()","end":"(?:\\))","patterns":[{"name":"string.quoted.gdscript constant.character.escape.gdscript","begin":"(\"|')","end":"\\1","patterns":[{"name":"keyword.control.flow.gdscript","match":"%"}]}],"beginCaptures":{"1":{"name":"support.class.library.gdscript"}}},"numbers":{"patterns":[{"name":"constant.numeric.integer.binary.gdscript","match":"0b[01_]+"},{"name":"constant.numeric.integer.hexadecimal.gdscript","match":"0x[0-9A-Fa-f_]+"},{"name":"constant.numeric.float.gdscript","match":"\\.[0-9][0-9_]*([eE][+-]?[0-9_]+)?"},{"name":"constant.numeric.float.gdscript","match":"([0-9][0-9_]*)\\.[0-9_]*([eE][+-]?[0-9_]+)?"},{"name":"constant.numeric.float.gdscript","match":"([0-9][0-9_]*)?\\.[0-9_]*([eE][+-]?[0-9_]+)"},{"name":"constant.numeric.float.gdscript","match":"[0-9][0-9_]*[eE][+-]?[0-9_]+"},{"name":"constant.numeric.integer.gdscript","match":"[-]?[0-9][0-9_]*"}]},"operators":{"patterns":[{"include":"#wordlike_operator"},{"include":"#boolean_operator"},{"include":"#arithmetic_operator"},{"include":"#bitwise_operator"},{"include":"#compare_operator"}]},"parameters":{"name":"meta.function.parameters.gdscript","begin":"(\\()","end":"(\\))","patterns":[{"include":"#annotated_parameter"},{"match":"(?x)\n ([a-zA-Z_]\\w*)\n \\s* (?: (,) | (?=[)#\\n=]))\n","captures":{"1":{"name":"variable.parameter.function.language.gdscript"},"2":{"name":"punctuation.separator.parameters.gdscript"}}},{"include":"#comment"},{"include":"#loose_default"}],"beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.gdscript"}},"endCaptures":{"1":{"name":"punctuation.definition.parameters.end.gdscript"}}},"pascal_case_class":{"name":"entity.name.type.class.gdscript","match":"\\b[A-Z]+(?:[a-z]+[A-Za-z0-9_]*)+\\b"},"region":{"name":"keyword.language.region.gdscript","match":"#(end)?region.*$\\n?"},"round_braces":{"begin":"\\(","end":"\\)","patterns":[{"include":"#base_expression"},{"include":"#any_variable"}],"beginCaptures":{"0":{"name":"punctuation.parenthesis.begin.gdscript"}},"endCaptures":{"0":{"name":"punctuation.parenthesis.end.gdscript"}}},"signal_declaration":{"name":"meta.signal.gdscript","begin":"(?x) \\s*\n (signal) \\s+\n ([a-zA-Z_]\\w*) \\s*\n (?=\\()","end":"((?=[#'\"\\n]))","patterns":[{"include":"#parameters"},{"include":"#line_continuation"}],"beginCaptures":{"1":{"name":"keyword.language.gdscript storage.type.function.gdscript"},"2":{"name":"entity.name.function.gdscript"}}},"signal_declaration_bare":{"name":"meta.signal.gdscript","match":"(?x) \\s*\n (signal) \\s+\n ([a-zA-Z_]\\w*)(?=[\\n\\s])","captures":{"1":{"name":"keyword.language.gdscript storage.type.function.gdscript"},"2":{"name":"entity.name.function.gdscript"}}},"square_braces":{"begin":"\\[","end":"\\]","patterns":[{"include":"#base_expression"},{"include":"#any_variable"}],"beginCaptures":{"0":{"name":"punctuation.definition.list.begin.gdscript"}},"endCaptures":{"0":{"name":"punctuation.definition.list.end.gdscript"}}},"statement":{"patterns":[{"include":"#extends_statement"}]},"statement_keyword":{"patterns":[{"name":"keyword.control.flow.gdscript","match":"(?x)\n \\b(?\u003c!\\.)(\n continue | assert | break | elif | else | if | pass | return | while )\\b\n"},{"name":"storage.type.class.gdscript","match":"\\b(?\u003c!\\.)(class)\\b"},{"match":"(?x)\n ^\\s*(\n case | match\n )(?=\\s*([-+\\w\\d(\\[{'\":#]|$))\\b\n","captures":{"1":{"name":"keyword.control.flow.gdscript"}}}]},"string_bracket_placeholders":{"patterns":[{"name":"meta.format.brace.gdscript","match":"(?x)\n (\n {{ | }}\n | (?:\n {\n \\w* (\\.[[:alpha:]_]\\w* | \\[[^\\]'\"]+\\])*\n (![rsa])?\n ( : \\w? [\u003c\u003e=^]? [-+ ]? \\#?\n \\d* ,? (\\.\\d+)? [bcdeEfFgGnosxX%]? )?\n })\n )\n","captures":{"1":{"name":"constant.character.format.placeholder.other.gdscript"},"3":{"name":"storage.type.format.gdscript"},"4":{"name":"storage.type.format.gdscript"}}},{"name":"meta.format.brace.gdscript","match":"(?x)\n (\n {\n \\w* (\\.[[:alpha:]_]\\w* | \\[[^\\]'\"]+\\])*\n (![rsa])?\n (:)\n [^'\"{}\\n]* (?:\n \\{ [^'\"}\\n]*? \\} [^'\"{}\\n]*\n )*\n }\n )\n","captures":{"1":{"name":"constant.character.format.placeholder.other.gdscript"},"3":{"name":"storage.type.format.gdscript"},"4":{"name":"storage.type.format.gdscript"}}}]},"string_percent_placeholders":{"name":"meta.format.percent.gdscript","match":"(?x)\n (\n % (\\([\\w\\s]*\\))?\n [-+#0 ]*\n (\\d+|\\*)? (\\.(\\d+|\\*))?\n ([hlL])?\n [diouxXeEfFgGcrsab%]\n )\n","captures":{"1":{"name":"constant.character.format.placeholder.other.gdscript"}}},"strings":{"name":"string.quoted.gdscript","begin":"(r)?(\"\"\"|'''|\"|')","end":"\\2","patterns":[{"name":"constant.character.escape.gdscript","match":"\\\\."},{"include":"#string_percent_placeholders"},{"include":"#string_bracket_placeholders"}],"beginCaptures":{"1":{"name":"constant.character.escape.gdscript"}}},"variable_declaration":{"name":"meta.variable.declaration.gdscript","begin":"\\b(?:(var)|(const))\\b","end":"$|;","patterns":[{"match":"(:)?\\s*(set|get)\\s+=\\s+([a-zA-Z_]\\w*)","captures":{"1":{"name":"punctuation.separator.annotation.gdscript"},"2":{"name":"entity.name.function.gdscript"},"3":{"name":"entity.name.function.gdscript"}}},{"name":"keyword.operator.assignment.gdscript","match":":=|=(?!=)"},{"match":"(:)\\s*([a-zA-Z_]\\w*)?","captures":{"1":{"name":"punctuation.separator.annotation.gdscript"},"2":{"name":"entity.name.type.class.gdscript"}}},{"match":"(setget)\\s+([a-zA-Z_]\\w*)(?:[,]\\s*([a-zA-Z_]\\w*))?","captures":{"1":{"name":"keyword.language.gdscript"},"2":{"name":"entity.name.function.gdscript"},"3":{"name":"entity.name.function.gdscript"}}},{"include":"#expression"},{"include":"#letter"},{"include":"#any_variable"},{"include":"#any_property"},{"include":"#keywords"}],"beginCaptures":{"1":{"name":"keyword.language.gdscript storage.type.var.gdscript"},"2":{"name":"keyword.language.gdscript storage.type.const.gdscript"}}},"wordlike_operator":{"name":"keyword.operator.wordlike.gdscript","match":"\\b(and|or|not)\\b"}}}
|
@@ -1 +1 @@
|
|
1
|
-
{"name":"Git Revision List","scopeName":"source.git-revlist","patterns":[{"include":"#main"}],"repository":{"comment":{"name":"comment.line.number-sign.git-revlist","begin":"#","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment.git-revlist"}}},"invalid":{"name":"invalid.illegal.git-revlist","match":"\\S.*?
|
1
|
+
{"name":"Git Revision List","scopeName":"source.git-revlist","patterns":[{"include":"#main"}],"repository":{"comment":{"name":"comment.line.number-sign.git-revlist","begin":"#","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment.git-revlist"}}},"invalid":{"name":"invalid.illegal.git-revlist","match":"\\S.*?"},"main":{"patterns":[{"include":"#comment"},{"include":"#sha"},{"include":"#invalid"}]},"sha":{"name":"constant.numeric.sha.git-revlist","match":"\\b[0-9a-fA-F]{40}\\b"}}}
|
@@ -1 +1 @@
|
|
1
|
-
{"name":"Ignore List","scopeName":"source.gitignore","patterns":[{"include":"#main"}],"repository":{"bazaarPrefixes":{"patterns":[{"name":"storage.modifier.bazaar.re-prefix.gitignore","match":"^RE(:)(?=\\S)"},{"name":"keyword.operator.logical.not.negation.elevated.bazaar.gitignore","match":"^!!(?=\\S)"}]},"comment":{"name":"comment.line.number-sign.gitignore","begin":"#","end":"$","beginCaptures":{"
|
1
|
+
{"name":"Ignore List","scopeName":"source.gitignore","patterns":[{"include":"#main"}],"repository":{"bazaarPrefixes":{"patterns":[{"name":"storage.modifier.bazaar.re-prefix.gitignore","match":"^RE(:)(?=\\S)"},{"name":"keyword.operator.logical.not.negation.elevated.bazaar.gitignore","match":"^!!(?=\\S)"}]},"comment":{"name":"comment.line.number-sign.gitignore","begin":"^\\s*(#)","end":"$","beginCaptures":{"1":{"name":"punctuation.definition.comment.gitignore"}}},"cvsSyntax":{"match":"\\A(syntax)(:)\\s+(glob)$","captures":{"1":{"name":"variable.parameter.assignment.glob-syntax.cvs.gitignore"},"2":{"name":"keyword.operator.assignment.separator.key-value.cvs.gitignore"},"3":{"name":"support.constant.language.syntax-type.cvs.gitignore"}}},"escape":{"name":"constant.character.escape.backslash.gitignore","match":"(\\\\).","captures":{"1":{"name":"punctuation.definition.escape.backslash.gitignore"}}},"magic":{"patterns":[{"name":"meta.magic-signature.long.gitignore","begin":"^(:)(\\()(?=.*?\\))","end":"(?\u003c!\\\\)\\)|(?=\\s*$)","patterns":[{"include":"#escape"},{"include":"#magicInnards"}],"beginCaptures":{"1":{"name":"keyword.operator.signature.begin.gitignore"},"2":{"name":"punctuation.section.signature.begin.gitignore"}},"endCaptures":{"0":{"name":"punctuation.section.signature.end.gitignore"}}},{"name":"meta.magic-signature.short.gitignore","match":"^(:)([!^]+)","captures":{"1":{"name":"keyword.operator.signature.begin.gitignore"},"2":{"name":"keyword.operator.mnemonic.gitignore"}}}]},"magicInnards":{"patterns":[{"include":"etc#comma"},{"name":"meta.attribute-list.gitignore","begin":"(?:\\G|(?\u003c=,|\\())(attr)(:)","end":"(?=,|\\)|$)","patterns":[{"name":"meta.attribute.gitignore","match":"(-|!)?((?:[^\\\\\\s=\\(\\),]|\\\\.)++)(?:(=)((?:[^\\\\\\s=\\(\\),]|\\\\.)*+))?","captures":{"1":{"patterns":[{"include":"#magicMnemonic"}]},"2":{"name":"variable.parameter.attribute.gitignore","patterns":[{"include":"#escape"}]},"3":{"name":"punctuation.definition.assignment.equals-sign.gitignore"},"4":{"name":"constant.language.other.gitignore","patterns":[{"include":"#escape"}]}}}],"beginCaptures":{"1":{"name":"keyword.control.magic-signature.$1.gitignore"},"2":{"patterns":[{"include":"etc#colon"}]}}},{"name":"meta.$1-attribute.gitignore","match":"(?:\\G|(?\u003c=,|\\())(-|!)?(attr|exclude|glob|icase|literal|top)(?=,|\\))","captures":{"1":{"patterns":[{"include":"#magicMnemonic"}]},"2":{"name":"keyword.control.magic-signature.$2.gitignore"}}},{"name":"meta.unknown-attribute.gitignore","match":"(?:\\G|(?\u003c=,|\\())(-|!)?((?:[^\\\\=\\s,:\\)]|\\\\.)++)(?=,|\\))","captures":{"1":{"patterns":[{"include":"#magicMnemonic"}]},"2":{"name":"keyword.control.magic-signature.unknown.gitignore"}}}]},"magicMnemonic":{"patterns":[{"name":"keyword.operator.logical.not.negation.gitignore","match":"-"},{"name":"keyword.operator.unset.delete.gitignore","match":"!"}]},"main":{"patterns":[{"include":"#comment"},{"include":"#cvsSyntax"},{"include":"#magic"},{"include":"#pattern"},{"include":"#escape"}]},"pattern":{"name":"meta.pattern.gitignore","begin":"(?=[^#\\s])","end":"$|(?=#)","patterns":[{"include":"#bazaarPrefixes"},{"include":"#patternInnards"}]},"patternInnards":{"patterns":[{"include":"#escape"},{"include":"#range"},{"name":"keyword.operator.logical.not.negation.gitignore","match":"\\G!"},{"name":"keyword.operator.glob.wildcard.globstar.gitignore","match":"\\*\\*"},{"name":"keyword.operator.glob.wildcard.gitignore","match":"[*?]"},{"name":"punctuation.directory.separator.meta.gitignore","match":"/"},{"name":"entity.other.file.name.gitignore","match":"[^\\[\\]\\\\*?#/\\s]+"}]},"range":{"name":"meta.character-range.gitignore","contentName":"constant.character.class.gitignore","begin":"\\[","end":"\\]|(?=$)","patterns":[{"include":"#escape"},{"name":"punctuation.delimiter.range.character-set.gitignore","match":"-"}],"beginCaptures":{"0":{"name":"punctuation.definition.square.bracket.begin.gitignore"}},"endCaptures":{"0":{"name":"punctuation.definition.square.bracket.end.gitignore"}}}}}
|
data/grammars/source.gleam.json
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"name":"Gleam","scopeName":"source.gleam","patterns":[{"include":"#comments"},{"include":"#keywords"},{"include":"#strings"},{"include":"#constant"},{"include":"#entity"},{"include":"#discards"}],"repository":{"binary_number":{"name":"constant.numeric.binary.gleam","match":"\\b0[bB]
|
1
|
+
{"name":"Gleam","scopeName":"source.gleam","patterns":[{"include":"#comments"},{"include":"#keywords"},{"include":"#strings"},{"include":"#constant"},{"include":"#entity"},{"include":"#discards"}],"repository":{"binary_number":{"name":"constant.numeric.binary.gleam","match":"\\b0[bB][01_]*\\b"},"comments":{"patterns":[{"name":"comment.line.gleam","match":"//.*"}]},"constant":{"patterns":[{"include":"#binary_number"},{"include":"#octal_number"},{"include":"#hexadecimal_number"},{"include":"#decimal_number"},{"name":"entity.name.type.gleam","match":"[[:upper:]][[:alnum:]]*"}]},"decimal_number":{"name":"constant.numeric.decimal.gleam","match":"\\b([0-9][0-9_]*)(\\.([0-9_]*)?(e-?[0-9]+)?)?\\b"},"discards":{"name":"comment.unused.gleam","match":"\\b_(?:[[:word:]]+)?\\b"},"entity":{"patterns":[{"begin":"\\b([[:lower:]][[:word:]]*)\\b[[:space:]]*\\(","end":"\\)","patterns":[{"include":"$self"}],"captures":{"1":{"name":"entity.name.function.gleam"}}},{"name":"variable.parameter.gleam","match":"\\b([[:lower:]][[:word:]]*):\\s"},{"name":"entity.name.namespace.gleam","match":"\\b([[:lower:]][[:word:]]*):"}]},"hexadecimal_number":{"name":"constant.numeric.hexadecimal.gleam","match":"\\b0[xX][0-9a-fA-F_]+\\b"},"keywords":{"patterns":[{"name":"keyword.control.gleam","match":"\\b(as|use|case|if|fn|import|let|assert|pub|type|opaque|const|todo|panic|else|echo)\\b"},{"name":"keyword.operator.arrow.gleam","match":"(\u003c\\-|\\-\u003e)"},{"name":"keyword.operator.pipe.gleam","match":"\\|\u003e"},{"name":"keyword.operator.splat.gleam","match":"\\.\\."},{"name":"keyword.operator.comparison.gleam","match":"(==|!=)"},{"name":"keyword.operator.comparison.float.gleam","match":"(\u003c=\\.|\u003e=\\.|\u003c\\.|\u003e\\.)"},{"name":"keyword.operator.comparison.int.gleam","match":"(\u003c=|\u003e=|\u003c|\u003e)"},{"name":"keyword.operator.logical.gleam","match":"(\u0026\u0026|\\|\\|)"},{"name":"keyword.operator.string.gleam","match":"\u003c\u003e"},{"name":"keyword.operator.other.gleam","match":"\\|"},{"name":"keyword.operator.arithmetic.float.gleam","match":"(\\+\\.|\\-\\.|/\\.|\\*\\.)"},{"name":"keyword.operator.arithmetic.int.gleam","match":"(\\+|\\-|/|\\*|%)"},{"name":"keyword.operator.assignment.gleam","match":"="}]},"octal_number":{"name":"constant.numeric.octal.gleam","match":"\\b0[oO][0-7_]*\\b"},"strings":{"name":"string.quoted.double.gleam","begin":"\"","end":"\"","patterns":[{"name":"constant.character.escape.gleam","match":"\\\\."}]}}}
|
@@ -1 +1 @@
|
|
1
|
-
{"name":"harbour","scopeName":"source.harbour","patterns":[{"include":"#block_doc_comment"},{"include":"#block_comment"},{"include":"#line_doc_comment"},{"include":"#line_comment"},{"include":"#
|
1
|
+
{"name":"harbour","scopeName":"source.harbour","patterns":[{"include":"#block_doc_comment"},{"include":"#block_comment"},{"include":"#line_doc_comment"},{"include":"#line_comment"},{"include":"#sigils"},{"name":"meta.attribute.harbour","begin":"#\\!?\\[","end":"\\]","patterns":[{"include":"#string_literal"}]},{"name":"string.quoted.single.harbour","match":"'([^'\\\\]|\\\\(x[[:xdigit:]]{2}|[0-2][0-7]{,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.))'"},{"include":"#string_literal"},{"name":"constant.numeric.float.harbour","match":"\\b[0-9][0-9_]*\\.[0-9][0-9_]*([eE][+-][0-9_]+)?(f32|f64)?\\b"},{"name":"constant.numeric.float.harbour","match":"\\b[0-9][0-9_]*(\\.[0-9][0-9_]*)?[eE][+-][0-9_]+(f32|f64)?\\b"},{"name":"constant.numeric.float.harbour","match":"\\b[0-9][0-9_]*(\\.[0-9][0-9_]*)?([eE][+-][0-9_]+)?(f32|f64)\\b"},{"name":"constant.numeric.integer.decimal.harbour","match":"\\b[0-9][0-9_]*([ui](8|16|32|64)?)?\\b"},{"name":"constant.numeric.integer.hexadecimal.harbour","match":"\\b0x[a-fA-F0-9_]+([ui](8|16|32|64)?)?\\b"},{"name":"constant.numeric.integer.octal.harbour","match":"\\b0o[0-7_]+([ui](8|16|32|64)?)?\\b"},{"name":"constant.numeric.integer.binary.harbour","match":"\\b0b[01_]+([ui](8|16|32|64)?)?\\b"},{"name":"storage.modifier.static.harbour","match":"\\b(static|STATIC|THREAD STATIC)\\b"},{"name":"constant.language.boolean.harbour","match":"(TRUE|FALSE|\\.T\\.|\\.F\\.)"},{"name":"constant.language.keyboard.harbour","match":"(K_DOWN|K_PGDN|K_CTRL_PGDN|K_UP|K_PGUP|K_CTRL_PGUP|K_RIGHT|K_LEFT|K_HOME|K_END|K_CTRL_LEFT|K_CTRL_RIGHT|K_CTRL_HOME|K_CTRL_END)"},{"name":"variable.name.hungary.harbour","match":"\\b(s_)?(mtx)?[a,b,c,d,h,l,n,o,u,x][A-Z][A-Za-z0-9_]*\\b"},{"name":"variable.name.special.harbour","match":"\\b_[a-z][A-Za-z0-9_]*|\\s(i|j)\\s\\b"},{"name":"keyword.control.harbour","match":"\\b(EXIT|ELSEIF|ELSE|IF|ENDIF|FOR|EACH|IN|TO|STEP|DESCEND|NEXT|LOOP|DO CASE|ENDCASE|SWITCH|CASE|OTHERWISE|ENDSWITCH|RETURN|ENDCLASS|VAR|DATA|INIT|WHILE|DO WHILE|ENDDO|BEGIN SEQUENCE|END SEQUENCE|RECOVER USING|WITH|BREAK|PARAMETERS|END|REQUEST|ANNOUNCE)\\b"},{"name":"keyword.command.xbase.harbour","match":"\\b(GO TOP|SELECT|SAY|GET|PICTURE|SEEK|REPLACE|APPEND BLANK|USE|INDEX ON|TAG)\\b"},{"name":"keyword.command.xbase.harbour","match":"\\b(HSEEK|RREPLACE|START PRINT|ENDPRINT)\\b"},{"name":"keyword.other.harbour","match":"\\b(LOCAL|PRIVATE|PROTECTED|PUBLIC|FIELD|field|MEMVAR)\\b"},{"include":"#types"},{"include":"#std_types"},{"include":"#self"},{"include":"#nil"},{"include":"#lifetime"},{"include":"#ref_lifetime"},{"name":"meta.preprocessor.diagnostic.harbour","begin":"^\\s*#\\s*(error|warning|stdout)\\b","end":"(?\u003c!\\\\)(?=\\n)","patterns":[{"name":"punctuation.separator.continuation.harbour","match":"(?\u003e\\\\\\s*\\n)"}],"captures":{"1":{"name":"keyword.control.import.error.harbour"}}},{"name":"meta.preprocessor.harbour.include","begin":"^\\s*#\\s*(include|require)\\b\\s+","end":"(?=(?://|/\\*))|(?\u003c!\\\\)(?=\\n)","patterns":[{"name":"punctuation.separator.continuation.harbour","match":"(?\u003e\\\\\\s*\\n)"},{"name":"string.quoted.double.include.harbour","begin":"\"","end":"\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.harbour"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.harbour"}}},{"name":"string.quoted.other.lt-gt.include.harbour","begin":"\u003c","end":"\u003e","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.harbour"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.harbour"}}}],"captures":{"1":{"name":"keyword.control.import.include.harbour"}}},{"name":"meta.preprocessor.harbour","begin":"^\\s*#\\s*(define|defined|elif|else|if|ifdef|ifndef|endif|line|pragma|undef|command|xcommand|translate|xtranslate)\\b","end":"(?=(?://|/\\*))|(?\u003c!\\\\)(?=\\n)","patterns":[{"name":"punctuation.separator.continuation.harbour","match":"(?\u003e\\\\\\s*\\n)"}],"captures":{"1":{"name":"keyword.control.import.harbour"}}},{"name":"keyword.operator.assignment.harbour","match":"(:=|-\u003e|\\+=|-=)"},{"name":"keyword.operator.comparison.harbour","match":"(\\\u003c=|\u003e=|==|!=|!|\\\u003c\u003e|\\\u003c|\u003e|\\$|\\s\\.OR\\.\\s|\\s\\.AND\\.\\s|\\s\\.NOT\\.\\s)"},{"name":"support.function.std.harbour","match":"\\b(log_write|pp|to_str|RTrim|TRIM|Trim|PadR|Padr|PADR|PadC|PadL)!"},{"match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\s*\\(","captures":{"1":{"name":"entity.name.function.harbour"}}},{"match":"\\b([a-zA-Z_][a-zA-Z0-9_]*):([a-zA-Z_][a-zA-Z0-9_]*)\\s*\\(","captures":{"1":{"name":"entity.name.method.harbour"}}},{"match":"\\b([a-zA-Z_][a-zA-Z0-9_]*):([a-zA-Z_][a-zA-Z0-9_]*)","captures":{"1":{"name":"variable.name.object.harbour"},"2":{"name":"variable.name.member.harbour"}}},{"begin":"\\b(FUNCTION|STATIC FUNCTION|PROCEDURE|STATIC PROCEDURE|INIT PROCEDURE|EXIT PROCEDURE)\\s+([a-zA-Z_][a-zA-Z0-9_]*)","end":"[\\n]","patterns":[{"include":"#type_params"},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.other.fn.harbour"},"2":{"name":"entity.name.function.harbour"}}},{"begin":"\\b((?:CREATE\\s+)?(?:CLASS))\\s+([a-zA-Z_][a-zA-Z0-9_]*)(?:\\s+(INHERIT)\\s+([a-zA-Z_][a-zA-Z0-9_]*))?","end":"[\\n]","patterns":[{"include":"#type_params"},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.class.harbour"},"2":{"name":"entity.name.class.harbour"},"3":{"name":"keyword.class.inherit.harbour"},"4":{"name":"entity.name.parent.class.harbour"}}},{"begin":"\\b(METHOD|STATIC METHOD|METHOD PROCEDURE)\\s+((?:(?:[a-zA-Z_][a-zA-Z0-9_]*):)?(?:[a-zA-Z_][a-zA-Z0-9_]*))","end":"[\\n]","patterns":[{"include":"#type_params"},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.method.fn.harbour"},"2":{"name":"entity.name.method.harbour"}}},{"begin":":","end":"[=;,\\)\\|]","patterns":[{"include":"#type_params"},{"include":"$self"}]}],"repository":{"block_comment":{"name":"comment.block.harbour","begin":"/\\*","end":"\\*/","patterns":[{"include":"#block_doc_comment"},{"include":"#block_comment"}]},"block_doc_comment":{"name":"comment.block.documentation.harbour","begin":"/\\*[!\\*][^\\*]","end":"\\*/","patterns":[{"include":"#block_doc_comment"},{"include":"#block_comment"}]},"escaped_character":{"name":"constant.character.escape.harbour","match":"\\\\(x[[:xdigit:]]{2}|[0-2][0-7]{,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.)"},"line_comment":{"name":"comment.line.double-slash.harbour","match":"//.*$"},"line_doc_comment":{"name":"comment.line.documentation.harbour","match":"//[!/][^/].*$"},"nil":{"name":"variable.nil.language.harbour","match":"\\b(NIL|nil)\\b"},"self":{"name":"variable.self.language.harbour","match":"\\b(Self|SELF|self)\\b"},"sigils":{"name":"keyword.operator.sigil.harbou","match":"[@]|[:]{2}|[+]{2}(?=[a-zA-Z0-9_\\(\\[\\|\\\"]+)"},"std_types":{"name":"support.class.std.harbour","match":"\\b(Vec|StrBuf|Path|Option|Result|Reader|Writer|Stream|Seek|Buffer|IoError|IoResult|Sender|SyncSender|Receiver|Cell|RefCell|Any)\\b"},"string_literal":{"name":"string.quoted.double.harbour","begin":"\"","end":"\"","patterns":[{"include":"#escaped_character"}]},"type_params":{"name":"meta.type_params.harbour","begin":"\u003c","end":"\u003e","patterns":[{"include":"#block_comment"},{"include":"#line_comment"},{"include":"#sigils"},{"include":"#types"},{"include":"#std_types"},{"include":"#lifetime"},{"include":"#type_params"}]}}}
|
@@ -1 +1 @@
|
|
1
|
-
{"name":"HTTP Spec","scopeName":"source.httpspec","patterns":[{"name":"meta.request.httpspec","patterns":[{"include":"#request"},{"match":"^$"},{"include":"#response"}]}],"repository":{"ampersand":{"patterns":[{"name":"support.function.ampersand.httpspec","match":"(?\u003c!\\\u0026)\\\u0026(?!\\\u0026)"}]},"closingbracket":{"patterns":[{"name":"keyword.other.multiplexend.httpspec","match":"\\]"}]},"comma":{"patterns":[{"name":"keyword.other.comma.httpspec.test","match":"\\,"}]},"emptyline":{"patterns":[{"match":"^\\s*$"}]},"equals":{"patterns":[{"name":"support.function.keyvaluepairseparator.httpspec","match":"\\="}]},"header":{"patterns":[{"name":"string.unquoted.uri.httpspec","match":"^([^()\u003c\u003e@,;:\\\\\"{} \\t\\x00-\\x1F\\x7F]+\\:)\\s(.*)$","captures":{"1":{"name":"variable.parameter.headername.httpspec"}}}]},"invalidcomma":{"patterns":[{"name":"invalid.illegal.comma.httpspec","match":"^\\,|\\,(?=\\s)"}]},"jsonblock":{"patterns":[{"include":"source.json"}]},"methodlist":{"patterns":[{"include":"#methodname"},{"include":"#invalidcomma"},{"include":"#comma"}]},"methodname":{"patterns":[{"name":"keyword.other.method.httpspec","match":"(?:\\b)(ACL|BASELINE-CONTROL|BIND|CHECKIN|CHECKOUT|CONNECT|COPY|DELETE|GET|HEAD|LABEL|LINK|LOCK|MERGE|MKACTIVITY|MKCALENDAR|MKCOL|MKREDIRECTREF|MKWORKSPACE|MOVE|OPTIONS|ORDERPATCH|PATCH|POST|PRI|PROPFIND|PROPPATCH|PUT|REBIND|REPORT|SEARCH|TRACE|UNBIND|UNCHECKOUT|UNLINK|UNLOCK|UPDATE|UPDATEREDIRECTREF|VERSION-CONTROL)"}]},"multiplex":{"begin":"(\\[)","end":"\\]","patterns":[{"include":"#uripart"},{"include":"#comma"}],"beginCaptures":{"0":{"name":"keyword.other"}},"endCaptures":{"0":{"name":"keyword.other"}}},"namevaluepair":{"patterns":[{"include":"#uriqueryname"},{"include":"#equals"},{"include":"#uriqueryvalue"}]},"openingbracket":{"patterns":[{"name":"keyword.other.multiplexstart.httpspec","match":"\\["}]},"questionmark":{"patterns":[{"name":"support.function.queryseparator.httpspec","match":"\\?"}]},"request":{"patterns":[{"begin":"^(?=ACL|BASELINE-CONTROL|BIND|CHECKIN|CHECKOUT|CONNECT|COPY|DELETE|GET|HEAD|LABEL|LINK|LOCK|MERGE|MKACTIVITY|MKCALENDAR|MKCOL|MKREDIRECTREF|MKWORKSPACE|MOVE|OPTIONS|ORDERPATCH|PATCH|POST|PRI|PROPFIND|PROPPATCH|PUT|REBIND|REPORT|SEARCH|TRACE|UNBIND|UNCHECKOUT|UNLINK|UNLOCK|UPDATE|UPDATEREDIRECTREF|VERSION-CONTROL\n)","end":"^(?=\\d\\d\\d|HTTP)","patterns":[{"include":"#requestline"},{"include":"#header"},{"include":"#jsonblock"}]}]},"requestline":{"patterns":[{"include":"#methodlist"},{"include":"#uri"}]},"response":{"patterns":[{"include":"#statusline"},{"include":"#header"},{"include":"#jsonblock"}]},"statusline":{"patterns":[{"match":"^(\\d\\d\\d)\\s(.*)$","captures":{"0":{"name":"constant.language.statustext.httpspec"}}},{"match":"^HTTP/(1\\.1|2|3)\\s(\\d\\d\\d)\\s(.*)$","captures":{"0":{"name":"constant.language.statustext.httpspec"}}}]},"uri":{"patterns":[{"include":"#uriabsolute"},{"include":"#uripath"},{"include":"#multiplex"},{"include":"#questionmark"},{"include":"#uriquery"}]},"uriabsolute":{"patterns":[{"name":"support.function.httpspec","begin":"(?:\\s)(https?):\\/\\/((?:(?:[A-Za-z0-9\\-]{1,63})\\.)*(?:[A-Za-z0-9\\-]{1,63}))","end":"(?:$)","patterns":[{"include":"#uripart"},{"include":"#multiplex"}]}]},"uripart":{"patterns":[{"match":"([a-bA-B0-9\\-_/]+)"}]},"uripath":{"patterns":[{"name":"support.function.httpspec","begin":"(?:\\s)\\/","end":"(?:$)","patterns":[{"include":"#uripart"},{"include":"#multiplex"}]}]},"uriquery":{"patterns":[{"include":"#namevaluepair"},{"include":"#ampersand"}]},"uriqueryname":{"patterns":[{"name":"support.function.uriqueryname.httpspec","match":"(?\u003c=[?\u0026])([^=\u0026])+"}]},"uriqueryvalue":{"patterns":[{"name":"support.function.uriqueryvalue.httpspec","match":"(?\u003c=\\=)([^=\u0026]+)"}]}}}
|
1
|
+
{"name":"HTTP Spec","scopeName":"source.httpspec","patterns":[{"name":"meta.request.httpspec","patterns":[{"include":"#request"},{"match":"^$"},{"include":"#response"}]}],"repository":{"ampersand":{"patterns":[{"name":"support.function.ampersand.httpspec","match":"(?\u003c!\\\u0026)\\\u0026(?!\\\u0026)"}]},"closingbracket":{"patterns":[{"name":"keyword.other.multiplexend.httpspec","match":"\\]"}]},"comma":{"patterns":[{"name":"keyword.other.comma.httpspec.test","match":"\\,"}]},"emptyline":{"patterns":[{"match":"^\\s*$"}]},"equals":{"patterns":[{"name":"support.function.keyvaluepairseparator.httpspec","match":"\\="}]},"header":{"patterns":[{"name":"string.unquoted.uri.httpspec","match":"^([^()\u003c\u003e@,;:\\\\\"{} \\t\\x00-\\x1F\\x7F]+\\:)\\s(.*)$","captures":{"1":{"name":"variable.parameter.headername.httpspec"}}}]},"invalidcomma":{"patterns":[{"name":"invalid.illegal.comma.httpspec","match":"^\\,|\\,(?=\\s)"}]},"jsonblock":{"patterns":[{"include":"source.json"}]},"methodlist":{"patterns":[{"include":"#methodname"},{"include":"#invalidcomma"},{"include":"#comma"}]},"methodname":{"patterns":[{"name":"keyword.other.method.httpspec","match":"(?:\\b)(ACL|BASELINE-CONTROL|BIND|CHECKIN|CHECKOUT|CONNECT|COPY|DELETE|GET|HEAD|LABEL|LINK|LOCK|MERGE|MKACTIVITY|MKCALENDAR|MKCOL|MKREDIRECTREF|MKWORKSPACE|MOVE|OPTIONS|ORDERPATCH|PATCH|POST|PRI|PROPFIND|PROPPATCH|PUT|QUERY|REBIND|REPORT|SEARCH|TRACE|UNBIND|UNCHECKOUT|UNLINK|UNLOCK|UPDATE|UPDATEREDIRECTREF|VERSION-CONTROL)"}]},"multiplex":{"begin":"(\\[)","end":"\\]","patterns":[{"include":"#uripart"},{"include":"#comma"}],"beginCaptures":{"0":{"name":"keyword.other"}},"endCaptures":{"0":{"name":"keyword.other"}}},"namevaluepair":{"patterns":[{"include":"#uriqueryname"},{"include":"#equals"},{"include":"#uriqueryvalue"}]},"openingbracket":{"patterns":[{"name":"keyword.other.multiplexstart.httpspec","match":"\\["}]},"questionmark":{"patterns":[{"name":"support.function.queryseparator.httpspec","match":"\\?"}]},"request":{"patterns":[{"begin":"^(?=ACL|BASELINE-CONTROL|BIND|CHECKIN|CHECKOUT|CONNECT|COPY|DELETE|GET|HEAD|LABEL|LINK|LOCK|MERGE|MKACTIVITY|MKCALENDAR|MKCOL|MKREDIRECTREF|MKWORKSPACE|MOVE|OPTIONS|ORDERPATCH|PATCH|POST|PRI|PROPFIND|PROPPATCH|PUT|QUERY|REBIND|REPORT|SEARCH|TRACE|UNBIND|UNCHECKOUT|UNLINK|UNLOCK|UPDATE|UPDATEREDIRECTREF|VERSION-CONTROL\n)","end":"^(?=\\d\\d\\d|HTTP)","patterns":[{"include":"#requestline"},{"include":"#header"},{"include":"#jsonblock"}]}]},"requestline":{"patterns":[{"include":"#methodlist"},{"include":"#uri"}]},"response":{"patterns":[{"include":"#statusline"},{"include":"#header"},{"include":"#jsonblock"}]},"statusline":{"patterns":[{"match":"^(\\d\\d\\d)\\s(.*)$","captures":{"0":{"name":"constant.language.statustext.httpspec"}}},{"match":"^HTTP/(1\\.1|2|3)\\s(\\d\\d\\d)\\s(.*)$","captures":{"0":{"name":"constant.language.statustext.httpspec"}}}]},"uri":{"patterns":[{"include":"#uriabsolute"},{"include":"#uripath"},{"include":"#multiplex"},{"include":"#questionmark"},{"include":"#uriquery"}]},"uriabsolute":{"patterns":[{"name":"support.function.httpspec","begin":"(?:\\s)(https?):\\/\\/((?:(?:[A-Za-z0-9\\-]{1,63})\\.)*(?:[A-Za-z0-9\\-]{1,63}))","end":"(?:$)","patterns":[{"include":"#uripart"},{"include":"#multiplex"}]}]},"uripart":{"patterns":[{"match":"([a-bA-B0-9\\-_/]+)"}]},"uripath":{"patterns":[{"name":"support.function.httpspec","begin":"(?:\\s)\\/","end":"(?:$)","patterns":[{"include":"#uripart"},{"include":"#multiplex"}]}]},"uriquery":{"patterns":[{"include":"#namevaluepair"},{"include":"#ampersand"}]},"uriqueryname":{"patterns":[{"name":"support.function.uriqueryname.httpspec","match":"(?\u003c=[?\u0026])([^=\u0026])+"}]},"uriqueryvalue":{"patterns":[{"name":"support.function.uriqueryvalue.httpspec","match":"(?\u003c=\\=)([^=\u0026]+)"}]}}}
|
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":{"2":{"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":{"2":{"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":{"2":{"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(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-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-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":"#punctuation-comma"},{"include":"#global"}]},"parameter-assign":{"begin":"=","end":"(?=\\)|,)","patterns":[{"include":"#block"},{"include":"#block-contents"}],"beginCaptures":{"0":{"name":"keyword.operator.assignment.hx"}}},"parameter-name":{"begin":"(?\u003c=\\(|,)","end":"([_a-zA-Z]\\w*)","patterns":[{"include":"#global"},{"include":"#metadata"},{"include":"#operator-optional"}],"endCaptures":{"1":{"name":"variable.parameter.hx"}}},"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"}],"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"},{"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"}}}}}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"name":"ILECOBOL","scopeName":"source.ilecobol","patterns":[{"name":"comment.1.block.ilecobol.remark","begin":"(?\u003c![-_a-zA-Z0-9()-])(?i:remarks\\.)","end":"(?i:end\\-remark|\\*{Bench}end|environment\\s+division|data\\s+division|working-storage\\s+section|file-control)","beginCaptures":{"0":{"name":"keyword.ilecobol"}},"endCaptures":{"0":{"name":"keyword.ilecobol"}}},{"name":"variable.language","match":"(?\u003c![-_])(?i:format-of|acquire|alias|background-colour|beep|commitment|control-area|crt-under|cursor|db-format-name|dbcs-edited|default|described|drop|downdrop|ebcdic|empty-check|externally-described-key|file-stream|foreground-colour|format|fromfull|indic|indicator|indicators|kanji|left-justify|length-check|library|locale|modified|nono-echo|none|null-key-map|null-map|parse|prior|right-justify|rolling|screen|secure|space-fill|starting|subfile|substitute|title|trailing-sign|transaction|vlr|zero-fill|readc)(?![0-9A-Za-z_-])"},{"name":"constant.language.figurative.ilecobol","match":"(?\u003c![-_])(?i:hival|loval)(?=\\s+|\\.|,|\\))"},{"include":"source.cobol"},{"name":"token.debug-token","match":"(^\\\\D.*)$"}]}
|