@shikijs/langs-precompiled 1.26.1 → 1.26.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (153) hide show
  1. package/dist/abap.mjs +1 -1
  2. package/dist/actionscript-3.mjs +1 -1
  3. package/dist/angular-expression.mjs +1 -1
  4. package/dist/angular-let-declaration.mjs +1 -1
  5. package/dist/angular-ts.mjs +1 -1
  6. package/dist/apex.mjs +1 -1
  7. package/dist/apl.mjs +1 -1
  8. package/dist/applescript.mjs +1 -1
  9. package/dist/ara.mjs +1 -1
  10. package/dist/asm.mjs +1 -1
  11. package/dist/astro.mjs +1 -1
  12. package/dist/awk.mjs +1 -1
  13. package/dist/ballerina.mjs +1 -1
  14. package/dist/beancount.mjs +1 -1
  15. package/dist/berry.mjs +1 -1
  16. package/dist/bicep.mjs +1 -1
  17. package/dist/blade.mjs +1 -1
  18. package/dist/c.mjs +1 -1
  19. package/dist/cadence.mjs +1 -1
  20. package/dist/cairo.mjs +1 -1
  21. package/dist/clojure.mjs +1 -1
  22. package/dist/cobol.mjs +1 -1
  23. package/dist/codeql.mjs +2 -6
  24. package/dist/coffee.mjs +1 -1
  25. package/dist/common-lisp.mjs +1 -1
  26. package/dist/coq.mjs +1 -1
  27. package/dist/cpp-macro.mjs +1 -1
  28. package/dist/cpp.mjs +1 -1
  29. package/dist/crystal.mjs +1 -1
  30. package/dist/css.mjs +1 -1
  31. package/dist/cue.mjs +1 -1
  32. package/dist/d.mjs +1 -1
  33. package/dist/dart.mjs +1 -1
  34. package/dist/dax.mjs +1 -1
  35. package/dist/dotenv.mjs +1 -1
  36. package/dist/dream-maker.mjs +1 -1
  37. package/dist/elm.mjs +1 -1
  38. package/dist/emacs-lisp.mjs +1 -1
  39. package/dist/fish.mjs +1 -1
  40. package/dist/fluent.mjs +1 -1
  41. package/dist/fortran-free-form.mjs +1 -1
  42. package/dist/fsharp.mjs +1 -1
  43. package/dist/gdresource.mjs +1 -1
  44. package/dist/gdscript.mjs +1 -1
  45. package/dist/genie.mjs +1 -1
  46. package/dist/gleam.mjs +1 -1
  47. package/dist/glimmer-js.mjs +1 -1
  48. package/dist/glimmer-ts.mjs +1 -1
  49. package/dist/gnuplot.mjs +1 -1
  50. package/dist/go.mjs +1 -1
  51. package/dist/graphql.mjs +1 -1
  52. package/dist/groovy.mjs +1 -1
  53. package/dist/hack.mjs +10 -2
  54. package/dist/handlebars.mjs +1 -1
  55. package/dist/haskell.mjs +1 -1
  56. package/dist/haxe.mjs +1 -1
  57. package/dist/hcl.mjs +1 -1
  58. package/dist/hlsl.mjs +1 -1
  59. package/dist/html.mjs +1 -1
  60. package/dist/http.mjs +1 -1
  61. package/dist/hy.mjs +1 -1
  62. package/dist/imba.mjs +1 -1
  63. package/dist/java.mjs +1 -1
  64. package/dist/javascript.mjs +1 -1
  65. package/dist/jinja.mjs +1 -1
  66. package/dist/jison.mjs +1 -1
  67. package/dist/jssm.mjs +1 -1
  68. package/dist/jsx.mjs +1 -1
  69. package/dist/julia.mjs +1 -1
  70. package/dist/kusto.mjs +1 -1
  71. package/dist/lean.mjs +1 -1
  72. package/dist/less.mjs +1 -1
  73. package/dist/liquid.mjs +1 -1
  74. package/dist/log.mjs +1 -1
  75. package/dist/lua.mjs +1 -1
  76. package/dist/luau.mjs +1 -1
  77. package/dist/markdown.mjs +1 -1
  78. package/dist/matlab.mjs +1 -1
  79. package/dist/mdc.mjs +1 -1
  80. package/dist/mdx.mjs +1 -1
  81. package/dist/mermaid.mjs +1 -1
  82. package/dist/mipsasm.mjs +1 -1
  83. package/dist/mojo.mjs +1 -1
  84. package/dist/move.mjs +1 -1
  85. package/dist/nextflow.mjs +1 -1
  86. package/dist/nginx.mjs +1 -1
  87. package/dist/nim.mjs +1 -1
  88. package/dist/nix.mjs +1 -1
  89. package/dist/nushell.mjs +1 -1
  90. package/dist/objective-c.mjs +1 -1
  91. package/dist/objective-cpp.mjs +1 -1
  92. package/dist/ocaml.mjs +1 -1
  93. package/dist/perl.mjs +1 -1
  94. package/dist/php.mjs +1 -1
  95. package/dist/polar.mjs +1 -1
  96. package/dist/postcss.mjs +1 -1
  97. package/dist/powershell.mjs +1 -1
  98. package/dist/prisma.mjs +1 -1
  99. package/dist/prolog.mjs +1 -1
  100. package/dist/proto.mjs +1 -1
  101. package/dist/pug.mjs +1 -1
  102. package/dist/puppet.mjs +1 -1
  103. package/dist/python.mjs +1 -1
  104. package/dist/r.mjs +1 -1
  105. package/dist/racket.mjs +1 -1
  106. package/dist/reg.mjs +1 -1
  107. package/dist/regexp.mjs +1 -1
  108. package/dist/rel.mjs +1 -1
  109. package/dist/riscv.mjs +1 -1
  110. package/dist/ruby.mjs +1 -1
  111. package/dist/sas.mjs +1 -1
  112. package/dist/sass.mjs +2 -4
  113. package/dist/scala.mjs +1 -1
  114. package/dist/scheme.mjs +1 -1
  115. package/dist/shaderlab.mjs +1 -1
  116. package/dist/shellscript.mjs +1 -1
  117. package/dist/smalltalk.mjs +1 -1
  118. package/dist/solidity.mjs +1 -1
  119. package/dist/ssh-config.mjs +1 -1
  120. package/dist/stata.mjs +1 -1
  121. package/dist/stylus.mjs +1 -1
  122. package/dist/svelte.mjs +1 -1
  123. package/dist/system-verilog.mjs +1 -1
  124. package/dist/systemd.mjs +1 -1
  125. package/dist/tcl.mjs +1 -1
  126. package/dist/templ.mjs +1 -1
  127. package/dist/terraform.mjs +1 -1
  128. package/dist/tex.mjs +1 -1
  129. package/dist/toml.mjs +1 -1
  130. package/dist/tsx.mjs +1 -1
  131. package/dist/turtle.mjs +1 -1
  132. package/dist/twig.mjs +1 -1
  133. package/dist/typescript.mjs +1 -1
  134. package/dist/typespec.mjs +1 -1
  135. package/dist/typst.mjs +1 -1
  136. package/dist/v.mjs +1 -1
  137. package/dist/vala.mjs +1 -1
  138. package/dist/vb.mjs +1 -1
  139. package/dist/verilog.mjs +1 -1
  140. package/dist/vhdl.mjs +1 -1
  141. package/dist/viml.mjs +1 -1
  142. package/dist/vue-html.mjs +1 -1
  143. package/dist/vue.mjs +1 -1
  144. package/dist/vyper.mjs +1 -1
  145. package/dist/wasm.mjs +1 -1
  146. package/dist/wgsl.mjs +1 -1
  147. package/dist/wikitext.mjs +1 -1
  148. package/dist/wolfram.mjs +1 -1
  149. package/dist/xml.mjs +1 -1
  150. package/dist/yaml.mjs +1 -1
  151. package/dist/zenscript.mjs +1 -1
  152. package/dist/zig.mjs +1 -1
  153. package/package.json +4 -4
package/dist/abap.mjs CHANGED
@@ -1,4 +1,4 @@
1
- const lang = Object.freeze({displayName:"ABAP",fileTypes:["abap","ABAP"],foldingStartMarker:/\/\*\*|\{\p{space}*(?=$|\n)/dgv,foldingStopMarker:/\*\*\/|(?<=^|\n(?!$))\p{space}*\}/dgv,name:"abap",patterns:[{captures:{"1":{name:"punctuation.definition.comment.abap"}},match:/(?<=^|\n(?!$))\*[^\n]*\n?/dgv,name:"comment.line.full.abap"},{captures:{"1":{name:"punctuation.definition.comment.abap"}},match:/"[^\n]*\n?/dgv,name:"comment.line.partial.abap"},{match:/(?<![^\p{space}])##[^\n]*?(?=([\.\:\,\p{space}]))/dgv,name:"comment.line.pragma.abap"},{match:/(?<=(?:\p{space}|~|-))(?<=(?:->|=>))([a-z_\/][a-z_0-9\/]*)(?=\p{space}+(?:=|\+=|-=|\*=|\/=|&&=|&=)\p{space}+)/dgiv,name:"variable.other.abap"},{match:/\b\p{Nd}+(\b|\.|,)/dgv,name:"constant.numeric.abap"},{match:/((?<=^|\n(?!$))|\p{space}+)((PUBLIC|PRIVATE|PROTECTED)\p{space}SECTION)(?=\p{space}+|:|\.)/dgiv,name:"storage.modifier.class.abap"},{begin:/(?<!\\)(\|)([^\n]*?)/dgv,beginCaptures:{"1":{name:"constant.character.escape.abap"}},end:/(?<!\\)(\||(\\\\\|))/dgv,endCaptures:{"1":{name:"constant.character.escape.abap"}},name:"string.interpolated.abap",patterns:[{match:/(\{ )|( \})/dgv,name:"constant.character.escape"},{match:/\\\|/dgv,name:"constant.character.escape.abap"},{match:/(?<=\p{space})(align|alpha|case|country|currency|date|decimals|exponent|number|pad|sign|style|time|timestamp|timezone|width|xsd|zero)(?=\p{space}=)/dgiv,name:"entity.name.property.stringtemplate.abap"},{match:/(?<==\p{space})(center|engineering|environment|in|iso|left|leftplus|leftspace|lower|no|out|raw|right|rightplus|rightspace|scale_preserving|scale_preserving_scientific|scientific|scientific_with_leading_zero|sign_as_postfix|simple|space|upper|user|yes)(?=\p{space})/dgiv,name:"entity.value.property.stringtemplate.abap"}]},{begin:/'/dgv,end:/'/dgv,name:"string.quoted.single.abap",patterns:[{match:/''/dgv,name:"constant.character.escape.abap"}]},{begin:/`/dgv,end:/`/dgv,name:"string.quoted.single.abap",patterns:[{match:/``/dgv,name:"constant.character.escape.abap"}]},{begin:/(?<=^|\n(?!$))\p{space}*(class)\p{space}([a-z_\/][a-z_0-9\/]*)/dgiv,beginCaptures:{"1":{name:"storage.type.block.abap"},"2":{name:"entity.name.type.block.abap"}},end:/\p{space}*\.\p{space}*\n?/dgv,name:"meta.block.begin.implementation.abap",patterns:[{match:/((?<=^|\n(?!$))|\p{space}+)(definition|implementation|public|inheriting\p{space}+from|final|deferred|abstract|shared\p{space}+memory\p{space}+enabled|(global|local)*\p{space}*friends|(create\p{space}+(public|protected|private))|for\p{space}+behavior\p{space}+of|for\p{space}+testing|risk\p{space}+level\p{space}+(critical|dangerous|harmless))|duration\p{space}(short|medium|long)(?=\p{space}+|\.)/dgiv,name:"storage.modifier.class.abap"},{begin:/(?=[A-Za-z_][A-Za-z0-9_]*)/dgv,contentName:"entity.name.type.block.abap",end:/(?![A-Za-z0-9_])/dgv,patterns:[{include:"#generic_names"}]}]},{begin:/(?<=^|\n(?!$))\p{space}*(method)\p{space}(?:([a-z_\/][a-z_0-9\/]*)~)?([a-z_\/][a-z_0-9\/]*)/dgiv,beginCaptures:{"1":{name:"storage.type.block.abap"},"2":{name:"entity.name.type.abap"},"3":{name:"entity.name.function.abap"}},end:/\p{space}*\.\p{space}*\n?/dgv,patterns:[{match:/(?<=(?<=^|\n(?!$))|\p{space})(BY\p{space}+DATABASE(\p{space}+PROCEDURE|\p{space}+FUNCTION|\p{space}+GRAPH\p{space}+WORKSPACE)|BY\p{space}+KERNEL\p{space}+MODULE)(?=\p{space}+|\.)/dgiv,name:"storage.modifier.method.abap"},{match:/(?<=(?<=^|\n(?!$))|\p{space})(FOR\p{space}+(HDB|LLANG))(?=\p{space}+|\.)/dgiv,name:"storage.modifier.method.abap"},{match:/(?<=\p{space})(OPTIONS\p{space}+(READ-ONLY|DETERMINISTIC|SUPPRESS\p{space}+SYNTAX\p{space}+ERRORS))(?=\p{space}+|\.)/dgiv,name:"storage.modifier.method.abap"},{match:/(?<=(?<=^|\n(?!$))|\p{space})(LANGUAGE\p{space}+(SQLSCRIPT|SQL|GRAPH))(?=\p{space}+|\.)/dgiv,name:"storage.modifier.method.abap"},{captures:{"1":{name:"storage.modifier.method.abap"}},match:/(?<=\p{space})(USING)\p{space}+([a-z_\/][a-z_0-9\/\=\>]*)+(?=\p{space}+|\.)/dgiv},{begin:/(?=[A-Za-z_][A-Za-z0-9_]*)/dgv,end:/(?![A-Za-z0-9_])/dgv,patterns:[{include:"#generic_names"}]}]},{begin:/(?<=^|\n(?!$))\p{space}*(INTERFACE)\p{space}([a-z_\/][a-z_0-9\/]*)/dgiv,beginCaptures:{"1":{name:"storage.type.block.abap"},"2":{name:"entity.name.type.abap"}},end:/\p{space}*\.\p{space}*\n?/dgv,patterns:[{match:/(?<=(?<=^|\n(?!$))|\p{space})(DEFERRED|PUBLIC)(?=\p{space}+|\.)/dgiv,name:"storage.modifier.method.abap"}]},{begin:/(?<=^|\n(?!$))\p{space}*(FORM)\p{space}([a-z_\/][a-z_0-9\/\-\?]*)/dgiv,beginCaptures:{"1":{name:"storage.type.block.abap"},"2":{name:"entity.name.type.abap"}},end:/\p{space}*\.\p{space}*\n?/dgv,patterns:[{match:/(?<=(?<=^|\n(?!$))|\p{space})(USING|TABLES|CHANGING|RAISING|IMPLEMENTATION|DEFINITION)(?=\p{space}+|\.)/dgiv,name:"storage.modifier.form.abap"},{include:"#abaptypes"},{include:"#keywords_followed_by_braces"}]},{match:/(endclass|endmethod|endform|endinterface)/dgiv,name:"storage.type.block.end.abap"},{match:/(<[A-Za-z_][A-Za-z0-9_]*>)/dgiv,name:"variable.other.field.symbol.abap"},{include:"#keywords"},{include:"#abap_constants"},{include:"#reserved_names"},{include:"#operators"},{include:"#builtin_functions"},{include:"#abaptypes"},{include:"#system_fields"},{include:"#sql_functions"},{include:"#sql_types"}],repository:{abap_constants:{match:/(?<=\p{space})(initial|null|@?space|@?abap_true|@?abap_false|@?abap_undefined|table_line|%_final|%_hints|%_predefined|col_background|col_group|col_heading|col_key|col_negative|col_normal|col_positive|col_total|adabas|as400|db2|db6|hdb|oracle|sybase|mssqlnt|pos_low|pos_high)(?=\p{space}|\.|,)/dgiv,name:"constant.language.abap"},abaptypes:{patterns:[{match:/\p{space}(abap_bool|string|xstring|any|clike|csequence|numeric|xsequence|decfloat|decfloat16|decfloat34|utclong|simple|int8|c|n|i|p|f|d|t|x)(?=\p{space}|\.|,)/dgiv,name:"support.type.abap"},{match:/\p{space}(TYPE|REF|TO|LIKE|LINE|OF|STRUCTURE|STANDARD|SORTED|HASHED|INDEX|TABLE|WITH|UNIQUE|NON-UNIQUE|SECONDARY|DEFAULT|KEY)(?=\p{space}|\.|,)/dgiv,name:"keyword.control.simple.abap"}]},arithmetic_operator:{match:/(?<=\p{space})(\+|-|\*|\*\*|\/|%|DIV|MOD|BIT-AND|BIT-OR|BIT-XOR|BIT-NOT)(?=\p{space})/dgiv,name:"keyword.control.simple.abap"},builtin_functions:{match:/(?<=\p{space})(abs|sign|ceil|floor|trunc|frac|acos|asin|atan|cos|sin|tan|cosh|sinh|tanh|exp|log|log10|sqrt|strlen|xstrlen|charlen|lines|numofchar|dbmaxlen|round|rescale|nmax|nmin|cmax|cmin|boolc|boolx|xsdbool|contains|contains_any_of|contains_any_not_of|matches|line_exists|ipow|char_off|count|count_any_of|count_any_not_of|distance|condense|concat_lines_of|escape|find|find_end|find_any_of|find_any_not_of|insert|match|repeat|replace|reverse|segment|shift_left|shift_right|substring|substring_after|substring_from|substring_before|substring_to|to_upper|to_lower|to_mixed|from_mixed|translate|bit-set|line_index)(?=\()/dgiv,name:"entity.name.function.builtin.abap"},comparison_operator:{match:/(?<=\p{space})(<|>|<=|>=|=|<>|eq|ne|lt|le|gt|ge|cs|cp|co|cn|ca|na|ns|np|byte-co|byte-cn|byte-ca|byte-na|byte-cs|byte-ns|o|z|m)(?=\p{space})/dgiv,name:"keyword.control.simple.abap"},control_keywords:{match:/((?<=^|\n(?!$))|\p{space})(at|case|catch|continue|do|elseif|else|endat|endcase|endcatch|enddo|endif|endloop|endon|endtry|endwhile|if|loop|on|raise|try|while)(?=\p{space}|\.|:)/dgiv,name:"keyword.control.flow.abap"},generic_names:{match:/[A-Za-z_][A-Za-z0-9_]*/dgv},keywords:{patterns:[{include:"#main_keywords"},{include:"#text_symbols"},{include:"#control_keywords"},{include:"#keywords_followed_by_braces"}]},keywords_followed_by_braces:{captures:{"1":{name:"keyword.control.simple.abap"},"2":{name:"variable.other.abap"}},match:/\b(data|value|field-symbol|final|reference|resumable)\((<?[a-z_\/][a-z_0-9\/]*>?)\)/dgiv},logical_operator:{match:/(?<=\p{space})(not|or|and)(?=\p{space})/dgiv,name:"keyword.control.simple.abap"},main_keywords:{match:/(?<=(?<=^|\n(?!$))|\p{space})(abap-source|abstract|accept|accepting|access|according|action|activation|actual|add|add-corresponding|adjacent|after|alias|aliases|all|allocate|amdp|analysis|analyzer|append|appending|application|archive|area|arithmetic|as|ascending|assert|assign|assigned|assigning|association|asynchronous|at|attributes|authority|authority-check|authorization|auto|back|background|backward|badi|base|before|begin|behavior|between|binary|bit|blank|blanks|block|blocks|bound|boundaries|bounds|boxed|break|break-point|buffer|by|bypassing|byte|byte-order|call|calling|cast|casting|cds|centered|change|changing|channels|char-to-hex|character|check|checkbox|cid|circular|class|class-data|class-events|class-method|class-methods|class-pool|cleanup|clear|client|clients|clock|clone|close|cnt|code|collect|color|column|comment|comments|commit|common|communication|comparing|component|components|compression|compute|concatenate|cond|condense|condition|connection|constant|constants|context|contexts|control|controls|conv|conversion|convert|copy|corresponding|count|country|cover|create|currency|current|cursor|customer-function|data|database|datainfo|dataset|date|daylight|ddl|deallocate|decimals|declarations|deep|default|deferred|define|delete|deleting|demand|descending|describe|destination|detail|determine|dialog|did|directory|discarding|display|display-mode|distance|distinct|divide|divide-corresponding|dummy|duplicate|duplicates|duration|during|dynpro|edit|editor-call|empty|enabled|enabling|encoding|end|end-enhancement-section|end-of-definition|end-of-page|end-of-selection|end-test-injection|end-test-seam|endenhancement|endexec|endfunction|endian|ending|endmodule|endprovide|endselect|endwith|enhancement|enhancement-point|enhancement-section|enhancements|entities|entity|entries|entry|enum|equiv|errors|escape|escaping|event|events|exact|except|exception|exception-table|exceptions|excluding|exec|execute|exists|exit|exit-command|expanding|explicit|exponent|export|exporting|extended|extension|extract|fail|failed|features|fetch|field|field-groups|field-symbols|fields|file|fill|filter|filters|final|find|first|first-line|fixed-point|flush|following|for|format|forward|found|frame|frames|free|from|full|function|function-pool|generate|get|giving|graph|group|groups|handle|handler|hashed|having|header|headers|heading|help-id|help-request|hide|hint|hold|hotspot|icon|id|identification|identifier|ignore|ignoring|immediately|implemented|implicit|import|importing|in|inactive|incl|include|includes|including|increment|index|index-line|indicators|infotypes|inheriting|init|initial|initialization|inner|input|insert|instance|instances|intensified|interface|interface-pool|interfaces|internal|intervals|into|inverse|inverted-date|is|job|join|keep|keeping|kernel|key|keys|keywords|kind|language|last|late|layout|leading|leave|left|left-justified|legacy|length|let|level|levels|like|line|line-count|line-selection|line-size|linefeed|lines|link|list|list-processing|listbox|load|load-of-program|local|locale|lock|locks|log-point|logical|lower|mapped|mapping|margin|mark|mask|match|matchcode|maximum|members|memory|mesh|message|message-id|messages|messaging|method|methods|mode|modif|modifier|modify|module|move|move-corresponding|multiply|multiply-corresponding|name|nametab|native|nested|nesting|new|new-line|new-page|new-section|next|no-display|no-extension|no-gap|no-gaps|no-grouping|no-heading|no-scrolling|no-sign|no-title|no-zero|nodes|non-unicode|non-unique|number|object|objects|objmgr|obligatory|occurence|occurences|occurrence|occurrences|occurs|of|offset|on|only|open|optional|option|options|order|others|out|outer|output|output-length|overflow|overlay|pack|package|padding|page|parameter|parameter-table|parameters|part|partially|pcre|perform|performing|permissions|pf-status|places|pool|position|pragmas|preceding|precompiled|preferred|preserving|primary|print|print-control|private|privileged|procedure|process|program|property|protected|provide|push|pushbutton|put|query|queue-only|queueonly|quickinfo|radiobutton|raising|range|ranges|read|read-only|receive|received|receiving|redefinition|reduce|ref|reference|refresh|regex|reject|renaming|replace|replacement|replacing|report|reported|request|requested|required|reserve|reset|resolution|respecting|response|restore|result|results|resumable|resume|retry|return|returning|right|right-justified|rollback|rows|rp-provide-from-last|run|sap|sap-spool|save|saving|scan|screen|scroll|scroll-boundary|scrolling|search|seconds|section|select|select-options|selection|selection-screen|selection-set|selection-sets|selection-table|selections|send|separate|separated|session|set|shared|shift|shortdump|shortdump-id|sign|simple|simulation|single|size|skip|skipping|smart|some|sort|sortable|sorted|source|specified|split|spool|spots|sql|stable|stamp|standard|start-of-selection|starting|state|statement|statements|static|statics|statusinfo|step|step-loop|stop|structure|structures|style|subkey|submatches|submit|subroutine|subscreen|substring|subtract|subtract-corresponding|suffix|sum|summary|supplied|supply|suppress|switch|symbol|syntax-check|syntax-trace|system-call|system-exceptions|tab|tabbed|table|tables|tableview|tabstrip|target|task|tasks|test|test-injection|test-seam|testing|text|textpool|then|throw|time|times|title|titlebar|to|tokens|top-lines|top-of-page|trace-file|trace-table|trailing|transaction|transfer|transformation|translate|transporting|trmac|truncate|truncation|type|type-pool|type-pools|types|uline|unassign|unbounded|under|unicode|union|unique|unit|unix|unpack|until|unwind|up|update|upper|user|user-command|using|utf-8|uuid|valid|validate|value|value-request|values|vary|varying|version|via|visible|wait|when|where|window|windows|with|with-heading|with-title|without|word|work|workspace|write|xml|zone)(?=\p{space}|\.|:|,)/dgiv,name:"keyword.control.simple.abap"},operators:{patterns:[{include:"#other_operator"},{include:"#arithmetic_operator"},{include:"#comparison_operator"},{include:"#logical_operator"}]},other_operator:{match:/(?<=\p{space})(&&|&|\?=|\+=|-=|\/=|\*=|&&=|&=)(?=\p{space})/dgv,name:"keyword.control.simple.abap"},reserved_names:{match:/(?<=\p{space})(me|super)(?=\p{space}|\.|,|->)/dgiv,name:"constant.language.abap"},sql_functions:{match:/(?<=\p{space})(abap_system_timezone|abap_user_timezone|abs|add_days|add_months|allow_precision_loss|as_geo_json|avg|bintohex|cast|ceil|coalesce|concat_with_space|concat|corr_spearman|corr|count|currency_conversion|datn_add_days|datn_add_months|datn_days_between|dats_add_days|dats_add_months|dats_days_between|dats_from_datn|dats_is_valid|dats_tims_to_tstmp|dats_to_datn|dayname|days_between|dense_rank|division|div|extract_day|extract_hour|extract_minute|extract_month|extract_second|extract_year|first_value|floor|grouping|hextobin|initcap|instr|is_valid|lag|last_value|lead|left|length|like_regexpr|locate_regexpr_after|locate_regexpr|locate|lower|lpad|ltrim|max|median|min|mod|monthname|ntile|occurrences_regexpr|over|product|rank|replace_regexpr|replace|rigth|round|row_number|rpad|rtrim|stddev|string_agg|substring_regexpr|substring|sum|tims_from_timn|tims_is_valid|tims_to_timn|to_blob|to_clob|tstmp_add_seconds|tstmp_current_utctimestamp|tstmp_is_valid|tstmp_seconds_between|tstmp_to_dats|tstmp_to_dst|tstmp_to_tims|tstmpl_from_utcl|tstmpl_to_utcl|unit_conversion|upper|utcl_add_seconds|utcl_current|utcl_seconds_between|uuid|var|weekday)(?=\()/dgiv,name:"entity.name.function.sql.abap"},sql_types:{match:/(?<=\p{space})(char|clnt|cuky|curr|datn|dats|dec|decfloat16|decfloat34|fltp|int1|int2|int4|int8|lang|numc|quan|raw|sstring|timn|tims|unit|utclong)(?=\p{space}|\(|\))/dgiv,name:"entity.name.type.sql.abap"},system_fields:{captures:{"1":{name:"variable.language.abap"},"2":{name:"variable.language.abap"}},match:/\b(sy)-(abcde|batch|binpt|calld|callr|colno|cpage|cprog|cucol|curow|datar|datlo|datum|dayst|dbcnt|dbnam|dbsysc|dyngr|dynnr|fdayw|fdpos|host|index|langu|ldbpg|lilli|linct|linno|linsz|lisel|listi|loopc|lsind|macol|mandt|marow|modno|msgid|msgli|msgno|msgty|msgv[1-4]|opsysc|pagno|pfkey|repid|saprl|scols|slset|spono|srows|staco|staro|stepl|subrc|sysid|tabix|tcode|tfill|timlo|title|tleng|tvar\p{Nd}|tzone|ucomm|uline|uname|uzeit|vline|wtitl|zonlo)(?=\.|\p{space})/dgiv},text_symbols:{captures:{"1":{name:"keyword.control.simple.abap"},"2":{name:"constant.numeric.abap"}},match:/(?<=(?<=^|\n(?!$))|\p{space})(text)-([A-Z0-9]{1,3})(?=\p{space}|\.|:|,)/dgiv}},scopeName:"source.abap",embeddedLangs:undefined,aliases:undefined})
1
+ const lang = Object.freeze({displayName:"ABAP",fileTypes:["abap","ABAP"],foldingStartMarker:/\/\*\*|\{\p{space}*(?=$|\n)/dgv,foldingStopMarker:/\*\*\/|(?<=^|\n(?!$))\p{space}*\}/dgv,name:"abap",patterns:[{captures:{"1":{name:"punctuation.definition.comment.abap"}},match:/(?<=^|\n(?!$))\*[^\n]*\n?/dgv,name:"comment.line.full.abap"},{captures:{"1":{name:"punctuation.definition.comment.abap"}},match:/"[^\n]*\n?/dgv,name:"comment.line.partial.abap"},{match:/(?<![^\p{space}])##[^\n]*?(?=([\.\:\,\p{space}]))/dgv,name:"comment.line.pragma.abap"},{match:/(?<=(?:\p{space}|~|-))(?<=(?:->|=>))([a-z_\/][a-z_0-9\/]*)(?=\p{space}+(?:=|\+=|-=|\*=|\/=|&&=|&=)\p{space}+)/dgiv,name:"variable.other.abap"},{match:/\b[0-9]+(\b|\.|,)/dgv,name:"constant.numeric.abap"},{match:/((?<=^|\n(?!$))|\p{space}+)((PUBLIC|PRIVATE|PROTECTED)\p{space}SECTION)(?=\p{space}+|:|\.)/dgiv,name:"storage.modifier.class.abap"},{begin:/(?<!\\)(\|)([^\n]*?)/dgv,beginCaptures:{"1":{name:"constant.character.escape.abap"}},end:/(?<!\\)(\||(\\\\\|))/dgv,endCaptures:{"1":{name:"constant.character.escape.abap"}},name:"string.interpolated.abap",patterns:[{match:/(\{ )|( \})/dgv,name:"constant.character.escape"},{match:/\\\|/dgv,name:"constant.character.escape.abap"},{match:/(?<=\p{space})(align|alpha|case|country|currency|date|decimals|exponent|number|pad|sign|style|time|timestamp|timezone|width|xsd|zero)(?=\p{space}=)/dgiv,name:"entity.name.property.stringtemplate.abap"},{match:/(?<==\p{space})(center|engineering|environment|in|iso|left|leftplus|leftspace|lower|no|out|raw|right|rightplus|rightspace|scale_preserving|scale_preserving_scientific|scientific|scientific_with_leading_zero|sign_as_postfix|simple|space|upper|user|yes)(?=\p{space})/dgiv,name:"entity.value.property.stringtemplate.abap"}]},{begin:/'/dgv,end:/'/dgv,name:"string.quoted.single.abap",patterns:[{match:/''/dgv,name:"constant.character.escape.abap"}]},{begin:/`/dgv,end:/`/dgv,name:"string.quoted.single.abap",patterns:[{match:/``/dgv,name:"constant.character.escape.abap"}]},{begin:/(?<=^|\n(?!$))\p{space}*(class)\p{space}([a-z_\/][a-z_0-9\/]*)/dgiv,beginCaptures:{"1":{name:"storage.type.block.abap"},"2":{name:"entity.name.type.block.abap"}},end:/\p{space}*\.\p{space}*\n?/dgv,name:"meta.block.begin.implementation.abap",patterns:[{match:/((?<=^|\n(?!$))|\p{space}+)(definition|implementation|public|inheriting\p{space}+from|final|deferred|abstract|shared\p{space}+memory\p{space}+enabled|(global|local)*\p{space}*friends|(create\p{space}+(public|protected|private))|for\p{space}+behavior\p{space}+of|for\p{space}+testing|risk\p{space}+level\p{space}+(critical|dangerous|harmless))|duration\p{space}(short|medium|long)(?=\p{space}+|\.)/dgiv,name:"storage.modifier.class.abap"},{begin:/(?=[A-Za-z_][A-Za-z0-9_]*)/dgv,contentName:"entity.name.type.block.abap",end:/(?![A-Za-z0-9_])/dgv,patterns:[{include:"#generic_names"}]}]},{begin:/(?<=^|\n(?!$))\p{space}*(method)\p{space}(?:([a-z_\/][a-z_0-9\/]*)~)?([a-z_\/][a-z_0-9\/]*)/dgiv,beginCaptures:{"1":{name:"storage.type.block.abap"},"2":{name:"entity.name.type.abap"},"3":{name:"entity.name.function.abap"}},end:/\p{space}*\.\p{space}*\n?/dgv,patterns:[{match:/(?<=(?<=^|\n(?!$))|\p{space})(BY\p{space}+DATABASE(\p{space}+PROCEDURE|\p{space}+FUNCTION|\p{space}+GRAPH\p{space}+WORKSPACE)|BY\p{space}+KERNEL\p{space}+MODULE)(?=\p{space}+|\.)/dgiv,name:"storage.modifier.method.abap"},{match:/(?<=(?<=^|\n(?!$))|\p{space})(FOR\p{space}+(HDB|LLANG))(?=\p{space}+|\.)/dgiv,name:"storage.modifier.method.abap"},{match:/(?<=\p{space})(OPTIONS\p{space}+(READ-ONLY|DETERMINISTIC|SUPPRESS\p{space}+SYNTAX\p{space}+ERRORS))(?=\p{space}+|\.)/dgiv,name:"storage.modifier.method.abap"},{match:/(?<=(?<=^|\n(?!$))|\p{space})(LANGUAGE\p{space}+(SQLSCRIPT|SQL|GRAPH))(?=\p{space}+|\.)/dgiv,name:"storage.modifier.method.abap"},{captures:{"1":{name:"storage.modifier.method.abap"}},match:/(?<=\p{space})(USING)\p{space}+([a-z_\/][a-z_0-9\/\=\>]*)+(?=\p{space}+|\.)/dgiv},{begin:/(?=[A-Za-z_][A-Za-z0-9_]*)/dgv,end:/(?![A-Za-z0-9_])/dgv,patterns:[{include:"#generic_names"}]}]},{begin:/(?<=^|\n(?!$))\p{space}*(INTERFACE)\p{space}([a-z_\/][a-z_0-9\/]*)/dgiv,beginCaptures:{"1":{name:"storage.type.block.abap"},"2":{name:"entity.name.type.abap"}},end:/\p{space}*\.\p{space}*\n?/dgv,patterns:[{match:/(?<=(?<=^|\n(?!$))|\p{space})(DEFERRED|PUBLIC)(?=\p{space}+|\.)/dgiv,name:"storage.modifier.method.abap"}]},{begin:/(?<=^|\n(?!$))\p{space}*(FORM)\p{space}([a-z_\/][a-z_0-9\/\-\?]*)/dgiv,beginCaptures:{"1":{name:"storage.type.block.abap"},"2":{name:"entity.name.type.abap"}},end:/\p{space}*\.\p{space}*\n?/dgv,patterns:[{match:/(?<=(?<=^|\n(?!$))|\p{space})(USING|TABLES|CHANGING|RAISING|IMPLEMENTATION|DEFINITION)(?=\p{space}+|\.)/dgiv,name:"storage.modifier.form.abap"},{include:"#abaptypes"},{include:"#keywords_followed_by_braces"}]},{match:/(endclass|endmethod|endform|endinterface)/dgiv,name:"storage.type.block.end.abap"},{match:/(<[A-Za-z_][A-Za-z0-9_]*>)/dgiv,name:"variable.other.field.symbol.abap"},{include:"#keywords"},{include:"#abap_constants"},{include:"#reserved_names"},{include:"#operators"},{include:"#builtin_functions"},{include:"#abaptypes"},{include:"#system_fields"},{include:"#sql_functions"},{include:"#sql_types"}],repository:{abap_constants:{match:/(?<=\p{space})(initial|null|@?space|@?abap_true|@?abap_false|@?abap_undefined|table_line|%_final|%_hints|%_predefined|col_background|col_group|col_heading|col_key|col_negative|col_normal|col_positive|col_total|adabas|as400|db2|db6|hdb|oracle|sybase|mssqlnt|pos_low|pos_high)(?=\p{space}|\.|,)/dgiv,name:"constant.language.abap"},abaptypes:{patterns:[{match:/\p{space}(abap_bool|string|xstring|any|clike|csequence|numeric|xsequence|decfloat|decfloat16|decfloat34|utclong|simple|int8|c|n|i|p|f|d|t|x)(?=\p{space}|\.|,)/dgiv,name:"support.type.abap"},{match:/\p{space}(TYPE|REF|TO|LIKE|LINE|OF|STRUCTURE|STANDARD|SORTED|HASHED|INDEX|TABLE|WITH|UNIQUE|NON-UNIQUE|SECONDARY|DEFAULT|KEY)(?=\p{space}|\.|,)/dgiv,name:"keyword.control.simple.abap"}]},arithmetic_operator:{match:/(?<=\p{space})(\+|-|\*|\*\*|\/|%|DIV|MOD|BIT-AND|BIT-OR|BIT-XOR|BIT-NOT)(?=\p{space})/dgiv,name:"keyword.control.simple.abap"},builtin_functions:{match:/(?<=\p{space})(abs|sign|ceil|floor|trunc|frac|acos|asin|atan|cos|sin|tan|cosh|sinh|tanh|exp|log|log10|sqrt|strlen|xstrlen|charlen|lines|numofchar|dbmaxlen|round|rescale|nmax|nmin|cmax|cmin|boolc|boolx|xsdbool|contains|contains_any_of|contains_any_not_of|matches|line_exists|ipow|char_off|count|count_any_of|count_any_not_of|distance|condense|concat_lines_of|escape|find|find_end|find_any_of|find_any_not_of|insert|match|repeat|replace|reverse|segment|shift_left|shift_right|substring|substring_after|substring_from|substring_before|substring_to|to_upper|to_lower|to_mixed|from_mixed|translate|bit-set|line_index)(?=\()/dgiv,name:"entity.name.function.builtin.abap"},comparison_operator:{match:/(?<=\p{space})(<|>|<=|>=|=|<>|eq|ne|lt|le|gt|ge|cs|cp|co|cn|ca|na|ns|np|byte-co|byte-cn|byte-ca|byte-na|byte-cs|byte-ns|o|z|m)(?=\p{space})/dgiv,name:"keyword.control.simple.abap"},control_keywords:{match:/((?<=^|\n(?!$))|\p{space})(at|case|catch|continue|do|elseif|else|endat|endcase|endcatch|enddo|endif|endloop|endon|endtry|endwhile|if|loop|on|raise|try|while)(?=\p{space}|\.|:)/dgiv,name:"keyword.control.flow.abap"},generic_names:{match:/[A-Za-z_][A-Za-z0-9_]*/dgv},keywords:{patterns:[{include:"#main_keywords"},{include:"#text_symbols"},{include:"#control_keywords"},{include:"#keywords_followed_by_braces"}]},keywords_followed_by_braces:{captures:{"1":{name:"keyword.control.simple.abap"},"2":{name:"variable.other.abap"}},match:/\b(data|value|field-symbol|final|reference|resumable)\((<?[a-z_\/][a-z_0-9\/]*>?)\)/dgiv},logical_operator:{match:/(?<=\p{space})(not|or|and)(?=\p{space})/dgiv,name:"keyword.control.simple.abap"},main_keywords:{match:/(?<=(?<=^|\n(?!$))|\p{space})(abap-source|abstract|accept|accepting|access|according|action|activation|actual|add|add-corresponding|adjacent|after|alias|aliases|all|allocate|amdp|analysis|analyzer|append|appending|application|archive|area|arithmetic|as|ascending|assert|assign|assigned|assigning|association|asynchronous|at|attributes|authority|authority-check|authorization|auto|back|background|backward|badi|base|before|begin|behavior|between|binary|bit|blank|blanks|block|blocks|bound|boundaries|bounds|boxed|break|break-point|buffer|by|bypassing|byte|byte-order|call|calling|cast|casting|cds|centered|change|changing|channels|char-to-hex|character|check|checkbox|cid|circular|class|class-data|class-events|class-method|class-methods|class-pool|cleanup|clear|client|clients|clock|clone|close|cnt|code|collect|color|column|comment|comments|commit|common|communication|comparing|component|components|compression|compute|concatenate|cond|condense|condition|connection|constant|constants|context|contexts|control|controls|conv|conversion|convert|copy|corresponding|count|country|cover|create|currency|current|cursor|customer-function|data|database|datainfo|dataset|date|daylight|ddl|deallocate|decimals|declarations|deep|default|deferred|define|delete|deleting|demand|descending|describe|destination|detail|determine|dialog|did|directory|discarding|display|display-mode|distance|distinct|divide|divide-corresponding|dummy|duplicate|duplicates|duration|during|dynpro|edit|editor-call|empty|enabled|enabling|encoding|end|end-enhancement-section|end-of-definition|end-of-page|end-of-selection|end-test-injection|end-test-seam|endenhancement|endexec|endfunction|endian|ending|endmodule|endprovide|endselect|endwith|enhancement|enhancement-point|enhancement-section|enhancements|entities|entity|entries|entry|enum|equiv|errors|escape|escaping|event|events|exact|except|exception|exception-table|exceptions|excluding|exec|execute|exists|exit|exit-command|expanding|explicit|exponent|export|exporting|extended|extension|extract|fail|failed|features|fetch|field|field-groups|field-symbols|fields|file|fill|filter|filters|final|find|first|first-line|fixed-point|flush|following|for|format|forward|found|frame|frames|free|from|full|function|function-pool|generate|get|giving|graph|group|groups|handle|handler|hashed|having|header|headers|heading|help-id|help-request|hide|hint|hold|hotspot|icon|id|identification|identifier|ignore|ignoring|immediately|implemented|implicit|import|importing|in|inactive|incl|include|includes|including|increment|index|index-line|indicators|infotypes|inheriting|init|initial|initialization|inner|input|insert|instance|instances|intensified|interface|interface-pool|interfaces|internal|intervals|into|inverse|inverted-date|is|job|join|keep|keeping|kernel|key|keys|keywords|kind|language|last|late|layout|leading|leave|left|left-justified|legacy|length|let|level|levels|like|line|line-count|line-selection|line-size|linefeed|lines|link|list|list-processing|listbox|load|load-of-program|local|locale|lock|locks|log-point|logical|lower|mapped|mapping|margin|mark|mask|match|matchcode|maximum|members|memory|mesh|message|message-id|messages|messaging|method|methods|mode|modif|modifier|modify|module|move|move-corresponding|multiply|multiply-corresponding|name|nametab|native|nested|nesting|new|new-line|new-page|new-section|next|no-display|no-extension|no-gap|no-gaps|no-grouping|no-heading|no-scrolling|no-sign|no-title|no-zero|nodes|non-unicode|non-unique|number|object|objects|objmgr|obligatory|occurence|occurences|occurrence|occurrences|occurs|of|offset|on|only|open|optional|option|options|order|others|out|outer|output|output-length|overflow|overlay|pack|package|padding|page|parameter|parameter-table|parameters|part|partially|pcre|perform|performing|permissions|pf-status|places|pool|position|pragmas|preceding|precompiled|preferred|preserving|primary|print|print-control|private|privileged|procedure|process|program|property|protected|provide|push|pushbutton|put|query|queue-only|queueonly|quickinfo|radiobutton|raising|range|ranges|read|read-only|receive|received|receiving|redefinition|reduce|ref|reference|refresh|regex|reject|renaming|replace|replacement|replacing|report|reported|request|requested|required|reserve|reset|resolution|respecting|response|restore|result|results|resumable|resume|retry|return|returning|right|right-justified|rollback|rows|rp-provide-from-last|run|sap|sap-spool|save|saving|scan|screen|scroll|scroll-boundary|scrolling|search|seconds|section|select|select-options|selection|selection-screen|selection-set|selection-sets|selection-table|selections|send|separate|separated|session|set|shared|shift|shortdump|shortdump-id|sign|simple|simulation|single|size|skip|skipping|smart|some|sort|sortable|sorted|source|specified|split|spool|spots|sql|stable|stamp|standard|start-of-selection|starting|state|statement|statements|static|statics|statusinfo|step|step-loop|stop|structure|structures|style|subkey|submatches|submit|subroutine|subscreen|substring|subtract|subtract-corresponding|suffix|sum|summary|supplied|supply|suppress|switch|symbol|syntax-check|syntax-trace|system-call|system-exceptions|tab|tabbed|table|tables|tableview|tabstrip|target|task|tasks|test|test-injection|test-seam|testing|text|textpool|then|throw|time|times|title|titlebar|to|tokens|top-lines|top-of-page|trace-file|trace-table|trailing|transaction|transfer|transformation|translate|transporting|trmac|truncate|truncation|type|type-pool|type-pools|types|uline|unassign|unbounded|under|unicode|union|unique|unit|unix|unpack|until|unwind|up|update|upper|user|user-command|using|utf-8|uuid|valid|validate|value|value-request|values|vary|varying|version|via|visible|wait|when|where|window|windows|with|with-heading|with-title|without|word|work|workspace|write|xml|zone)(?=\p{space}|\.|:|,)/dgiv,name:"keyword.control.simple.abap"},operators:{patterns:[{include:"#other_operator"},{include:"#arithmetic_operator"},{include:"#comparison_operator"},{include:"#logical_operator"}]},other_operator:{match:/(?<=\p{space})(&&|&|\?=|\+=|-=|\/=|\*=|&&=|&=)(?=\p{space})/dgv,name:"keyword.control.simple.abap"},reserved_names:{match:/(?<=\p{space})(me|super)(?=\p{space}|\.|,|->)/dgiv,name:"constant.language.abap"},sql_functions:{match:/(?<=\p{space})(abap_system_timezone|abap_user_timezone|abs|add_days|add_months|allow_precision_loss|as_geo_json|avg|bintohex|cast|ceil|coalesce|concat_with_space|concat|corr_spearman|corr|count|currency_conversion|datn_add_days|datn_add_months|datn_days_between|dats_add_days|dats_add_months|dats_days_between|dats_from_datn|dats_is_valid|dats_tims_to_tstmp|dats_to_datn|dayname|days_between|dense_rank|division|div|extract_day|extract_hour|extract_minute|extract_month|extract_second|extract_year|first_value|floor|grouping|hextobin|initcap|instr|is_valid|lag|last_value|lead|left|length|like_regexpr|locate_regexpr_after|locate_regexpr|locate|lower|lpad|ltrim|max|median|min|mod|monthname|ntile|occurrences_regexpr|over|product|rank|replace_regexpr|replace|rigth|round|row_number|rpad|rtrim|stddev|string_agg|substring_regexpr|substring|sum|tims_from_timn|tims_is_valid|tims_to_timn|to_blob|to_clob|tstmp_add_seconds|tstmp_current_utctimestamp|tstmp_is_valid|tstmp_seconds_between|tstmp_to_dats|tstmp_to_dst|tstmp_to_tims|tstmpl_from_utcl|tstmpl_to_utcl|unit_conversion|upper|utcl_add_seconds|utcl_current|utcl_seconds_between|uuid|var|weekday)(?=\()/dgiv,name:"entity.name.function.sql.abap"},sql_types:{match:/(?<=\p{space})(char|clnt|cuky|curr|datn|dats|dec|decfloat16|decfloat34|fltp|int1|int2|int4|int8|lang|numc|quan|raw|sstring|timn|tims|unit|utclong)(?=\p{space}|\(|\))/dgiv,name:"entity.name.type.sql.abap"},system_fields:{captures:{"1":{name:"variable.language.abap"},"2":{name:"variable.language.abap"}},match:/\b(sy)-(abcde|batch|binpt|calld|callr|colno|cpage|cprog|cucol|curow|datar|datlo|datum|dayst|dbcnt|dbnam|dbsysc|dyngr|dynnr|fdayw|fdpos|host|index|langu|ldbpg|lilli|linct|linno|linsz|lisel|listi|loopc|lsind|macol|mandt|marow|modno|msgid|msgli|msgno|msgty|msgv[1-4]|opsysc|pagno|pfkey|repid|saprl|scols|slset|spono|srows|staco|staro|stepl|subrc|sysid|tabix|tcode|tfill|timlo|title|tleng|tvar[0-9]|tzone|ucomm|uline|uname|uzeit|vline|wtitl|zonlo)(?=\.|\p{space})/dgiv},text_symbols:{captures:{"1":{name:"keyword.control.simple.abap"},"2":{name:"constant.numeric.abap"}},match:/(?<=(?<=^|\n(?!$))|\p{space})(text)-([A-Z0-9]{1,3})(?=\p{space}|\.|:|,)/dgiv}},scopeName:"source.abap",embeddedLangs:undefined,aliases:undefined})
2
2
 
3
3
  export default [
4
4
  lang
@@ -1,4 +1,4 @@
1
- const lang = Object.freeze({displayName:"ActionScript",fileTypes:["as"],name:"actionscript-3",patterns:[{include:"#comments"},{include:"#package"},{include:"#class"},{include:"#interface"},{include:"#namespace_declaration"},{include:"#import"},{include:"#mxml"},{include:"#strings"},{include:"#regexp"},{include:"#variable_declaration"},{include:"#numbers"},{include:"#primitive_types"},{include:"#primitive_error_types"},{include:"#dynamic_type"},{include:"#primitive_functions"},{include:"#language_constants"},{include:"#language_variables"},{include:"#guess_type"},{include:"#guess_constant"},{include:"#other_operators"},{include:"#arithmetic_operators"},{include:"#logical_operators"},{include:"#array_access_operators"},{include:"#vector_creation_operators"},{include:"#control_keywords"},{include:"#other_keywords"},{include:"#use_namespace"},{include:"#functions"}],repository:{arithmetic_operators:{match:/(\+|-|\/|%|(?<!:)\*)/dgv,name:"keyword.operator.actionscript.3"},array_access_operators:{match:/(\[|\])/dgv,name:"keyword.operator.actionscript.3"},class:{begin:/((?<=^|\n(?!$))|\p{space}+|;)(\b(dynamic|final|abstract)\b\p{space}+)?(\b(internal|public)\b\p{space}+)?(\b(dynamic|final|abstract)\b\p{space}+)?(?=\bclass\b)/dgv,beginCaptures:{"3":{name:"storage.modifier.actionscript.3"},"5":{name:"storage.modifier.actionscript.3"},"7":{name:"storage.modifier.actionscript.3"}},end:/\}/dgv,name:"meta.class.actionscript.3",patterns:[{include:"#class_declaration"},{include:"#metadata"},{include:"#method"},{include:"#comments"},{include:"#strings"},{include:"#regexp"},{include:"#numbers"},{include:"#primitive_types"},{include:"#primitive_error_types"},{include:"#dynamic_type"},{include:"#primitive_functions"},{include:"#language_constants"},{include:"#language_variables"},{include:"#other_operators"},{include:"#other_keywords"},{include:"#use_namespace"},{include:"#guess_type"},{include:"#guess_constant"},{include:"#arithmetic_operators"},{include:"#array_access_operators"},{include:"#vector_creation_operators"},{include:"#variable_declaration"},{include:"#object_literal"}]},class_declaration:{begin:/\b(class)\b\p{space}+([\.\p{L}\p{M}\p{N}\p{Pc}]+|\*)/dgv,beginCaptures:{"1":{name:"storage.type.class.actionscript.3"},"2":{name:"entity.name.class.actionscript.3"}},end:/\{/dgv,name:"meta.class_declaration.actionscript.3",patterns:[{include:"#extends"},{include:"#implements"},{include:"#comments"}]},code_block:{begin:/\{/dgv,end:/\}/dgv,name:"meta.code_block.actionscript.3",patterns:[{include:"#code_block"},{include:"#comments"},{include:"#strings"},{include:"#regexp"},{include:"#variable_declaration"},{include:"#numbers"},{include:"#primitive_types"},{include:"#primitive_error_types"},{include:"#dynamic_type"},{include:"#primitive_functions"},{include:"#language_constants"},{include:"#language_variables"},{include:"#guess_type"},{include:"#guess_constant"},{include:"#other_operators"},{include:"#arithmetic_operators"},{include:"#logical_operators"},{include:"#array_access_operators"},{include:"#vector_creation_operators"},{include:"#control_keywords"},{include:"#other_keywords"},{include:"#use_namespace"},{include:"#functions"},{include:"#import"}]},comments:{patterns:[{begin:/\/\*\*(?!\/)/dgv,end:/\*\//dgv,name:"comment.block.documentation.actionscript.3",patterns:[{match:/@(copy|default|eventType|example|exampleText|includeExample|inheritDoc|internal|param|private|return|see|since|throws)\b/dgv,name:"keyword.other.documentation.actionscript.3.asdoc"}]},{begin:/\/\*/dgv,end:/\*\//dgv,name:"comment.block.actionscript.3"},{match:/\/\/[^\n]*/dgv,name:"comment.line.actionscript.3"}]},control_keywords:{match:/\b(if|else|do|while|for|each|continue|return|switch|case|default|break|try|catch|finally|throw|with)\b/dgv,name:"keyword.control.actionscript.3"},dynamic_type:{captures:{"1":{name:"support.type.actionscript.3"}},match:/(?<=:)\p{space}*(\*)/dgv},escapes:{match:/\\(x\p{AHex}{2}|[0-2][0-7]{0,2}|3[0-6][0-7]|37[0-7]?|[4-7][0-7]?|[^\n])/dgv,name:"constant.character.escape.actionscript.3"},extends:{captures:{"1":{name:"keyword.other.actionscript.3"},"2":{name:"entity.other.inherited-class.actionscript.3"},"3":{name:"entity.other.inherited-class.actionscript.3"}},match:/\b(extends)\b\p{space}+([\.\p{L}\p{M}\p{N}\p{Pc}]+)\p{space}*(?:,\p{space}*([\.\p{L}\p{M}\p{N}\p{Pc}]+))*\p{space}*/dgv,name:"meta.extends.actionscript.3"},function_arguments:{begin:/\(/dgv,end:/\)/dgv,name:"meta.function_arguments.actionscript.3",patterns:[{include:"#parameters"},{include:"#comments"}]},functions:{begin:/\b(function)\b(?:\p{space}+\b(get|set)\b\p{space}+)?\p{space}*([a-zA-Z0-9_\$]+\b)?/dgv,beginCaptures:{"1":{name:"storage.type.function.actionscript.3"},"2":{name:"storage.modifier.actionscript.3"},"3":{name:"entity.name.function.actionscript.3"}},end:/((?=$|\n)|;|(?=\{))/dgv,name:"meta.function.actionscript.3",patterns:[{include:"#function_arguments"},{include:"#return_type"},{include:"#comments"}]},guess_constant:{captures:{"1":{name:"constant.other.actionscript.3"}},comment:"Following convention, let's guess that anything in all caps/digits (possible underscores) is a constant.",match:/\b([A-Z\$][A-Z0-9_]+)\b/dgv},guess_type:{captures:{"1":{name:"support.type.actionscript.3"}},comment:"Following convention, let's guess that any word starting with one or more capital letters (that contains at least some lower-case letters so that constants aren't detected) refers to a class/type. May be fully-qualified.",match:/\b((?:[A-Za-z0-9_\$]+\.)*[A-Z][A-Z0-9]*[a-z]+[A-Za-z0-9_\$]*)\b/dgv},implements:{captures:{"1":{name:"keyword.other.actionscript.3"},"2":{name:"entity.other.inherited-class.actionscript.3"},"3":{name:"entity.other.inherited-class.actionscript.3"}},match:/\b(implements)\b\p{space}+([\.\p{L}\p{M}\p{N}\p{Pc}]+)\p{space}*(?:,\p{space}*([\.\p{L}\p{M}\p{N}\p{Pc}]+))*\p{space}*/dgv,name:"meta.implements.actionscript.3"},import:{captures:{"2":{name:"keyword.control.import.actionscript.3"},"3":{name:"support.type.actionscript.3"}},match:/((?<=^|\n(?!$))|\p{space}+|;)\b(import)\b\p{space}+([A-Za-z0-9\$_\.]+(?:\.\*)?)\p{space}*(?=;|(?=$|\n))/dgv,name:"meta.import.actionscript.3"},interface:{begin:/((?<=^|\n(?!$))|\p{space}+|;)(\b(internal|public)\b\p{space}+)?(?=\binterface\b)/dgv,beginCaptures:{"3":{name:"storage.modifier.actionscript.3"}},end:/\}/dgv,name:"meta.interface.actionscript.3",patterns:[{include:"#interface_declaration"},{include:"#metadata"},{include:"#functions"},{include:"#comments"}]},interface_declaration:{begin:/\b(interface)\b\p{space}+([\.\p{L}\p{M}\p{N}\p{Pc}]+)/dgv,beginCaptures:{"1":{name:"storage.type.interface.actionscript.3"},"2":{name:"entity.name.class.actionscript.3"}},end:/\{/dgv,name:"meta.class_declaration.actionscript.3",patterns:[{include:"#extends"},{include:"#comments"}]},language_constants:{match:/\b(true|false|null|Infinity|-Infinity|NaN|undefined)\b/dgv,name:"constant.language.actionscript.3"},language_variables:{match:/\b(super|this|arguments)\b/dgv,name:"variable.language.actionscript.3"},logical_operators:{match:/(&|<|~|\||>|\^|!|\?)/dgv,name:"keyword.operator.actionscript.3"},metadata:{begin:/\[\p{space}*\b([\p{L}\p{M}\p{N}\p{Pc}]+)\b/dgv,beginCaptures:{"1":{name:"keyword.other.actionscript.3"}},end:/\]/dgv,name:"meta.metadata_info.actionscript.3",patterns:[{include:"#metadata_info"}]},metadata_info:{begin:/\(/dgv,end:/\)/dgv,patterns:[{include:"#strings"},{captures:{"1":{name:"variable.parameter.actionscript.3"},"2":{name:"keyword.operator.actionscript.3"}},match:/([\p{L}\p{M}\p{N}\p{Pc}]+)\p{space}*(=)/dgv}]},method:{begin:/((?<=^|\n(?!$))|\p{space}+)(([\p{L}\p{M}\p{N}\p{Pc}]+)\p{space}+)?(([\p{L}\p{M}\p{N}\p{Pc}]+)\p{space}+)?(([\p{L}\p{M}\p{N}\p{Pc}]+)\p{space}+)?(([\p{L}\p{M}\p{N}\p{Pc}]+)\p{space}+)?(?=\bfunction\b)/dgv,beginCaptures:{"3":{name:"storage.modifier.actionscript.3"},"5":{name:"storage.modifier.actionscript.3"},"7":{name:"storage.modifier.actionscript.3"},"8":{name:"storage.modifier.actionscript.3"}},end:/(?<=(;|\}))/dgv,name:"meta.method.actionscript.3",patterns:[{include:"#functions"},{include:"#code_block"}]},mxml:{begin:/<!\[CDATA\[/dgv,end:/\]\]>/dgv,name:"meta.cdata.actionscript.3",patterns:[{include:"#comments"},{include:"#import"},{include:"#metadata"},{include:"#class"},{include:"#namespace_declaration"},{include:"#use_namespace"},{include:"#class_declaration"},{include:"#method"},{include:"#comments"},{include:"#strings"},{include:"#regexp"},{include:"#numbers"},{include:"#primitive_types"},{include:"#primitive_error_types"},{include:"#dynamic_type"},{include:"#primitive_functions"},{include:"#language_constants"},{include:"#language_variables"},{include:"#other_keywords"},{include:"#guess_type"},{include:"#guess_constant"},{include:"#other_operators"},{include:"#arithmetic_operators"},{include:"#array_access_operators"},{include:"#vector_creation_operators"},{include:"#variable_declaration"}]},namespace_declaration:{captures:{"2":{name:"storage.modifier.actionscript.3"},"3":{name:"storage.modifier.actionscript.3"}},match:/(([\p{L}\p{M}\p{N}\p{Pc}]+)\p{space}+)?(namespace)\p{space}+[A-Za-z0-9_\$]+/dgv,name:"meta.namespace_declaration.actionscript.3"},numbers:{match:/\b((0(x|X)[0-9a-fA-F]*)|((\p{Nd}+\.?\p{Nd}*)|(\.\p{Nd}+))((e|E)(\+|-)?\p{Nd}+)?)(L|l|UL|ul|u|U|F|f)?\b/dgv,name:"constant.numeric.actionscript.3"},object_literal:{begin:/\{/dgv,end:/\}/dgv,name:"meta.object_literal.actionscript.3",patterns:[{include:"#object_literal"},{include:"#comments"},{include:"#strings"},{include:"#regexp"},{include:"#numbers"},{include:"#primitive_types"},{include:"#primitive_error_types"},{include:"#dynamic_type"},{include:"#primitive_functions"},{include:"#language_constants"},{include:"#language_variables"},{include:"#guess_type"},{include:"#guess_constant"},{include:"#array_access_operators"},{include:"#vector_creation_operators"},{include:"#functions"}]},other_keywords:{match:/\b(as|delete|in|instanceof|is|native|new|to|typeof)\b/dgv,name:"keyword.other.actionscript.3"},other_operators:{match:/(\.|=)/dgv,name:"keyword.operator.actionscript.3"},package:{begin:/((?<=^|\n(?!$))|\p{space}+)(package)\b/dgv,beginCaptures:{"2":{name:"keyword.other.actionscript.3"}},end:/\}/dgv,name:"meta.package.actionscript.3",patterns:[{include:"#package_name"},{include:"#variable_declaration"},{include:"#method"},{include:"#comments"},{include:"#return_type"},{include:"#import"},{include:"#use_namespace"},{include:"#strings"},{include:"#numbers"},{include:"#language_constants"},{include:"#metadata"},{include:"#class"},{include:"#interface"},{include:"#namespace_declaration"}]},package_name:{begin:/(?<=package)\p{space}+([\p{L}\p{M}\p{N}\p{Pc}\._]*)\b/dgv,end:/\{/dgv,name:"meta.package_name.actionscript.3"},parameters:{begin:/(\.\.\.)?\p{space}*([A-Za-z_\$][A-Za-z0-9_\$]*)(?:\p{space}*(:)\p{space}*(?:([A-Za-z\$][A-Za-z0-9_\$]+(?:\.[A-Za-z\$][A-Za-z0-9_\$]+)*)(?:\.<([A-Za-z\$][A-Za-z0-9_\$]+(?:\.[A-Za-z\$][A-Za-z0-9_\$]+)*)>)?|(\*)))?(?:\p{space}*(=))?/dgv,beginCaptures:{"1":{name:"keyword.operator.actionscript.3"},"2":{name:"variable.parameter.actionscript.3"},"3":{name:"keyword.operator.actionscript.3"},"4":{name:"support.type.actionscript.3"},"5":{name:"support.type.actionscript.3"},"6":{name:"support.type.actionscript.3"},"7":{name:"keyword.operator.actionscript.3"}},end:/,|(?=\))/dgv,patterns:[{include:"#strings"},{include:"#numbers"},{include:"#language_constants"},{include:"#comments"},{include:"#primitive_types"},{include:"#primitive_error_types"},{include:"#dynamic_type"},{include:"#guess_type"},{include:"#guess_constant"}]},primitive_error_types:{captures:{"1":{name:"support.class.error.actionscript.3"}},match:/\b((Argument|Definition|Eval|Internal|Range|Reference|Security|Syntax|Type|URI|Verify)?Error)\b/dgv},primitive_functions:{captures:{"1":{name:"support.function.actionscript.3"}},match:/\b(decodeURI|decodeURIComponent|encodeURI|encodeURIComponent|escape|isFinite|isNaN|isXMLName|parseFloat|parseInt|trace|unescape)(?=\p{space}*\()/dgv},primitive_types:{captures:{"1":{name:"support.class.builtin.actionscript.3"}},match:/\b(Array|Boolean|Class|Date|Function|int|JSON|Math|Namespace|Number|Object|QName|RegExp|String|uint|Vector|XML|XMLList|\*(?<=a))\b/dgv},regexp:{begin:/(?<=[\=\(\:\,\[]|(?<=^|\n(?!$))|return|&&|\|\||!)\p{space}*(\/)(?![\/\*\+\{\}\?])/dgv,end:/(?=$|\n)|(\/)[igm]*/dgv,name:"string.regex.actionscript.3",patterns:[{match:/\\[^\n]/dgv,name:"constant.character.escape.actionscript.3"},{match:/\[(\\\]|[^\]])*\]/dgv,name:"constant.character.class.actionscript.3"}]},return_type:{captures:{"1":{name:"keyword.operator.actionscript.3"},"2":{name:"support.type.actionscript.3"},"3":{name:"support.type.actionscript.3"},"4":{name:"support.type.actionscript.3"}},match:/(:)\p{space}*([A-Za-z\$][A-Za-z0-9_\$]+(?:\.[A-Za-z\$][A-Za-z0-9_\$]+)*)(?:\.<([A-Za-z\$][A-Za-z0-9_\$]+(?:\.[A-Za-z\$][A-Za-z0-9_\$]+)*)>)?|(\*)/dgv},strings:{patterns:[{begin:/@"/dgv,end:/"/dgv,name:"string.quoted.verbatim.actionscript.3"},{begin:/"/dgv,end:/"/dgv,name:"string.quoted.double.actionscript.3",patterns:[{include:"#escapes"}]},{begin:/'/dgv,end:/'/dgv,name:"string.quoted.single.actionscript.3",patterns:[{include:"#escapes"}]}]},use_namespace:{captures:{"2":{name:"keyword.other.actionscript.3"},"3":{name:"keyword.other.actionscript.3"},"4":{name:"storage.modifier.actionscript.3"}},match:/((?<=^|\n(?!$))|\p{space}+|;)(use\p{space}+)?(namespace)\p{space}+([\p{L}\p{M}\p{N}\p{Pc}]+)\p{space}*(;|(?=$|\n))/dgv},variable_declaration:{captures:{"2":{name:"storage.modifier.actionscript.3"},"4":{name:"storage.modifier.actionscript.3"},"6":{name:"storage.modifier.actionscript.3"},"7":{name:"storage.modifier.actionscript.3"},"8":{name:"keyword.operator.actionscript.3"}},match:/((static)\p{space}+)?(([\p{L}\p{M}\p{N}\p{Pc}]+)\p{space}+)?((static)\p{space}+)?(const|var)\p{space}+[A-Za-z0-9_\$]+(?:\p{space}*(:))?/dgv,name:"meta.variable_declaration.actionscript.3"},vector_creation_operators:{match:/(<|>)/dgv,name:"keyword.operator.actionscript.3"}},scopeName:"source.actionscript.3",embeddedLangs:undefined,aliases:undefined})
1
+ const lang = Object.freeze({displayName:"ActionScript",fileTypes:["as"],name:"actionscript-3",patterns:[{include:"#comments"},{include:"#package"},{include:"#class"},{include:"#interface"},{include:"#namespace_declaration"},{include:"#import"},{include:"#mxml"},{include:"#strings"},{include:"#regexp"},{include:"#variable_declaration"},{include:"#numbers"},{include:"#primitive_types"},{include:"#primitive_error_types"},{include:"#dynamic_type"},{include:"#primitive_functions"},{include:"#language_constants"},{include:"#language_variables"},{include:"#guess_type"},{include:"#guess_constant"},{include:"#other_operators"},{include:"#arithmetic_operators"},{include:"#logical_operators"},{include:"#array_access_operators"},{include:"#vector_creation_operators"},{include:"#control_keywords"},{include:"#other_keywords"},{include:"#use_namespace"},{include:"#functions"}],repository:{arithmetic_operators:{match:/(\+|-|\/|%|(?<!:)\*)/dgv,name:"keyword.operator.actionscript.3"},array_access_operators:{match:/(\[|\])/dgv,name:"keyword.operator.actionscript.3"},class:{begin:/((?<=^|\n(?!$))|\p{space}+|;)(\b(dynamic|final|abstract)\b\p{space}+)?(\b(internal|public)\b\p{space}+)?(\b(dynamic|final|abstract)\b\p{space}+)?(?=\bclass\b)/dgv,beginCaptures:{"3":{name:"storage.modifier.actionscript.3"},"5":{name:"storage.modifier.actionscript.3"},"7":{name:"storage.modifier.actionscript.3"}},end:/\}/dgv,name:"meta.class.actionscript.3",patterns:[{include:"#class_declaration"},{include:"#metadata"},{include:"#method"},{include:"#comments"},{include:"#strings"},{include:"#regexp"},{include:"#numbers"},{include:"#primitive_types"},{include:"#primitive_error_types"},{include:"#dynamic_type"},{include:"#primitive_functions"},{include:"#language_constants"},{include:"#language_variables"},{include:"#other_operators"},{include:"#other_keywords"},{include:"#use_namespace"},{include:"#guess_type"},{include:"#guess_constant"},{include:"#arithmetic_operators"},{include:"#array_access_operators"},{include:"#vector_creation_operators"},{include:"#variable_declaration"},{include:"#object_literal"}]},class_declaration:{begin:/\b(class)\b\p{space}+([\.\p{L}\p{M}\p{N}\p{Pc}]+|\*)/dgv,beginCaptures:{"1":{name:"storage.type.class.actionscript.3"},"2":{name:"entity.name.class.actionscript.3"}},end:/\{/dgv,name:"meta.class_declaration.actionscript.3",patterns:[{include:"#extends"},{include:"#implements"},{include:"#comments"}]},code_block:{begin:/\{/dgv,end:/\}/dgv,name:"meta.code_block.actionscript.3",patterns:[{include:"#code_block"},{include:"#comments"},{include:"#strings"},{include:"#regexp"},{include:"#variable_declaration"},{include:"#numbers"},{include:"#primitive_types"},{include:"#primitive_error_types"},{include:"#dynamic_type"},{include:"#primitive_functions"},{include:"#language_constants"},{include:"#language_variables"},{include:"#guess_type"},{include:"#guess_constant"},{include:"#other_operators"},{include:"#arithmetic_operators"},{include:"#logical_operators"},{include:"#array_access_operators"},{include:"#vector_creation_operators"},{include:"#control_keywords"},{include:"#other_keywords"},{include:"#use_namespace"},{include:"#functions"},{include:"#import"}]},comments:{patterns:[{begin:/\/\*\*(?!\/)/dgv,end:/\*\//dgv,name:"comment.block.documentation.actionscript.3",patterns:[{match:/@(copy|default|eventType|example|exampleText|includeExample|inheritDoc|internal|param|private|return|see|since|throws)\b/dgv,name:"keyword.other.documentation.actionscript.3.asdoc"}]},{begin:/\/\*/dgv,end:/\*\//dgv,name:"comment.block.actionscript.3"},{match:/\/\/[^\n]*/dgv,name:"comment.line.actionscript.3"}]},control_keywords:{match:/\b(if|else|do|while|for|each|continue|return|switch|case|default|break|try|catch|finally|throw|with)\b/dgv,name:"keyword.control.actionscript.3"},dynamic_type:{captures:{"1":{name:"support.type.actionscript.3"}},match:/(?<=:)\p{space}*(\*)/dgv},escapes:{match:/\\(x\p{AHex}{2}|[0-2][0-7]{0,2}|3[0-6][0-7]|37[0-7]?|[4-7][0-7]?|[^\n])/dgv,name:"constant.character.escape.actionscript.3"},extends:{captures:{"1":{name:"keyword.other.actionscript.3"},"2":{name:"entity.other.inherited-class.actionscript.3"},"3":{name:"entity.other.inherited-class.actionscript.3"}},match:/\b(extends)\b\p{space}+([\.\p{L}\p{M}\p{N}\p{Pc}]+)\p{space}*(?:,\p{space}*([\.\p{L}\p{M}\p{N}\p{Pc}]+))*\p{space}*/dgv,name:"meta.extends.actionscript.3"},function_arguments:{begin:/\(/dgv,end:/\)/dgv,name:"meta.function_arguments.actionscript.3",patterns:[{include:"#parameters"},{include:"#comments"}]},functions:{begin:/\b(function)\b(?:\p{space}+\b(get|set)\b\p{space}+)?\p{space}*([a-zA-Z0-9_\$]+\b)?/dgv,beginCaptures:{"1":{name:"storage.type.function.actionscript.3"},"2":{name:"storage.modifier.actionscript.3"},"3":{name:"entity.name.function.actionscript.3"}},end:/((?=$|\n)|;|(?=\{))/dgv,name:"meta.function.actionscript.3",patterns:[{include:"#function_arguments"},{include:"#return_type"},{include:"#comments"}]},guess_constant:{captures:{"1":{name:"constant.other.actionscript.3"}},comment:"Following convention, let's guess that anything in all caps/digits (possible underscores) is a constant.",match:/\b([A-Z\$][A-Z0-9_]+)\b/dgv},guess_type:{captures:{"1":{name:"support.type.actionscript.3"}},comment:"Following convention, let's guess that any word starting with one or more capital letters (that contains at least some lower-case letters so that constants aren't detected) refers to a class/type. May be fully-qualified.",match:/\b((?:[A-Za-z0-9_\$]+\.)*[A-Z][A-Z0-9]*[a-z]+[A-Za-z0-9_\$]*)\b/dgv},implements:{captures:{"1":{name:"keyword.other.actionscript.3"},"2":{name:"entity.other.inherited-class.actionscript.3"},"3":{name:"entity.other.inherited-class.actionscript.3"}},match:/\b(implements)\b\p{space}+([\.\p{L}\p{M}\p{N}\p{Pc}]+)\p{space}*(?:,\p{space}*([\.\p{L}\p{M}\p{N}\p{Pc}]+))*\p{space}*/dgv,name:"meta.implements.actionscript.3"},import:{captures:{"2":{name:"keyword.control.import.actionscript.3"},"3":{name:"support.type.actionscript.3"}},match:/((?<=^|\n(?!$))|\p{space}+|;)\b(import)\b\p{space}+([A-Za-z0-9\$_\.]+(?:\.\*)?)\p{space}*(?=;|(?=$|\n))/dgv,name:"meta.import.actionscript.3"},interface:{begin:/((?<=^|\n(?!$))|\p{space}+|;)(\b(internal|public)\b\p{space}+)?(?=\binterface\b)/dgv,beginCaptures:{"3":{name:"storage.modifier.actionscript.3"}},end:/\}/dgv,name:"meta.interface.actionscript.3",patterns:[{include:"#interface_declaration"},{include:"#metadata"},{include:"#functions"},{include:"#comments"}]},interface_declaration:{begin:/\b(interface)\b\p{space}+([\.\p{L}\p{M}\p{N}\p{Pc}]+)/dgv,beginCaptures:{"1":{name:"storage.type.interface.actionscript.3"},"2":{name:"entity.name.class.actionscript.3"}},end:/\{/dgv,name:"meta.class_declaration.actionscript.3",patterns:[{include:"#extends"},{include:"#comments"}]},language_constants:{match:/\b(true|false|null|Infinity|-Infinity|NaN|undefined)\b/dgv,name:"constant.language.actionscript.3"},language_variables:{match:/\b(super|this|arguments)\b/dgv,name:"variable.language.actionscript.3"},logical_operators:{match:/(&|<|~|\||>|\^|!|\?)/dgv,name:"keyword.operator.actionscript.3"},metadata:{begin:/\[\p{space}*\b([\p{L}\p{M}\p{N}\p{Pc}]+)\b/dgv,beginCaptures:{"1":{name:"keyword.other.actionscript.3"}},end:/\]/dgv,name:"meta.metadata_info.actionscript.3",patterns:[{include:"#metadata_info"}]},metadata_info:{begin:/\(/dgv,end:/\)/dgv,patterns:[{include:"#strings"},{captures:{"1":{name:"variable.parameter.actionscript.3"},"2":{name:"keyword.operator.actionscript.3"}},match:/([\p{L}\p{M}\p{N}\p{Pc}]+)\p{space}*(=)/dgv}]},method:{begin:/((?<=^|\n(?!$))|\p{space}+)(([\p{L}\p{M}\p{N}\p{Pc}]+)\p{space}+)?(([\p{L}\p{M}\p{N}\p{Pc}]+)\p{space}+)?(([\p{L}\p{M}\p{N}\p{Pc}]+)\p{space}+)?(([\p{L}\p{M}\p{N}\p{Pc}]+)\p{space}+)?(?=\bfunction\b)/dgv,beginCaptures:{"3":{name:"storage.modifier.actionscript.3"},"5":{name:"storage.modifier.actionscript.3"},"7":{name:"storage.modifier.actionscript.3"},"8":{name:"storage.modifier.actionscript.3"}},end:/(?<=(;|\}))/dgv,name:"meta.method.actionscript.3",patterns:[{include:"#functions"},{include:"#code_block"}]},mxml:{begin:/<!\[CDATA\[/dgv,end:/\]\]>/dgv,name:"meta.cdata.actionscript.3",patterns:[{include:"#comments"},{include:"#import"},{include:"#metadata"},{include:"#class"},{include:"#namespace_declaration"},{include:"#use_namespace"},{include:"#class_declaration"},{include:"#method"},{include:"#comments"},{include:"#strings"},{include:"#regexp"},{include:"#numbers"},{include:"#primitive_types"},{include:"#primitive_error_types"},{include:"#dynamic_type"},{include:"#primitive_functions"},{include:"#language_constants"},{include:"#language_variables"},{include:"#other_keywords"},{include:"#guess_type"},{include:"#guess_constant"},{include:"#other_operators"},{include:"#arithmetic_operators"},{include:"#array_access_operators"},{include:"#vector_creation_operators"},{include:"#variable_declaration"}]},namespace_declaration:{captures:{"2":{name:"storage.modifier.actionscript.3"},"3":{name:"storage.modifier.actionscript.3"}},match:/(([\p{L}\p{M}\p{N}\p{Pc}]+)\p{space}+)?(namespace)\p{space}+[A-Za-z0-9_\$]+/dgv,name:"meta.namespace_declaration.actionscript.3"},numbers:{match:/\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\.?[0-9]*)|(\.[0-9]+))((e|E)(\+|-)?[0-9]+)?)(L|l|UL|ul|u|U|F|f)?\b/dgv,name:"constant.numeric.actionscript.3"},object_literal:{begin:/\{/dgv,end:/\}/dgv,name:"meta.object_literal.actionscript.3",patterns:[{include:"#object_literal"},{include:"#comments"},{include:"#strings"},{include:"#regexp"},{include:"#numbers"},{include:"#primitive_types"},{include:"#primitive_error_types"},{include:"#dynamic_type"},{include:"#primitive_functions"},{include:"#language_constants"},{include:"#language_variables"},{include:"#guess_type"},{include:"#guess_constant"},{include:"#array_access_operators"},{include:"#vector_creation_operators"},{include:"#functions"}]},other_keywords:{match:/\b(as|delete|in|instanceof|is|native|new|to|typeof)\b/dgv,name:"keyword.other.actionscript.3"},other_operators:{match:/(\.|=)/dgv,name:"keyword.operator.actionscript.3"},package:{begin:/((?<=^|\n(?!$))|\p{space}+)(package)\b/dgv,beginCaptures:{"2":{name:"keyword.other.actionscript.3"}},end:/\}/dgv,name:"meta.package.actionscript.3",patterns:[{include:"#package_name"},{include:"#variable_declaration"},{include:"#method"},{include:"#comments"},{include:"#return_type"},{include:"#import"},{include:"#use_namespace"},{include:"#strings"},{include:"#numbers"},{include:"#language_constants"},{include:"#metadata"},{include:"#class"},{include:"#interface"},{include:"#namespace_declaration"}]},package_name:{begin:/(?<=package)\p{space}+([\p{L}\p{M}\p{N}\p{Pc}\._]*)\b/dgv,end:/\{/dgv,name:"meta.package_name.actionscript.3"},parameters:{begin:/(\.\.\.)?\p{space}*([A-Za-z_\$][A-Za-z0-9_\$]*)(?:\p{space}*(:)\p{space}*(?:([A-Za-z\$][A-Za-z0-9_\$]+(?:\.[A-Za-z\$][A-Za-z0-9_\$]+)*)(?:\.<([A-Za-z\$][A-Za-z0-9_\$]+(?:\.[A-Za-z\$][A-Za-z0-9_\$]+)*)>)?|(\*)))?(?:\p{space}*(=))?/dgv,beginCaptures:{"1":{name:"keyword.operator.actionscript.3"},"2":{name:"variable.parameter.actionscript.3"},"3":{name:"keyword.operator.actionscript.3"},"4":{name:"support.type.actionscript.3"},"5":{name:"support.type.actionscript.3"},"6":{name:"support.type.actionscript.3"},"7":{name:"keyword.operator.actionscript.3"}},end:/,|(?=\))/dgv,patterns:[{include:"#strings"},{include:"#numbers"},{include:"#language_constants"},{include:"#comments"},{include:"#primitive_types"},{include:"#primitive_error_types"},{include:"#dynamic_type"},{include:"#guess_type"},{include:"#guess_constant"}]},primitive_error_types:{captures:{"1":{name:"support.class.error.actionscript.3"}},match:/\b((Argument|Definition|Eval|Internal|Range|Reference|Security|Syntax|Type|URI|Verify)?Error)\b/dgv},primitive_functions:{captures:{"1":{name:"support.function.actionscript.3"}},match:/\b(decodeURI|decodeURIComponent|encodeURI|encodeURIComponent|escape|isFinite|isNaN|isXMLName|parseFloat|parseInt|trace|unescape)(?=\p{space}*\()/dgv},primitive_types:{captures:{"1":{name:"support.class.builtin.actionscript.3"}},match:/\b(Array|Boolean|Class|Date|Function|int|JSON|Math|Namespace|Number|Object|QName|RegExp|String|uint|Vector|XML|XMLList|\*(?<=a))\b/dgv},regexp:{begin:/(?<=[\=\(\:\,\[]|(?<=^|\n(?!$))|return|&&|\|\||!)\p{space}*(\/)(?![\/\*\+\{\}\?])/dgv,end:/(?=$|\n)|(\/)[igm]*/dgv,name:"string.regex.actionscript.3",patterns:[{match:/\\[^\n]/dgv,name:"constant.character.escape.actionscript.3"},{match:/\[(\\\]|[^\]])*\]/dgv,name:"constant.character.class.actionscript.3"}]},return_type:{captures:{"1":{name:"keyword.operator.actionscript.3"},"2":{name:"support.type.actionscript.3"},"3":{name:"support.type.actionscript.3"},"4":{name:"support.type.actionscript.3"}},match:/(:)\p{space}*([A-Za-z\$][A-Za-z0-9_\$]+(?:\.[A-Za-z\$][A-Za-z0-9_\$]+)*)(?:\.<([A-Za-z\$][A-Za-z0-9_\$]+(?:\.[A-Za-z\$][A-Za-z0-9_\$]+)*)>)?|(\*)/dgv},strings:{patterns:[{begin:/@"/dgv,end:/"/dgv,name:"string.quoted.verbatim.actionscript.3"},{begin:/"/dgv,end:/"/dgv,name:"string.quoted.double.actionscript.3",patterns:[{include:"#escapes"}]},{begin:/'/dgv,end:/'/dgv,name:"string.quoted.single.actionscript.3",patterns:[{include:"#escapes"}]}]},use_namespace:{captures:{"2":{name:"keyword.other.actionscript.3"},"3":{name:"keyword.other.actionscript.3"},"4":{name:"storage.modifier.actionscript.3"}},match:/((?<=^|\n(?!$))|\p{space}+|;)(use\p{space}+)?(namespace)\p{space}+([\p{L}\p{M}\p{N}\p{Pc}]+)\p{space}*(;|(?=$|\n))/dgv},variable_declaration:{captures:{"2":{name:"storage.modifier.actionscript.3"},"4":{name:"storage.modifier.actionscript.3"},"6":{name:"storage.modifier.actionscript.3"},"7":{name:"storage.modifier.actionscript.3"},"8":{name:"keyword.operator.actionscript.3"}},match:/((static)\p{space}+)?(([\p{L}\p{M}\p{N}\p{Pc}]+)\p{space}+)?((static)\p{space}+)?(const|var)\p{space}+[A-Za-z0-9_\$]+(?:\p{space}*(:))?/dgv,name:"meta.variable_declaration.actionscript.3"},vector_creation_operators:{match:/(<|>)/dgv,name:"keyword.operator.actionscript.3"}},scopeName:"source.actionscript.3",embeddedLangs:undefined,aliases:undefined})
2
2
 
3
3
  export default [
4
4
  lang
@@ -1,4 +1,4 @@
1
- const lang = Object.freeze({injectionSelector:"L:text.html -comment",name:"angular-expression",patterns:[{include:"#ngExpression"}],repository:{arrayLiteral:{begin:/\[/dgv,beginCaptures:{"0":{name:"meta.brace.square.ts"}},end:/\]/dgv,endCaptures:{"0":{name:"meta.brace.square.ts"}},name:"meta.array.literal.ts",patterns:[{include:"#ngExpression"},{include:"#punctuationComma"}]},booleanLiteral:{patterns:[{match:/(?<!\.|\$)\btrue\b(?!\$)/dgv,name:"constant.language.boolean.true.ts"},{match:/(?<!\.|\$)\bfalse\b(?!\$)/dgv,name:"constant.language.boolean.false.ts"}]},expressionOperator:{patterns:[{captures:{"1":{name:"keyword.operator.logical.ts"},"2":{name:"entity.name.function.pipe.ng"}},match:/((?<!\|)\|(?!\|))\p{space}?([a-zA-Z0-9\-_\$]*)/dgv},{match:/(?<!\.|\$)\b(let)\b(?!\$)/dgv,name:"storage.type.ts"},{match:/(?<!\.|\$)\b(await)\b(?!\$)/dgv,name:"keyword.control.flow.ts"},{match:/(?<!\.|\$)\bdelete\b(?!\$)/dgv,name:"keyword.operator.expression.delete.ts"},{match:/(?<!\.|\$)\bin\b(?!\$)/dgv,name:"keyword.operator.expression.in.ts"},{match:/(?<!\.|\$)\bof\b(?!\$)/dgv,name:"keyword.operator.expression.of.ts"},{match:/(?<!\.|\$)\bif\b(?!\$)/dgv,name:"keyword.control.if.ts"},{match:/(?<!\.|\$)\belse\b(?!\$)/dgv,name:"keyword.control.else.ts"},{match:/(?<!\.|\$)\bthen\b(?!\$)/dgv,name:"keyword.control.then.ts"},{match:/(?<!\.|\$)\binstanceof\b(?!\$)/dgv,name:"keyword.operator.expression.instanceof.ts"},{match:/(?<!\.|\$)\bnew\b(?!\$)/dgv,name:"keyword.operator.new.ts"},{match:/(?<!\.|\$)\bvoid\b(?!\$)/dgv,name:"keyword.operator.expression.void.ts"},{begin:/(?<!\.|\$)\bas\b(?!\$)/dgv,beginCaptures:{"0":{name:"storage.type.as.ts"}},end:/(?=(?=$|\n)|"|'|[\;\,\:\}\)\]])/dgv,patterns:[{include:"#type"}]},{match:/\*=|(?<!\()\/=|%=|\+=|-=/dgv,name:"keyword.operator.assignment.compound.ts"},{match:/&=|\^=|<<=|>>=|>>>=|\|=/dgv,name:"keyword.operator.assignment.compound.bitwise.ts"},{match:/<<|>>>|>>/dgv,name:"keyword.operator.bitwise.shift.ts"},{match:/===|!==|==|!=/dgv,name:"keyword.operator.comparison.ts"},{match:/<=|>=|<>|<|>/dgv,name:"keyword.operator.relational.ts"},{match:/!|&&|\?\?|\|\|/dgv,name:"keyword.operator.logical.ts"},{match:/&|~|\^|\|/dgv,name:"keyword.operator.bitwise.ts"},{match:/=/dgv,name:"keyword.operator.assignment.ts"},{match:/--/dgv,name:"keyword.operator.decrement.ts"},{match:/\+\+/dgv,name:"keyword.operator.increment.ts"},{match:/%|\*|\/|-|\+/dgv,name:"keyword.operator.arithmetic.ts"},{captures:{"1":{name:"keyword.operator.arithmetic.ts"}},match:/(?<=[_\$0-9A-Za-z])\p{space}*(\/)(?![\/\*])/dgv},{include:"#typeofOperator"}]},functionCall:{begin:/(?=(\??\.\p{space}*)?([_\$A-Za-z][_\$0-9A-Za-z]*)\p{space}*(<([^\<\>]|<[^\<\>]+>)+>\p{space}*)?\()/dgv,end:/(?<=\))(?!(\??\.\p{space}*)?([_\$A-Za-z][_\$0-9A-Za-z]*)\p{space}*(<([^\<\>]|<[^\<\>]+>)+>\p{space}*)?\()/dgv,patterns:[{match:/\?/dgv,name:"punctuation.accessor.ts"},{match:/\./dgv,name:"punctuation.accessor.ts"},{match:/([_\$A-Za-z][_\$0-9A-Za-z]*)/dgv,name:"entity.name.function.ts"},{begin:/</dgv,beginCaptures:{"0":{name:"punctuation.definition.typeparameters.begin.ts"}},end:/>/dgv,endCaptures:{"0":{name:"punctuation.definition.typeparameters.end.ts"}},name:"meta.type.parameters.ts",patterns:[{include:"#type"},{include:"#punctuationComma"}]},{include:"#parenExpression"}]},functionParameters:{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.definition.parameters.begin.ts"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.definition.parameters.end.ts"}},name:"meta.parameters.ts",patterns:[{include:"#decorator"},{include:"#parameterName"},{include:"#variableInitializer"},{match:/,/dgv,name:"punctuation.separator.parameter.ts"}]},identifiers:{patterns:[{match:/([_\$A-Za-z][_\$0-9A-Za-z]*)(?=\p{space}*\.\p{space}*prototype\b(?!\$))/dgv,name:"support.class.ts"},{captures:{"1":{name:"punctuation.accessor.ts"},"2":{name:"constant.other.object.property.ts"},"3":{name:"variable.other.object.property.ts"}},match:/([\?\!]?\.)\p{space}*(?:([A-Z][_\$\p{Nd}A-Z]*)|([_\$A-Za-z][_\$0-9A-Za-z]*))(?=\p{space}*\.\p{space}*[_\$A-Za-z][_\$0-9A-Za-z]*)/dgv},{captures:{"1":{name:"punctuation.accessor.ts"},"2":{name:"entity.name.function.ts"}},match:/(?:([\?\!]?\.)\p{space}*)?([_\$A-Za-z][_\$0-9A-Za-z]*)(?=\p{space}*=\p{space}*((async\p{space}+)|(function\p{space}*[\(\<])|(function\p{space}+)|([_\$A-Za-z][_\$0-9A-Za-z]*\p{space}*=>)|((<([^\<\>]|<[^\<\>]+>)+>\p{space}*)?\(([^\(\)]|\([^\(\)]*\))*\)(\p{space}*:\p{space}*([^\n])*)?\p{space}*=>)))/dgv},{captures:{"1":{name:"punctuation.accessor.ts"},"2":{name:"constant.other.property.ts"}},match:/([\?\!]?\.)\p{space}*([A-Z][_\$\p{Nd}A-Z]*)(?![_\$0-9A-Za-z])/dgv},{captures:{"1":{name:"punctuation.accessor.ts"},"2":{name:"variable.other.property.ts"}},match:/([\?\!]?\.)\p{space}*([_\$A-Za-z][_\$0-9A-Za-z]*)/dgv},{captures:{"1":{name:"constant.other.object.ts"},"2":{name:"variable.other.object.ts"}},match:/(?:([A-Z][_\$\p{Nd}A-Z]*)|([_\$A-Za-z][_\$0-9A-Za-z]*))(?=\p{space}*\.\p{space}*[_\$A-Za-z][_\$0-9A-Za-z]*)/dgv},{match:/([A-Z][_\$\p{Nd}A-Z]*)(?![_\$0-9A-Za-z])/dgv,name:"constant.character.other"},{match:/[_\$A-Za-z][_\$0-9A-Za-z]*/dgv,name:"variable.other.readwrite.ts"}]},literal:{name:"literal.ts",patterns:[{include:"#numericLiteral"},{include:"#booleanLiteral"},{include:"#nullLiteral"},{include:"#undefinedLiteral"},{include:"#numericConstantLiteral"},{include:"#arrayLiteral"},{include:"#thisLiteral"}]},ngExpression:{name:"meta.expression.ng",patterns:[{include:"#string"},{include:"#literal"},{include:"#ternaryExpression"},{include:"#expressionOperator"},{include:"#functionCall"},{include:"#identifiers"},{include:"#parenExpression"},{include:"#punctuationComma"},{include:"#punctuationAccessor"}]},nullLiteral:{match:/(?<!\.|\$)\bnull\b(?!\$)/dgv,name:"constant.language.null.ts"},numericConstantLiteral:{patterns:[{match:/(?<!\.|\$)\bNaN\b(?!\$)/dgv,name:"constant.language.nan.ts"},{match:/(?<!\.|\$)\bInfinity\b(?!\$)/dgv,name:"constant.language.infinity.ts"}]},numericLiteral:{patterns:[{match:/\b(?<!\$)0(x|X)[0-9a-fA-F]+\b(?!\$)/dgv,name:"constant.numeric.hex.ts"},{match:/\b(?<!\$)0(b|B)[01]+\b(?!\$)/dgv,name:"constant.numeric.binary.ts"},{match:/\\b(?<!\$)0(o|O)?[0-7]+\b(?!\$)/dgv,name:"constant.numeric.octal.ts"},{captures:{"0":{name:"constant.numeric.decimal.ts"},"1":{name:"meta.delimiter.decimal.period.ts"},"2":{name:"meta.delimiter.decimal.period.ts"},"3":{name:"meta.delimiter.decimal.period.ts"},"4":{name:"meta.delimiter.decimal.period.ts"},"5":{name:"meta.delimiter.decimal.period.ts"},"6":{name:"meta.delimiter.decimal.period.ts"}},match:/(?<!\$)(?:\b\p{Nd}+(\.)\p{Nd}+[eE][\+\-]?\p{Nd}+\b|#1[^\n]1E+3\b\p{Nd}+(\.)[eE][\+\-]?\p{Nd}+\b|#1[^\n]E+3\B(\.)\p{Nd}+[eE][\+\-]?\p{Nd}+\b|#[^\n]1E+3\b\p{Nd}+[eE][\+\-]?\p{Nd}+\b|#1E+3\b\p{Nd}+(\.)\p{Nd}+\b|#1[^\n]1\b\p{Nd}+(\.)\B|#1[^\n]\B(\.)\p{Nd}+\b|#[^\n]1\b\p{Nd}+\b(?!\.)#1)(?!\$)/dgv}]},parameterName:{patterns:[{captures:{"1":{name:"storage.modifier.ts"},"2":{name:"storage.modifier.ts"},"3":{name:"keyword.operator.rest.ts"},"4":{name:"entity.name.function.ts"},"5":{name:"keyword.operator.optional.ts"}},match:/(?:\p{space}*\b(readonly)\p{space}+)?(?:\p{space}*\b(public|private|protected)\p{space}+)?(\.\.\.)?\p{space}*(?<!=|:)([_\$A-Za-z][_\$0-9A-Za-z]*)\p{space}*(\??)(?=\p{space}*(=\p{space}*((async\p{space}+)|(function\p{space}*[\(\<])|(function\p{space}+)|([_\$A-Za-z][_\$0-9A-Za-z]*\p{space}*=>)|((<([^\<\>]|<[^\<\>]+>)+>\p{space}*)?\(([^\(\)]|\([^\(\)]*\))*\)(\p{space}*:\p{space}*([^\n])*)?\p{space}*=>)))|(:\p{space}*((<)|([\(]\p{space}*(([\)])|(\.\.\.)|([_\$0-9A-Za-z]+\p{space}*(([\:\,\?\=])|([\)]\p{space}*=>))))))))/dgv},{captures:{"1":{name:"storage.modifier.ts"},"2":{name:"storage.modifier.ts"},"3":{name:"keyword.operator.rest.ts"},"4":{name:"variable.parameter.ts"},"5":{name:"keyword.operator.optional.ts"}},match:/(?:\p{space}*\b(readonly)\p{space}+)?(?:\p{space}*\b(public|private|protected)\p{space}+)?(\.\.\.)?\p{space}*(?<!=|:)([_\$A-Za-z][_\$0-9A-Za-z]*)\p{space}*(\??)/dgv}]},parenExpression:{begin:/\(/dgv,beginCaptures:{"0":{name:"meta.brace.round.ts"}},end:/\)/dgv,endCaptures:{"0":{name:"meta.brace.round.ts"}},patterns:[{include:"#ngExpression"},{include:"#punctuationComma"}]},punctuationAccessor:{match:/\?\.|!\.|\./dgv,name:"punctuation.accessor.ts"},punctuationComma:{match:/,/dgv,name:"punctuation.separator.comma.ts"},punctuationSemicolon:{match:/;/dgv,name:"punctuation.terminator.statement.ts"},qstringDouble:{begin:/"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.ts"}},end:/(")|([^\\\n](?=$|\n))/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.ts"},"2":{name:"invalid.illegal.newline.ts"}},name:"string.quoted.double.ts",patterns:[{include:"#stringCharacterEscape"}]},qstringSingle:{begin:/'/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.ts"}},end:/(')|([^\\\n](?=$|\n))/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.ts"},"2":{name:"invalid.illegal.newline.ts"}},name:"string.quoted.single.ts",patterns:[{include:"#stringCharacterEscape"}]},string:{patterns:[{include:"#qstringSingle"},{include:"#qstringDouble"}]},stringCharacterEscape:{match:/\\(x\p{AHex}{2}|[0-2][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|[^\n]|(?=$|\n))/dgv,name:"constant.character.escape.ts"},ternaryExpression:{begin:/(?!\?\.\p{space}*[^\p{Nd}])(\?)(?!\?)/dgv,beginCaptures:{"1":{name:"keyword.operator.ternary.ts"}},end:/\p{space}*(:)/dgv,endCaptures:{"1":{name:"keyword.operator.ternary.ts"}},patterns:[{include:"#ngExpression"}]},thisLiteral:{match:/(?<!\.|\$)\bthis\b(?!\$)/dgv,name:"variable.language.this.ts"},type:{name:"meta.type.ts",patterns:[{include:"#string"},{include:"#numericLiteral"},{include:"#typeBuiltinLiterals"},{include:"#typeTuple"},{include:"#typeObject"},{include:"#typeOperators"},{include:"#typeFnTypeParameters"},{include:"#typeParenOrFunctionParameters"},{include:"#typeName"}]},typeAnnotation:{begin:/:/dgv,beginCaptures:{"0":{name:"keyword.operator.type.annotation.ts"}},end:/(?=(?=$|\n)|[\,\)\;\}\]]|\/\/|")|(?==[^\>])|(?<=[\}\>\]\)]|[_\$A-Za-z])\p{space}*(?=\{)/dgv,name:"meta.type.annotation.ts",patterns:[{include:"#type"}]},typeBuiltinLiterals:{match:/(?<!\.|\$)\b(this|true|false|undefined|null)\b(?!\$)/dgv,name:"support.type.builtin.ts"},typeFnTypeParameters:{patterns:[{captures:{"1":{name:"keyword.control.new.ts"}},match:/(?<!\.|\$)\b(new)\b(?=\p{space}*<)/dgv,name:"meta.type.constructor.ts"},{begin:/(?<!\.|\$)\b(new)\b\p{space}*(?=\()/dgv,beginCaptures:{"1":{name:"keyword.control.new.ts"}},end:/(?<=\))/dgv,name:"meta.type.constructor.ts",patterns:[{include:"#functionParameters"}]},{begin:/(?<=>)\p{space}*(?=\()/dgv,end:/(?<=\))/dgv,include:"#typeofOperator",name:"meta.type.function.ts",patterns:[{include:"#functionParameters"}]},{begin:/((?=[\(]\p{space}*(([\)])|(\.\.\.)|([_\$0-9A-Za-z]+\p{space}*(([\:\,\?\=])|([\)]\p{space}*=>))))))/dgv,end:/(?<=\))/dgv,name:"meta.type.function.ts",patterns:[{include:"#functionParameters"}]}]},typeName:{patterns:[{captures:{"1":{name:"entity.name.type.module.ts"},"2":{name:"punctuation.accessor.ts"}},match:/([_\$A-Za-z][_\$0-9A-Za-z]*)\p{space}*([\?\!]?\.)/dgv},{match:/[_\$A-Za-z][_\$0-9A-Za-z]*/dgv,name:"entity.name.type.ts"}]},typeObject:{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.definition.block.ts"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.definition.block.ts"}},name:"meta.object.type.ts",patterns:[{include:"#typeObjectMembers"}]},typeObjectMembers:{patterns:[{include:"#typeAnnotation"},{include:"#punctuationComma"},{include:"#punctuationSemicolon"}]},typeOperators:{patterns:[{include:"#typeofOperator"},{match:/[\&\|]/dgv,name:"keyword.operator.type.ts"},{match:/(?<!\.|\$)\bkeyof\b(?!\$)/dgv,name:"keyword.operator.expression.keyof.ts"}]},typeParenOrFunctionParameters:{begin:/\(/dgv,beginCaptures:{"0":{name:"meta.brace.round.ts"}},end:/\)/dgv,endCaptures:{"0":{name:"meta.brace.round.ts"}},name:"meta.type.paren.cover.ts",patterns:[{include:"#type"},{include:"#functionParameters"}]},typeTuple:{begin:/\[/dgv,beginCaptures:{"0":{name:"meta.brace.square.ts"}},end:/\]/dgv,endCaptures:{"0":{name:"meta.brace.square.ts"}},name:"meta.type.tuple.ts",patterns:[{include:"#type"},{include:"#punctuationComma"}]},typeofOperator:{match:/(?<!\.|\$)\btypeof\b(?!\$)/dgv,name:"keyword.operator.expression.typeof.ts"},undefinedLiteral:{match:/(?<!\.|\$)\bundefined\b(?!\$)/dgv,name:"constant.language.undefined.ts"},variableInitializer:{begin:/(?<!=|!)(=)(?!=)/dgv,beginCaptures:{"1":{name:"keyword.operator.assignment.ts"}},end:/(?=(?=$|\n)|[\,\)\;\}\]])/dgv,patterns:[{include:"#ngExpression"}]}},scopeName:"expression.ng",displayName:undefined,embeddedLangs:undefined,aliases:undefined})
1
+ const lang = Object.freeze({injectionSelector:"L:text.html -comment",name:"angular-expression",patterns:[{include:"#ngExpression"}],repository:{arrayLiteral:{begin:/\[/dgv,beginCaptures:{"0":{name:"meta.brace.square.ts"}},end:/\]/dgv,endCaptures:{"0":{name:"meta.brace.square.ts"}},name:"meta.array.literal.ts",patterns:[{include:"#ngExpression"},{include:"#punctuationComma"}]},booleanLiteral:{patterns:[{match:/(?<!\.|\$)\btrue\b(?!\$)/dgv,name:"constant.language.boolean.true.ts"},{match:/(?<!\.|\$)\bfalse\b(?!\$)/dgv,name:"constant.language.boolean.false.ts"}]},expressionOperator:{patterns:[{captures:{"1":{name:"keyword.operator.logical.ts"},"2":{name:"entity.name.function.pipe.ng"}},match:/((?<!\|)\|(?!\|))\p{space}?([a-zA-Z0-9\-_\$]*)/dgv},{match:/(?<!\.|\$)\b(let)\b(?!\$)/dgv,name:"storage.type.ts"},{match:/(?<!\.|\$)\b(await)\b(?!\$)/dgv,name:"keyword.control.flow.ts"},{match:/(?<!\.|\$)\bdelete\b(?!\$)/dgv,name:"keyword.operator.expression.delete.ts"},{match:/(?<!\.|\$)\bin\b(?!\$)/dgv,name:"keyword.operator.expression.in.ts"},{match:/(?<!\.|\$)\bof\b(?!\$)/dgv,name:"keyword.operator.expression.of.ts"},{match:/(?<!\.|\$)\bif\b(?!\$)/dgv,name:"keyword.control.if.ts"},{match:/(?<!\.|\$)\belse\b(?!\$)/dgv,name:"keyword.control.else.ts"},{match:/(?<!\.|\$)\bthen\b(?!\$)/dgv,name:"keyword.control.then.ts"},{match:/(?<!\.|\$)\binstanceof\b(?!\$)/dgv,name:"keyword.operator.expression.instanceof.ts"},{match:/(?<!\.|\$)\bnew\b(?!\$)/dgv,name:"keyword.operator.new.ts"},{match:/(?<!\.|\$)\bvoid\b(?!\$)/dgv,name:"keyword.operator.expression.void.ts"},{begin:/(?<!\.|\$)\bas\b(?!\$)/dgv,beginCaptures:{"0":{name:"storage.type.as.ts"}},end:/(?=(?=$|\n)|"|'|[\;\,\:\}\)\]])/dgv,patterns:[{include:"#type"}]},{match:/\*=|(?<!\()\/=|%=|\+=|-=/dgv,name:"keyword.operator.assignment.compound.ts"},{match:/&=|\^=|<<=|>>=|>>>=|\|=/dgv,name:"keyword.operator.assignment.compound.bitwise.ts"},{match:/<<|>>>|>>/dgv,name:"keyword.operator.bitwise.shift.ts"},{match:/===|!==|==|!=/dgv,name:"keyword.operator.comparison.ts"},{match:/<=|>=|<>|<|>/dgv,name:"keyword.operator.relational.ts"},{match:/!|&&|\?\?|\|\|/dgv,name:"keyword.operator.logical.ts"},{match:/&|~|\^|\|/dgv,name:"keyword.operator.bitwise.ts"},{match:/=/dgv,name:"keyword.operator.assignment.ts"},{match:/--/dgv,name:"keyword.operator.decrement.ts"},{match:/\+\+/dgv,name:"keyword.operator.increment.ts"},{match:/%|\*|\/|-|\+/dgv,name:"keyword.operator.arithmetic.ts"},{captures:{"1":{name:"keyword.operator.arithmetic.ts"}},match:/(?<=[_\$\p{Alpha}\p{Nd}])\p{space}*(\/)(?![\/\*])/dgv},{include:"#typeofOperator"}]},functionCall:{begin:/(?=(\??\.\p{space}*)?([_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*)\p{space}*(<([^\<\>]|<[^\<\>]+>)+>\p{space}*)?\()/dgv,end:/(?<=\))(?!(\??\.\p{space}*)?([_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*)\p{space}*(<([^\<\>]|<[^\<\>]+>)+>\p{space}*)?\()/dgv,patterns:[{match:/\?/dgv,name:"punctuation.accessor.ts"},{match:/\./dgv,name:"punctuation.accessor.ts"},{match:/([_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*)/dgv,name:"entity.name.function.ts"},{begin:/</dgv,beginCaptures:{"0":{name:"punctuation.definition.typeparameters.begin.ts"}},end:/>/dgv,endCaptures:{"0":{name:"punctuation.definition.typeparameters.end.ts"}},name:"meta.type.parameters.ts",patterns:[{include:"#type"},{include:"#punctuationComma"}]},{include:"#parenExpression"}]},functionParameters:{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.definition.parameters.begin.ts"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.definition.parameters.end.ts"}},name:"meta.parameters.ts",patterns:[{include:"#decorator"},{include:"#parameterName"},{include:"#variableInitializer"},{match:/,/dgv,name:"punctuation.separator.parameter.ts"}]},identifiers:{patterns:[{match:/([_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*)(?=\p{space}*\.\p{space}*prototype\b(?!\$))/dgv,name:"support.class.ts"},{captures:{"1":{name:"punctuation.accessor.ts"},"2":{name:"constant.other.object.property.ts"},"3":{name:"variable.other.object.property.ts"}},match:/([\?\!]?\.)\p{space}*(?:([\p{Upper}][_\$\p{Nd}\p{Upper}]*)|([_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*))(?=\p{space}*\.\p{space}*[_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*)/dgv},{captures:{"1":{name:"punctuation.accessor.ts"},"2":{name:"entity.name.function.ts"}},match:/(?:([\?\!]?\.)\p{space}*)?([_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*)(?=\p{space}*=\p{space}*((async\p{space}+)|(function\p{space}*[\(\<])|(function\p{space}+)|([_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*\p{space}*=>)|((<([^\<\>]|<[^\<\>]+>)+>\p{space}*)?\(([^\(\)]|\([^\(\)]*\))*\)(\p{space}*:\p{space}*([^\n])*)?\p{space}*=>)))/dgv},{captures:{"1":{name:"punctuation.accessor.ts"},"2":{name:"constant.other.property.ts"}},match:/([\?\!]?\.)\p{space}*([\p{Upper}][_\$\p{Nd}\p{Upper}]*)(?![_\$\p{Alpha}\p{Nd}])/dgv},{captures:{"1":{name:"punctuation.accessor.ts"},"2":{name:"variable.other.property.ts"}},match:/([\?\!]?\.)\p{space}*([_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*)/dgv},{captures:{"1":{name:"constant.other.object.ts"},"2":{name:"variable.other.object.ts"}},match:/(?:([\p{Upper}][_\$\p{Nd}\p{Upper}]*)|([_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*))(?=\p{space}*\.\p{space}*[_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*)/dgv},{match:/([\p{Upper}][_\$\p{Nd}\p{Upper}]*)(?![_\$\p{Alpha}\p{Nd}])/dgv,name:"constant.character.other"},{match:/[_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*/dgv,name:"variable.other.readwrite.ts"}]},literal:{name:"literal.ts",patterns:[{include:"#numericLiteral"},{include:"#booleanLiteral"},{include:"#nullLiteral"},{include:"#undefinedLiteral"},{include:"#numericConstantLiteral"},{include:"#arrayLiteral"},{include:"#thisLiteral"}]},ngExpression:{name:"meta.expression.ng",patterns:[{include:"#string"},{include:"#literal"},{include:"#ternaryExpression"},{include:"#expressionOperator"},{include:"#functionCall"},{include:"#identifiers"},{include:"#parenExpression"},{include:"#punctuationComma"},{include:"#punctuationAccessor"}]},nullLiteral:{match:/(?<!\.|\$)\bnull\b(?!\$)/dgv,name:"constant.language.null.ts"},numericConstantLiteral:{patterns:[{match:/(?<!\.|\$)\bNaN\b(?!\$)/dgv,name:"constant.language.nan.ts"},{match:/(?<!\.|\$)\bInfinity\b(?!\$)/dgv,name:"constant.language.infinity.ts"}]},numericLiteral:{patterns:[{match:/\b(?<!\$)0(x|X)[0-9a-fA-F]+\b(?!\$)/dgv,name:"constant.numeric.hex.ts"},{match:/\b(?<!\$)0(b|B)[01]+\b(?!\$)/dgv,name:"constant.numeric.binary.ts"},{match:/\\b(?<!\$)0(o|O)?[0-7]+\b(?!\$)/dgv,name:"constant.numeric.octal.ts"},{captures:{"0":{name:"constant.numeric.decimal.ts"},"1":{name:"meta.delimiter.decimal.period.ts"},"2":{name:"meta.delimiter.decimal.period.ts"},"3":{name:"meta.delimiter.decimal.period.ts"},"4":{name:"meta.delimiter.decimal.period.ts"},"5":{name:"meta.delimiter.decimal.period.ts"},"6":{name:"meta.delimiter.decimal.period.ts"}},match:/(?<!\$)(?:\b[0-9]+(\.)[0-9]+[eE][\+\-]?[0-9]+\b|#1[^\n]1E+3\b[0-9]+(\.)[eE][\+\-]?[0-9]+\b|#1[^\n]E+3\B(\.)[0-9]+[eE][\+\-]?[0-9]+\b|#[^\n]1E+3\b[0-9]+[eE][\+\-]?[0-9]+\b|#1E+3\b[0-9]+(\.)[0-9]+\b|#1[^\n]1\b[0-9]+(\.)\B|#1[^\n]\B(\.)[0-9]+\b|#[^\n]1\b[0-9]+\b(?!\.)#1)(?!\$)/dgv}]},parameterName:{patterns:[{captures:{"1":{name:"storage.modifier.ts"},"2":{name:"storage.modifier.ts"},"3":{name:"keyword.operator.rest.ts"},"4":{name:"entity.name.function.ts"},"5":{name:"keyword.operator.optional.ts"}},match:/(?:\p{space}*\b(readonly)\p{space}+)?(?:\p{space}*\b(public|private|protected)\p{space}+)?(\.\.\.)?\p{space}*(?<!=|:)([_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*)\p{space}*(\??)(?=\p{space}*(=\p{space}*((async\p{space}+)|(function\p{space}*[\(\<])|(function\p{space}+)|([_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*\p{space}*=>)|((<([^\<\>]|<[^\<\>]+>)+>\p{space}*)?\(([^\(\)]|\([^\(\)]*\))*\)(\p{space}*:\p{space}*([^\n])*)?\p{space}*=>)))|(:\p{space}*((<)|([\(]\p{space}*(([\)])|(\.\.\.)|([_\$\p{Alpha}\p{Nd}]+\p{space}*(([\:\,\?\=])|([\)]\p{space}*=>))))))))/dgv},{captures:{"1":{name:"storage.modifier.ts"},"2":{name:"storage.modifier.ts"},"3":{name:"keyword.operator.rest.ts"},"4":{name:"variable.parameter.ts"},"5":{name:"keyword.operator.optional.ts"}},match:/(?:\p{space}*\b(readonly)\p{space}+)?(?:\p{space}*\b(public|private|protected)\p{space}+)?(\.\.\.)?\p{space}*(?<!=|:)([_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*)\p{space}*(\??)/dgv}]},parenExpression:{begin:/\(/dgv,beginCaptures:{"0":{name:"meta.brace.round.ts"}},end:/\)/dgv,endCaptures:{"0":{name:"meta.brace.round.ts"}},patterns:[{include:"#ngExpression"},{include:"#punctuationComma"}]},punctuationAccessor:{match:/\?\.|!\.|\./dgv,name:"punctuation.accessor.ts"},punctuationComma:{match:/,/dgv,name:"punctuation.separator.comma.ts"},punctuationSemicolon:{match:/;/dgv,name:"punctuation.terminator.statement.ts"},qstringDouble:{begin:/"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.ts"}},end:/(")|([^\\\n](?=$|\n))/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.ts"},"2":{name:"invalid.illegal.newline.ts"}},name:"string.quoted.double.ts",patterns:[{include:"#stringCharacterEscape"}]},qstringSingle:{begin:/'/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.ts"}},end:/(')|([^\\\n](?=$|\n))/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.ts"},"2":{name:"invalid.illegal.newline.ts"}},name:"string.quoted.single.ts",patterns:[{include:"#stringCharacterEscape"}]},string:{patterns:[{include:"#qstringSingle"},{include:"#qstringDouble"}]},stringCharacterEscape:{match:/\\(x\p{AHex}{2}|[0-2][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|[^\n]|(?=$|\n))/dgv,name:"constant.character.escape.ts"},ternaryExpression:{begin:/(?!\?\.\p{space}*[^\p{Nd}])(\?)(?!\?)/dgv,beginCaptures:{"1":{name:"keyword.operator.ternary.ts"}},end:/\p{space}*(:)/dgv,endCaptures:{"1":{name:"keyword.operator.ternary.ts"}},patterns:[{include:"#ngExpression"}]},thisLiteral:{match:/(?<!\.|\$)\bthis\b(?!\$)/dgv,name:"variable.language.this.ts"},type:{name:"meta.type.ts",patterns:[{include:"#string"},{include:"#numericLiteral"},{include:"#typeBuiltinLiterals"},{include:"#typeTuple"},{include:"#typeObject"},{include:"#typeOperators"},{include:"#typeFnTypeParameters"},{include:"#typeParenOrFunctionParameters"},{include:"#typeName"}]},typeAnnotation:{begin:/:/dgv,beginCaptures:{"0":{name:"keyword.operator.type.annotation.ts"}},end:/(?=(?=$|\n)|[\,\)\;\}\]]|\/\/|")|(?==[^\>])|(?<=[\}\>\]\)]|[_\$\p{Alpha}])\p{space}*(?=\{)/dgv,name:"meta.type.annotation.ts",patterns:[{include:"#type"}]},typeBuiltinLiterals:{match:/(?<!\.|\$)\b(this|true|false|undefined|null)\b(?!\$)/dgv,name:"support.type.builtin.ts"},typeFnTypeParameters:{patterns:[{captures:{"1":{name:"keyword.control.new.ts"}},match:/(?<!\.|\$)\b(new)\b(?=\p{space}*<)/dgv,name:"meta.type.constructor.ts"},{begin:/(?<!\.|\$)\b(new)\b\p{space}*(?=\()/dgv,beginCaptures:{"1":{name:"keyword.control.new.ts"}},end:/(?<=\))/dgv,name:"meta.type.constructor.ts",patterns:[{include:"#functionParameters"}]},{begin:/(?<=>)\p{space}*(?=\()/dgv,end:/(?<=\))/dgv,include:"#typeofOperator",name:"meta.type.function.ts",patterns:[{include:"#functionParameters"}]},{begin:/((?=[\(]\p{space}*(([\)])|(\.\.\.)|([_\$\p{Alpha}\p{Nd}]+\p{space}*(([\:\,\?\=])|([\)]\p{space}*=>))))))/dgv,end:/(?<=\))/dgv,name:"meta.type.function.ts",patterns:[{include:"#functionParameters"}]}]},typeName:{patterns:[{captures:{"1":{name:"entity.name.type.module.ts"},"2":{name:"punctuation.accessor.ts"}},match:/([_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*)\p{space}*([\?\!]?\.)/dgv},{match:/[_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*/dgv,name:"entity.name.type.ts"}]},typeObject:{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.definition.block.ts"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.definition.block.ts"}},name:"meta.object.type.ts",patterns:[{include:"#typeObjectMembers"}]},typeObjectMembers:{patterns:[{include:"#typeAnnotation"},{include:"#punctuationComma"},{include:"#punctuationSemicolon"}]},typeOperators:{patterns:[{include:"#typeofOperator"},{match:/[\&\|]/dgv,name:"keyword.operator.type.ts"},{match:/(?<!\.|\$)\bkeyof\b(?!\$)/dgv,name:"keyword.operator.expression.keyof.ts"}]},typeParenOrFunctionParameters:{begin:/\(/dgv,beginCaptures:{"0":{name:"meta.brace.round.ts"}},end:/\)/dgv,endCaptures:{"0":{name:"meta.brace.round.ts"}},name:"meta.type.paren.cover.ts",patterns:[{include:"#type"},{include:"#functionParameters"}]},typeTuple:{begin:/\[/dgv,beginCaptures:{"0":{name:"meta.brace.square.ts"}},end:/\]/dgv,endCaptures:{"0":{name:"meta.brace.square.ts"}},name:"meta.type.tuple.ts",patterns:[{include:"#type"},{include:"#punctuationComma"}]},typeofOperator:{match:/(?<!\.|\$)\btypeof\b(?!\$)/dgv,name:"keyword.operator.expression.typeof.ts"},undefinedLiteral:{match:/(?<!\.|\$)\bundefined\b(?!\$)/dgv,name:"constant.language.undefined.ts"},variableInitializer:{begin:/(?<!=|!)(=)(?!=)/dgv,beginCaptures:{"1":{name:"keyword.operator.assignment.ts"}},end:/(?=(?=$|\n)|[\,\)\;\}\]])/dgv,patterns:[{include:"#ngExpression"}]}},scopeName:"expression.ng",displayName:undefined,embeddedLangs:undefined,aliases:undefined})
2
2
 
3
3
  export default [
4
4
  lang
@@ -1,6 +1,6 @@
1
1
  import angular_expression from './angular-expression.mjs'
2
2
 
3
- const lang = Object.freeze({injectTo:["text.html.derivative","text.html.derivative.ng","source.ts.ng"],injectionSelector:"L:text.html -comment -expression.ng -meta.tag -source.css -source.js",name:"angular-let-declaration",patterns:[{include:"#letDeclaration"}],repository:{letDeclaration:{begin:/(@let)\p{space}+([_\$A-Za-z][_\$0-9A-Za-z]*)\p{space}*(=)?/dgv,beginCaptures:{"1":{name:"storage.type.ng"},"2":{name:"meta.definition.variable.ng"},"3":{name:"keyword.operator.assignment.ng"}},contentName:"meta.definition.variable.ng",end:/(?<=;)/dgv,patterns:[{include:"#letInitializer"}]},letInitializer:{begin:/\p{space}*/dgv,beginCaptures:{"0":{name:"keyword.operator.assignment.ng"}},contentName:"meta.definition.variable.initializer.ng",end:/;/dgv,endCaptures:{"0":{name:"punctuation.terminator.statement.ng"}},patterns:[{include:"expression.ng"}]}},scopeName:"template.let.ng",displayName:undefined,embeddedLangs:["angular-expression"],aliases:undefined})
3
+ const lang = Object.freeze({injectTo:["text.html.derivative","text.html.derivative.ng","source.ts.ng"],injectionSelector:"L:text.html -comment -expression.ng -meta.tag -source.css -source.js",name:"angular-let-declaration",patterns:[{include:"#letDeclaration"}],repository:{letDeclaration:{begin:/(@let)\p{space}+([_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*)\p{space}*(=)?/dgv,beginCaptures:{"1":{name:"storage.type.ng"},"2":{name:"meta.definition.variable.ng"},"3":{name:"keyword.operator.assignment.ng"}},contentName:"meta.definition.variable.ng",end:/(?<=;)/dgv,patterns:[{include:"#letInitializer"}]},letInitializer:{begin:/\p{space}*/dgv,beginCaptures:{"0":{name:"keyword.operator.assignment.ng"}},contentName:"meta.definition.variable.initializer.ng",end:/;/dgv,endCaptures:{"0":{name:"punctuation.terminator.statement.ng"}},patterns:[{include:"expression.ng"}]}},scopeName:"template.let.ng",displayName:undefined,embeddedLangs:["angular-expression"],aliases:undefined})
4
4
 
5
5
  export default [
6
6
  ...angular_expression,