@shikijs/langs-precompiled 3.15.0 → 3.16.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/apex.mjs +1 -1
- package/dist/berry.mjs +1 -1
- package/dist/csharp.mjs +1 -1
- package/dist/index.mjs +3 -0
- package/dist/lean.mjs +1 -1
- package/dist/markdown-nix.d.mts +3 -0
- package/dist/markdown-nix.mjs +7 -0
- package/dist/nextflow.mjs +1 -1
- package/dist/nix.mjs +4 -1
- package/dist/openscad.d.mts +3 -0
- package/dist/openscad.mjs +5 -0
- package/dist/scad.d.mts +3 -0
- package/dist/scad.mjs +2 -0
- package/dist/solidity.mjs +1 -1
- package/dist/tex.mjs +1 -1
- package/dist/typespec.mjs +1 -1
- package/dist/vue.mjs +1 -1
- package/package.json +7 -4
package/dist/csharp.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { EmulatedRegExp } from 'oniguruma-to-es'
|
|
2
2
|
|
|
3
|
-
const lang = Object.freeze({displayName:"C#",name:"csharp",patterns:[{include:"#preprocessor"},{include:"#comment"},{include:"#directives"},{include:"#declarations"},{include:"#script-top-level"}],repository:{"accessor-getter":{patterns:[{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.curlybrace.open.cs"}},contentName:"meta.accessor.getter.cs",end:/\}/dgv,endCaptures:{"0":{name:"punctuation.curlybrace.close.cs"}},patterns:[{include:"#statement"}]},{include:"#accessor-getter-expression"},{include:"#punctuation-semicolon"}]},"accessor-getter-expression":{begin:/=>/dgv,beginCaptures:{"0":{name:"keyword.operator.arrow.cs"}},contentName:"meta.accessor.getter.cs",end:/(?=[\;\}])/dgv,patterns:[{include:"#ref-modifier"},{include:"#expression"}]},"accessor-setter":{patterns:[{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.curlybrace.open.cs"}},contentName:"meta.accessor.setter.cs",end:/\}/dgv,endCaptures:{"0":{name:"punctuation.curlybrace.close.cs"}},patterns:[{include:"#statement"}]},{begin:/=>/dgv,beginCaptures:{"0":{name:"keyword.operator.arrow.cs"}},contentName:"meta.accessor.setter.cs",end:/(?=[\;\}])/dgv,patterns:[{include:"#ref-modifier"},{include:"#expression"}]},{include:"#punctuation-semicolon"}]},"anonymous-method-expression":{patterns:[{begin:/((?:\b(?:async|static)\b\p{space}*)*)(?:(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\b|(\()(?<tuple>(?:[^\(\)]|\((?:(?:[^\(\)]|\((?:(?:[^\(\)]|\((?:(?:[^\(\)]|\((?:(?:[^\(\)]|\((?:)\))*)\))*)\))*)\))*)\))*)(\)))\p{space}*(=>)/dgv,beginCaptures:{"1":{patterns:[{match:/async|static/dgv,name:"storage.modifier.$0.cs"}]},"2":{name:"entity.name.variable.parameter.cs"},"3":{name:"punctuation.parenthesis.open.cs"},"4":{patterns:[{include:"#comment"},{include:"#explicit-anonymous-function-parameter"},{include:"#implicit-anonymous-function-parameter"},{include:"#default-argument"},{include:"#punctuation-comma"}]},"5":{name:"punctuation.parenthesis.close.cs"},"6":{name:"keyword.operator.arrow.cs"}},end:/(?=[\)\,\;\}])/dgv,patterns:[{include:"#intrusive"},{begin:/(?=\{)/dgv,end:/(?=[\)\,\;\}])/dgv,patterns:[{include:"#block"},{include:"#intrusive"}]},{begin:/\b(ref)\b|(?=\P{space})/dgv,beginCaptures:{"1":{name:"storage.modifier.ref.cs"}},end:/(?=[\)\,\;\}])/dgv,patterns:[{include:"#expression"}]}]},{begin:/((?:\b(?:async|static)\b\p{space}*)*)\b(delegate)\b\p{space}*/dgv,beginCaptures:{"1":{patterns:[{match:/async|static/dgv,name:"storage.modifier.$0.cs"}]},"2":{name:"storage.type.delegate.cs"}},end:/(?<=\})|(?=[\)\,\;\}])/dgv,patterns:[{include:"#intrusive"},{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#intrusive"},{include:"#explicit-anonymous-function-parameter"},{include:"#punctuation-comma"}]},{include:"#block"}]}]},"anonymous-object-creation-expression":{begin:/\b(new)\b\p{space}*(?=\{|\/\/|\/\*|(?=\n?$))/dgv,beginCaptures:{"1":{name:"keyword.operator.expression.new.cs"}},end:/(?<=\})/dgv,patterns:[{include:"#comment"},{include:"#initializer-expression"}]},argument:{patterns:[{match:/\b(ref|in)\b/dgv,name:"storage.modifier.$1.cs"},{begin:/\b(out)\b/dgv,beginCaptures:{"1":{name:"storage.modifier.out.cs"}},end:/(?=[\]\)\,])/dgv,patterns:[{include:"#declaration-expression-local"},{include:"#expression"}]},{include:"#expression"}]},"argument-list":{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#named-argument"},{include:"#argument"},{include:"#punctuation-comma"}]},"array-creation-expression":{begin:/*@__PURE__*/ new EmulatedRegExp("\\b(new|stackalloc)\\b\\p{space}*(?<type_name>(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)?\\p{space}*(?=\\[)","dgv",{"hiddenCaptures":[5,7,8,9],"transfers":[[3,[5,8]],[4,[7]],[6,[9]]]}),beginCaptures:{"1":{name:"keyword.operator.expression.$1.cs"},"2":{patterns:[{include:"#type"}]}},end:/(?<=\])/dgv,patterns:[{include:"#bracketed-argument-list"}]},"as-expression":{captures:{"1":{name:"keyword.operator.expression.as.cs"},"2":{patterns:[{include:"#type"}]}},match:/*@__PURE__*/ new EmulatedRegExp("(?<!\\.)\\b(as)\\b\\p{space}*(?<type_name>(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?(?!\\?))?(?:\\p{space}*\\[\\p{space}*(?:,\\p{space}*)*\\](?:\\p{space}*\\?(?!\\?))?)*)?","dgv",{"hiddenCaptures":[5,7,8,9],"transfers":[[3,[5,8]],[4,[7]],[6,[9]]]})},"assignment-expression":{begin:/(?:[\-\%\*\+\/]|\?\?|[\&\^]|<<|>>>?|\|)?=(?![\=\>])/dgv,beginCaptures:{"0":{patterns:[{include:"#assignment-operators"}]}},end:/(?=[\]\)\,\;\}])/dgv,patterns:[{include:"#ref-modifier"},{include:"#expression"}]},"assignment-operators":{patterns:[{match:/(?:[\-\%\*\+\/]|\?\?)=/dgv,name:"keyword.operator.assignment.compound.cs"},{match:/(?:[\&\^]|<<|>>>?|\|)=/dgv,name:"keyword.operator.assignment.compound.bitwise.cs"},{match:/=/dgv,name:"keyword.operator.assignment.cs"}]},attribute:{patterns:[{include:"#type-name"},{include:"#type-arguments"},{include:"#attribute-arguments"}]},"attribute-arguments":{begin:/(\()/dgv,beginCaptures:{"1":{name:"punctuation.parenthesis.open.cs"}},end:/(\))/dgv,endCaptures:{"1":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#attribute-named-argument"},{include:"#expression"},{include:"#punctuation-comma"}]},"attribute-named-argument":{begin:/(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\p{space}*(?==)/dgv,beginCaptures:{"1":{name:"entity.name.variable.property.cs"}},end:/(?=([\)\,]))/dgv,patterns:[{include:"#operator-assignment"},{include:"#expression"}]},"attribute-section":{begin:/(\[)(assembly|module|field|event|method|param|property|return|type)?(:)?/dgv,beginCaptures:{"1":{name:"punctuation.squarebracket.open.cs"},"2":{name:"keyword.other.attribute-specifier.cs"},"3":{name:"punctuation.separator.colon.cs"}},end:/(\])/dgv,endCaptures:{"1":{name:"punctuation.squarebracket.close.cs"}},patterns:[{include:"#comment"},{include:"#attribute"},{include:"#punctuation-comma"}]},"await-expression":{match:/(?<!\.\p{space}*)\b(await)\b/dgv,name:"keyword.operator.expression.await.cs"},"await-statement":{begin:/(?<!\.\p{space}*)\b(await)\b/dgv,beginCaptures:{"1":{name:"keyword.operator.expression.await.cs"}},end:/(?<=\})|(?=[\;\}])/dgv,patterns:[{include:"#foreach-statement"},{include:"#using-statement"},{include:"#expression"}]},"base-types":{begin:/:/dgv,beginCaptures:{"0":{name:"punctuation.separator.colon.cs"}},end:/(?=\{|where|;)/dgv,patterns:[{include:"#type"},{include:"#punctuation-comma"},{include:"#preprocessor"}]},block:{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.curlybrace.open.cs"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.curlybrace.close.cs"}},patterns:[{include:"#statement"}]},"boolean-literal":{patterns:[{match:/(?<!\.)\btrue\b/dgv,name:"constant.language.boolean.true.cs"},{match:/(?<!\.)\bfalse\b/dgv,name:"constant.language.boolean.false.cs"}]},"bracketed-argument-list":{begin:/\[/dgv,beginCaptures:{"0":{name:"punctuation.squarebracket.open.cs"}},end:/\]/dgv,endCaptures:{"0":{name:"punctuation.squarebracket.close.cs"}},patterns:[{include:"#named-argument"},{include:"#argument"},{include:"#punctuation-comma"}]},"bracketed-parameter-list":{begin:/(?=(\[))/dgv,beginCaptures:{"1":{name:"punctuation.squarebracket.open.cs"}},end:/(?=(\]))/dgv,endCaptures:{"1":{name:"punctuation.squarebracket.close.cs"}},patterns:[{begin:/(?<=\[)/dgv,end:/(?=\])/dgv,patterns:[{include:"#comment"},{include:"#attribute-section"},{include:"#parameter"},{include:"#punctuation-comma"},{include:"#variable-initializer"}]}]},"break-or-continue-statement":{match:/(?<!\.)\b(break|continue)\b/dgv,name:"keyword.control.flow.$1.cs"},"case-guard":{patterns:[{include:"#parenthesized-expression"},{include:"#expression"}]},"cast-expression":{captures:{"1":{name:"punctuation.parenthesis.open.cs"},"2":{patterns:[{include:"#type"}]},"7":{name:"punctuation.parenthesis.close.cs"}},match:/*@__PURE__*/ new EmulatedRegExp("(\\()\\p{space}*(?<type_name>(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}*(\\))(?=\\p{space}*-*!*@?[\\(_\\p{Alpha}\\p{Nd}])","dgv",{"hiddenCaptures":[5,7,8,9],"transfers":[[3,[5,8]],[4,[7]],[6,[9]]]})},"casted-constant-pattern":{begin:/(\()([\.\:\@_\p{space}\p{Alpha}\p{Nd}]+)(\))(?=[\-\!\+\~\p{space}]*@?["'\(_\p{Alpha}\p{Nd}]+)/dgv,beginCaptures:{"1":{name:"punctuation.parenthesis.open.cs"},"2":{patterns:[{include:"#type-builtin"},{include:"#type-name"}]},"3":{name:"punctuation.parenthesis.close.cs"}},end:/(?=[\]\&\)\,\:\;\=\?\^\|\}]|!=|\b(and|or|when)\b)/dgv,patterns:[{include:"#casted-constant-pattern"},{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#constant-pattern"}]},{include:"#constant-pattern"},{captures:{"1":{name:"entity.name.type.alias.cs"},"2":{name:"punctuation.separator.coloncolon.cs"}},match:/(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\p{space}*(::)/dgv},{captures:{"1":{name:"entity.name.type.cs"},"2":{name:"punctuation.accessor.cs"}},match:/(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\p{space}*(\.)/dgv},{match:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,name:"variable.other.constant.cs"}]},"catch-clause":{begin:/(?<!\.)\b(catch)\b/dgv,beginCaptures:{"1":{name:"keyword.control.exception.catch.cs"}},end:/(?<=\})/dgv,patterns:[{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{captures:{"1":{patterns:[{include:"#type"}]},"6":{name:"entity.name.variable.local.cs"}},match:/*@__PURE__*/ new EmulatedRegExp("(?<type_name>(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}*(?:((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*))\\b)?","dgv",{"hiddenCaptures":[4,6,7,8,11],"transfers":[[2,[4,7,11]],[3,[6]],[5,[8]]]})}]},{include:"#when-clause"},{include:"#comment"},{include:"#block"}]},"char-character-escape":{match:/\\(x\p{AHex}{1,4}|u\p{AHex}{4}|[^\n])/dgv,name:"constant.character.escape.cs"},"char-literal":{begin:/'/dgv,beginCaptures:{"0":{name:"punctuation.definition.char.begin.cs"}},end:/(')|([^\n\\])(?=\n?$)/dgv,endCaptures:{"1":{name:"punctuation.definition.char.end.cs"},"2":{name:"invalid.illegal.newline.cs"}},name:"string.quoted.single.cs",patterns:[{include:"#char-character-escape"}]},"class-declaration":{begin:/(?=(\brecord\b\p{space}+)?\bclass\b)/dgv,end:/(?<=\})|(?=;)/dgv,patterns:[{begin:/(\b(record)\b\p{space}+)?\b(class)\b\p{space}+(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\p{space}*/dgv,beginCaptures:{"2":{name:"storage.type.record.cs"},"3":{name:"storage.type.class.cs"},"4":{name:"entity.name.type.class.cs"}},end:/(?=\{)|(?=;)/dgv,patterns:[{include:"#comment"},{include:"#type-parameter-list"},{include:"#parenthesized-parameter-list"},{include:"#base-types"},{include:"#generic-constraints"}]},{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.curlybrace.open.cs"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.curlybrace.close.cs"}},patterns:[{include:"#class-or-struct-members"}]},{include:"#preprocessor"},{include:"#comment"}]},"class-or-struct-members":{patterns:[{include:"#preprocessor"},{include:"#comment"},{include:"#storage-modifier"},{include:"#type-declarations"},{include:"#property-declaration"},{include:"#field-declaration"},{include:"#event-declaration"},{include:"#indexer-declaration"},{include:"#variable-initializer"},{include:"#constructor-declaration"},{include:"#destructor-declaration"},{include:"#operator-declaration"},{include:"#conversion-operator-declaration"},{include:"#method-declaration"},{include:"#attribute-section"},{include:"#punctuation-semicolon"}]},"combinator-pattern":{match:/\b(and|or|not)\b/dgv,name:"keyword.operator.expression.pattern.combinator.$1.cs"},comment:{patterns:[{begin:/(^\p{space}+)?(\/\/\/)(?!\/)/dgv,captures:{"1":{name:"punctuation.whitespace.comment.leading.cs"},"2":{name:"punctuation.definition.comment.cs"}},name:"comment.block.documentation.cs",patterns:[{include:"#xml-doc-comment"}],while:/^(\p{space}*)(\/\/\/)(?!\/)/dgv},{begin:/(^\p{space}+)?(\/\*\*)(?!\/)/dgv,captures:{"1":{name:"punctuation.whitespace.comment.leading.cs"},"2":{name:"punctuation.definition.comment.cs"}},end:/(^\p{space}+)?(\*\/)/dgv,name:"comment.block.documentation.cs",patterns:[{begin:/(?=(?:(?!\*\/)\p{Any})*(?=\n?$))/dgvy,patterns:[{include:"#xml-doc-comment"}],while:/*@__PURE__*/ new EmulatedRegExp("^((?:(?=(\\p{space}*))\\2))(\\*(?!/))?(?=(?:(?!\\*/)\\p{Any})*(?=\\n?$))","dgv",{"hiddenCaptures":[2]}),whileCaptures:{"1":{name:"punctuation.whitespace.comment.leading.cs"},"2":{name:"punctuation.definition.comment.cs"}}},{include:"#xml-doc-comment"}]},{begin:/(^\p{space}+)?(\/\/)[^\n]*(?=\n?$)/dgv,captures:{"1":{name:"punctuation.whitespace.comment.leading.cs"},"2":{name:"punctuation.definition.comment.cs"}},name:"comment.line.double-slash.cs",while:/^(\p{space}*)(\/\/)[^\n]*(?=\n?$)/dgv},{begin:/\/\*/dgv,captures:{"0":{name:"punctuation.definition.comment.cs"}},end:/\*\//dgv,name:"comment.block.cs"}]},"conditional-operator":{patterns:[{match:/\?(?!\?|\p{space}*[\.\[])/dgv,name:"keyword.operator.conditional.question-mark.cs"},{match:/:/dgv,name:"keyword.operator.conditional.colon.cs"}]},"constant-pattern":{patterns:[{include:"#boolean-literal"},{include:"#null-literal"},{include:"#numeric-literal"},{include:"#char-literal"},{include:"#string-literal"},{include:"#raw-string-literal"},{include:"#verbatim-string-literal"},{include:"#type-operator-expression"},{include:"#expression-operator-expression"},{include:"#expression-operators"},{include:"#casted-constant-pattern"}]},"constructor-declaration":{begin:/(?=@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*\p{space}*\()/dgv,end:/(?<=\})|(?=;)/dgv,patterns:[{captures:{"1":{name:"entity.name.function.cs"}},match:/(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\b/dgv},{begin:/(:)/dgv,beginCaptures:{"1":{name:"punctuation.separator.colon.cs"}},end:/(?=\{|=>)/dgv,patterns:[{include:"#constructor-initializer"}]},{include:"#parenthesized-parameter-list"},{include:"#preprocessor"},{include:"#comment"},{include:"#expression-body"},{include:"#block"}]},"constructor-initializer":{begin:/\b(base|this)\b\p{space}*(?=\()/dgv,beginCaptures:{"1":{name:"variable.language.$1.cs"}},end:/(?<=\))/dgv,patterns:[{include:"#argument-list"}]},"context-control-paren-statement":{patterns:[{include:"#fixed-statement"},{include:"#lock-statement"},{include:"#using-statement"}]},"context-control-statement":{match:/\b(checked|unchecked|unsafe)\b(?!\p{space}*[\(\@_\p{Alpha}])/dgv,name:"keyword.control.context.$1.cs"},"conversion-operator-declaration":{begin:/*@__PURE__*/ new EmulatedRegExp("\\b(?<explicit_or_implicit_keyword>(?:ex|im)plicit)\\p{space}*\\b(?<operator_keyword>operator)\\p{space}*(?<type_name>(?:ref\\p{space}+(?:readonly\\p{space}+)?)?(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}*(?=\\()","dgv",{"hiddenCaptures":[6,8,9,10],"transfers":[[4,[6,9]],[5,[8]],[7,[10]]]}),beginCaptures:{"1":{patterns:[{captures:{"1":{name:"storage.modifier.explicit.cs"}},match:/\b(explicit)\b/dgv},{captures:{"1":{name:"storage.modifier.implicit.cs"}},match:/\b(implicit)\b/dgv}]},"2":{name:"storage.type.operator.cs"},"3":{patterns:[{include:"#type"}]}},end:/(?<=\})|(?=;)/dgv,patterns:[{include:"#comment"},{include:"#parenthesized-parameter-list"},{include:"#expression-body"},{include:"#block"}]},"declaration-expression-local":{captures:{"1":{name:"storage.type.var.cs"},"2":{patterns:[{include:"#type"}]},"7":{name:"entity.name.variable.local.cs"}},match:/*@__PURE__*/ new EmulatedRegExp("(?:\\b(var)\\b|(?<type_name>(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*))\\p{space}+((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*))\\b\\p{space}*(?=[\\]\\)\\,])","dgv",{"hiddenCaptures":[5,7,8,9,12],"transfers":[[3,[5,8,12]],[4,[7]],[6,[9]]]})},"declaration-expression-tuple":{captures:{"1":{name:"storage.type.var.cs"},"2":{patterns:[{include:"#type"}]},"7":{name:"entity.name.variable.tuple-element.cs"}},match:/*@__PURE__*/ new EmulatedRegExp("(?:\\b(var)\\b|(?<type_name>(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*))\\p{space}+((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*))\\b\\p{space}*(?=[\\)\\,])","dgv",{"hiddenCaptures":[5,7,8,9,12],"transfers":[[3,[5,8,12]],[4,[7]],[6,[9]]]})},declarations:{patterns:[{include:"#namespace-declaration"},{include:"#type-declarations"},{include:"#punctuation-semicolon"}]},"default-argument":{begin:/=/dgv,beginCaptures:{"0":{name:"keyword.operator.assignment.cs"}},end:/(?=[\)\,])/dgv,patterns:[{include:"#expression"}]},"default-literal-expression":{captures:{"1":{name:"keyword.operator.expression.default.cs"}},match:/\b(default)\b/dgv},"delegate-declaration":{begin:/*@__PURE__*/ new EmulatedRegExp("\\b(delegate)\\b\\p{space}+(?<type_name>(?:ref\\p{space}+(?:readonly\\p{space}+)?)?(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}+((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*))\\p{space}*(<([^\\<\\>]+)>)?\\p{space}*(?=\\()","dgv",{"hiddenCaptures":[5,7,8,9,12],"transfers":[[3,[5,8,12]],[4,[7]],[6,[9]]]}),beginCaptures:{"1":{name:"storage.type.delegate.cs"},"2":{patterns:[{include:"#type"}]},"7":{name:"entity.name.type.delegate.cs"},"8":{patterns:[{include:"#type-parameter-list"}]}},end:/(?=;)/dgv,patterns:[{include:"#comment"},{include:"#parenthesized-parameter-list"},{include:"#generic-constraints"}]},"designation-pattern":{patterns:[{include:"#intrusive"},{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#punctuation-comma"},{include:"#designation-pattern"}]},{include:"#simple-designation-pattern"}]},"destructor-declaration":{begin:/(~)(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\p{space}*(?=\()/dgv,beginCaptures:{"1":{name:"punctuation.tilde.cs"},"2":{name:"entity.name.function.cs"}},end:/(?<=\})|(?=;)/dgv,patterns:[{include:"#comment"},{include:"#parenthesized-parameter-list"},{include:"#expression-body"},{include:"#block"}]},directives:{patterns:[{include:"#extern-alias-directive"},{include:"#using-directive"},{include:"#attribute-section"},{include:"#punctuation-semicolon"}]},"discard-pattern":{match:/_(?![_\p{Alpha}\p{Nd}])/dgv,name:"variable.language.discard.cs"},"do-statement":{begin:/(?<!\.)\b(do)\b/dgv,beginCaptures:{"1":{name:"keyword.control.loop.do.cs"}},end:/(?=[\;\}])/dgv,patterns:[{include:"#statement"}]},"double-raw-interpolation":{begin:/(?<=[^\{][^\{]|^)(\{*)(\{\{)(?=[^\{])/dgv,beginCaptures:{"1":{name:"string.quoted.double.cs"},"2":{name:"punctuation.definition.interpolation.begin.cs"}},end:/\}\}/dgv,endCaptures:{"0":{name:"punctuation.definition.interpolation.end.cs"}},name:"meta.embedded.interpolation.cs",patterns:[{include:"#expression"}]},"element-access-expression":{begin:/(?:(?:(\?)\p{space}*)?(\.)\p{space}*|(->)\p{space}*)?(?:(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\p{space}*)?(?:(\?)\p{space}*)?(?=\[)/dgv,beginCaptures:{"1":{name:"keyword.operator.null-conditional.cs"},"2":{name:"punctuation.accessor.cs"},"3":{name:"punctuation.accessor.pointer.cs"},"4":{name:"variable.other.object.property.cs"},"5":{name:"keyword.operator.null-conditional.cs"}},end:/(?<=\])(?!\p{space}*\[)/dgv,patterns:[{include:"#bracketed-argument-list"}]},"else-part":{begin:/(?<!\.)\b(else)\b/dgv,beginCaptures:{"1":{name:"keyword.control.conditional.else.cs"}},end:/(?<=\})|(?=;)/dgv,patterns:[{include:"#statement"}]},"enum-declaration":{begin:/(?=\benum\b)/dgv,end:/(?<=\})|(?=;)/dgv,patterns:[{begin:/(?=enum)/dgv,end:/(?=\{)|(?=;)/dgv,patterns:[{include:"#comment"},{captures:{"1":{name:"storage.type.enum.cs"},"2":{name:"entity.name.type.enum.cs"}},match:/(enum)\p{space}+(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)/dgv},{begin:/:/dgv,beginCaptures:{"0":{name:"punctuation.separator.colon.cs"}},end:/(?=\{)/dgv,patterns:[{include:"#type"}]}]},{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.curlybrace.open.cs"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.curlybrace.close.cs"}},patterns:[{include:"#preprocessor"},{include:"#comment"},{include:"#attribute-section"},{include:"#punctuation-comma"},{begin:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,beginCaptures:{"0":{name:"entity.name.variable.enum-member.cs"}},end:/(?=([\,\}]))/dgv,patterns:[{include:"#comment"},{include:"#variable-initializer"}]}]},{include:"#preprocessor"},{include:"#comment"}]},"event-accessors":{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.curlybrace.open.cs"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.curlybrace.close.cs"}},patterns:[{include:"#comment"},{include:"#attribute-section"},{begin:/\b(add|remove)\b\p{space}*(?=[\;\{]|=>|\/\/|\/\*|(?=\n?$))/dgv,beginCaptures:{"1":{name:"storage.type.accessor.$1.cs"}},end:/(?<=[\;\}])|(?=\})/dgv,patterns:[{include:"#accessor-setter"}]}]},"event-declaration":{begin:/*@__PURE__*/ new EmulatedRegExp("\\b(event)\\b\\p{space}*(?<return_type>(?<type_name>(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}+)(?<interface_name>((?:(?:(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}*\\.\\p{space}*)?((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*))\\p{space}*(?=[\\,\\;\\=\\{]|//|/\\*|(?=\\n?$))","dgv",{"hiddenCaptures":[6,8,9,10,13,14,15,16,17,18,19,20,21,23],"transfers":[[4,[6,9,14,16,19,23]],[5,[8,15,18]],[7,[10,17,20]],[3,[13]],[11,[21]]]}),beginCaptures:{"1":{name:"storage.type.event.cs"},"2":{patterns:[{include:"#type"}]},"8":{patterns:[{include:"#type"},{include:"#punctuation-accessor"}]},"9":{name:"entity.name.variable.event.cs"}},end:/(?<=\})|(?=;)/dgv,patterns:[{include:"#comment"},{include:"#event-accessors"},{match:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,name:"entity.name.variable.event.cs"},{include:"#punctuation-comma"},{begin:/=/dgv,beginCaptures:{"0":{name:"keyword.operator.assignment.cs"}},end:/(?<=,)|(?=;)/dgv,patterns:[{include:"#expression"},{include:"#punctuation-comma"}]}]},"explicit-anonymous-function-parameter":{captures:{"1":{name:"storage.modifier.$1.cs"},"2":{patterns:[{include:"#type"}]},"7":{name:"entity.name.variable.parameter.cs"}},match:/*@__PURE__*/ new EmulatedRegExp("(?:\\b(ref|params|out|in)\\b\\p{space}*)?(?<type_name>(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args><(?:[^\\<\\>]|(?:<(?:[^\\<\\>]|(?:<(?:[^\\<\\>]|(?:<(?:[^\\<\\>]|(?:<(?:[^\\<\\>]|(?:))*>\\p{space}*))*>\\p{space}*))*>\\p{space}*))*>\\p{space}*))*>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(<(?:[^\\<\\>]|(?:<(?:[^\\<\\>]|(?:<(?:[^\\<\\>]|(?:<(?:[^\\<\\>]|(?:<(?:[^\\<\\>]|(?:))*>\\p{space}*))*>\\p{space}*))*>\\p{space}*))*>\\p{space}*))*>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))*\\)))*\\)))*\\)))*\\)))*\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}*\\b((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*))\\b","dgv",{"hiddenCaptures":[5,7,8,9,12],"transfers":[[3,[5,8,12]],[4,[7]],[6,[9]]]})},expression:{patterns:[{include:"#preprocessor"},{include:"#comment"},{include:"#expression-operator-expression"},{include:"#type-operator-expression"},{include:"#default-literal-expression"},{include:"#throw-expression"},{include:"#raw-interpolated-string"},{include:"#interpolated-string"},{include:"#verbatim-interpolated-string"},{include:"#type-builtin"},{include:"#language-variable"},{include:"#switch-statement-or-expression"},{include:"#with-expression"},{include:"#conditional-operator"},{include:"#assignment-expression"},{include:"#expression-operators"},{include:"#await-expression"},{include:"#query-expression"},{include:"#as-expression"},{include:"#is-expression"},{include:"#anonymous-method-expression"},{include:"#object-creation-expression"},{include:"#array-creation-expression"},{include:"#anonymous-object-creation-expression"},{include:"#invocation-expression"},{include:"#member-access-expression"},{include:"#element-access-expression"},{include:"#cast-expression"},{include:"#literal"},{include:"#parenthesized-expression"},{include:"#tuple-deconstruction-assignment"},{include:"#initializer-expression"},{include:"#identifier"}]},"expression-body":{begin:/=>/dgv,beginCaptures:{"0":{name:"keyword.operator.arrow.cs"}},end:/(?=[\)\,\;\}])/dgv,patterns:[{include:"#ref-modifier"},{include:"#expression"}]},"expression-operator-expression":{begin:/\b(checked|unchecked|nameof)\p{space}*(\()/dgv,beginCaptures:{"1":{name:"keyword.operator.expression.$1.cs"},"2":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#expression"}]},"expression-operators":{patterns:[{match:/<<|>>>?/dgv,name:"keyword.operator.bitwise.shift.cs"},{match:/[\!\=]=/dgv,name:"keyword.operator.comparison.cs"},{match:/<=|>=|[\<\>]/dgv,name:"keyword.operator.relational.cs"},{match:/!|&&|\|\|/dgv,name:"keyword.operator.logical.cs"},{match:/[\&\^\|\~]/dgv,name:"keyword.operator.bitwise.cs"},{match:/--/dgv,name:"keyword.operator.decrement.cs"},{match:/\+\+/dgv,name:"keyword.operator.increment.cs"},{match:/\+|-(?!>)|[\%\*\/]/dgv,name:"keyword.operator.arithmetic.cs"},{match:/\?\?/dgv,name:"keyword.operator.null-coalescing.cs"},{match:/\.\./dgv,name:"keyword.operator.range.cs"}]},"extern-alias-directive":{begin:/\b(extern)\p{space}+(alias)\b/dgv,beginCaptures:{"1":{name:"keyword.other.directive.extern.cs"},"2":{name:"keyword.other.directive.alias.cs"}},end:/(?=;)/dgv,patterns:[{match:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,name:"variable.other.alias.cs"}]},"field-declaration":{begin:/*@__PURE__*/ new EmulatedRegExp("(?<type_name>(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}+((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*))\\p{space}*(?!=[\\=\\>])(?=[\\,\\;\\=]|(?=\\n?$))","dgv",{"hiddenCaptures":[4,6,7,8,11],"transfers":[[2,[4,7,11]],[3,[6]],[5,[8]]]}),beginCaptures:{"1":{patterns:[{include:"#type"}]},"6":{name:"entity.name.variable.field.cs"}},end:/(?=;)/dgv,patterns:[{match:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,name:"entity.name.variable.field.cs"},{include:"#punctuation-comma"},{include:"#comment"},{include:"#variable-initializer"},{include:"#class-or-struct-members"}]},"finally-clause":{begin:/(?<!\.)\b(finally)\b/dgv,beginCaptures:{"1":{name:"keyword.control.exception.finally.cs"}},end:/(?<=\})/dgv,patterns:[{include:"#comment"},{include:"#block"}]},"fixed-statement":{begin:/\b(fixed)\b/dgv,beginCaptures:{"1":{name:"keyword.control.context.fixed.cs"}},end:/(?<=\))|(?=[\;\}])/dgv,patterns:[{include:"#intrusive"},{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#intrusive"},{include:"#local-variable-declaration"}]}]},"for-statement":{begin:/\b(for)\b/dgv,beginCaptures:{"1":{name:"keyword.control.loop.for.cs"}},end:/(?<=\))|(?=[\;\}])/dgv,patterns:[{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{begin:/(?=[^\)\;])/dgv,end:/(?=[\)\;])/dgv,patterns:[{include:"#intrusive"},{include:"#local-variable-declaration"}]},{begin:/(?=;)/dgv,end:/(?=\))/dgv,patterns:[{include:"#intrusive"},{include:"#expression"},{include:"#punctuation-comma"},{include:"#punctuation-semicolon"}]}]}]},"foreach-statement":{begin:/\b(foreach)\b/dgv,beginCaptures:{"1":{name:"keyword.control.loop.foreach.cs"}},end:/(?<=\))|(?=[\;\}])/dgv,patterns:[{include:"#intrusive"},{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#intrusive"},{captures:{"1":{name:"storage.modifier.ref.cs"},"2":{name:"storage.type.var.cs"},"3":{patterns:[{include:"#type"}]},"8":{name:"entity.name.variable.local.cs"},"9":{name:"keyword.control.loop.in.cs"}},match:/*@__PURE__*/ new EmulatedRegExp("(?:(?:\\b(ref)\\p{space}+)?\\b(var)\\b|(?<type_name>(?:ref\\p{space}+)?(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*))\\p{space}+((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*))\\p{space}+\\b(in)\\b","dgv",{"hiddenCaptures":[6,8,9,10,13],"transfers":[[4,[6,9,13]],[5,[8]],[7,[10]]]})},{captures:{"1":{name:"storage.type.var.cs"},"2":{patterns:[{include:"#tuple-declaration-deconstruction-element-list"}]},"3":{name:"keyword.control.loop.in.cs"}},match:/(?:\b(var)\b\p{space}*)?(?<tuple>\((?:[^\(\)]|(?:\((?:[^\(\)]|(?:\((?:[^\(\)]|(?:\((?:[^\(\)]|(?:\((?:[^\(\)]|(?:))+\)))+\)))+\)))+\)))+\))\p{space}+\b(in)\b/dgv},{include:"#expression"}]}]},"generic-constraints":{begin:/(where)\p{space}+(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\p{space}*(:)/dgv,beginCaptures:{"1":{name:"storage.modifier.where.cs"},"2":{name:"entity.name.type.type-parameter.cs"},"3":{name:"punctuation.separator.colon.cs"}},end:/(?=\{|where|;|=>)/dgv,patterns:[{match:/\bclass\b/dgv,name:"storage.type.class.cs"},{match:/\bstruct\b/dgv,name:"storage.type.struct.cs"},{match:/\bdefault\b/dgv,name:"keyword.other.constraint.default.cs"},{match:/\bnotnull\b/dgv,name:"keyword.other.constraint.notnull.cs"},{match:/\bunmanaged\b/dgv,name:"keyword.other.constraint.unmanaged.cs"},{captures:{"1":{name:"keyword.operator.expression.new.cs"},"2":{name:"punctuation.parenthesis.open.cs"},"3":{name:"punctuation.parenthesis.close.cs"}},match:/(new)\p{space}*(\()\p{space}*(\))/dgv},{include:"#type"},{include:"#punctuation-comma"},{include:"#generic-constraints"}]},"goto-statement":{begin:/(?<!\.)\b(goto)\b/dgv,beginCaptures:{"1":{name:"keyword.control.flow.goto.cs"}},end:/(?=[\;\}])/dgv,patterns:[{begin:/\b(case)\b/dgv,beginCaptures:{"1":{name:"keyword.control.conditional.case.cs"}},end:/(?=[\;\}])/dgv,patterns:[{include:"#expression"}]},{captures:{"1":{name:"keyword.control.conditional.default.cs"}},match:/\b(default)\b/dgv},{match:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,name:"entity.name.label.cs"}]},"group-by":{captures:{"1":{name:"keyword.operator.expression.query.by.cs"}},match:/\b(by)\b\p{space}*/dgv},"group-clause":{begin:/\b(group)\b\p{space}*/dgv,beginCaptures:{"1":{name:"keyword.operator.expression.query.group.cs"}},end:/(?=[\)\;])/dgv,patterns:[{include:"#group-by"},{include:"#group-into"},{include:"#query-body"},{include:"#expression"}]},"group-into":{captures:{"1":{name:"keyword.operator.expression.query.into.cs"},"2":{name:"entity.name.variable.range-variable.cs"}},match:/\b(into)\b\p{space}*(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\b\p{space}*/dgv},identifier:{match:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,name:"variable.other.readwrite.cs"},"if-statement":{begin:/(?<!\.)\b(if)\b\p{space}*(?=\()/dgv,beginCaptures:{"1":{name:"keyword.control.conditional.if.cs"}},end:/(?<=\})|(?=;)/dgv,patterns:[{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#expression"}]},{include:"#statement"}]},"implicit-anonymous-function-parameter":{match:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*\b/dgv,name:"entity.name.variable.parameter.cs"},"indexer-declaration":{begin:/*@__PURE__*/ new EmulatedRegExp("(?<return_type>(?<type_name>(?:ref\\p{space}+(?:readonly\\p{space}+)?)?(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}+)(?<interface_name>((?:ref\\p{space}+(?:readonly\\p{space}+)?)?(?:(?:(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}*\\.\\p{space}*)?(?<indexer_name>this)\\p{space}*(?=\\[)","dgv",{"hiddenCaptures":[5,7,8,9,12,13,14,15,16,17,18,19,20],"transfers":[[3,[5,8,13,15,18]],[4,[7,14,17]],[6,[9,16,19]],[2,[12]],[10,[20]]]}),beginCaptures:{"1":{patterns:[{include:"#type"}]},"7":{patterns:[{include:"#type"},{include:"#punctuation-accessor"}]},"8":{name:"variable.language.this.cs"}},end:/(?<=\})|(?=;)/dgv,patterns:[{include:"#comment"},{include:"#bracketed-parameter-list"},{include:"#property-accessors"},{include:"#accessor-getter-expression"},{include:"#variable-initializer"}]},"initializer-expression":{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.curlybrace.open.cs"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.curlybrace.close.cs"}},patterns:[{include:"#expression"},{include:"#punctuation-comma"}]},"interface-declaration":{begin:/(?=\binterface\b)/dgv,end:/(?<=\})|(?=;)/dgv,patterns:[{begin:/(interface)\b\p{space}+(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)/dgv,beginCaptures:{"1":{name:"storage.type.interface.cs"},"2":{name:"entity.name.type.interface.cs"}},end:/(?=\{)|(?=;)/dgv,patterns:[{include:"#comment"},{include:"#type-parameter-list"},{include:"#base-types"},{include:"#generic-constraints"}]},{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.curlybrace.open.cs"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.curlybrace.close.cs"}},patterns:[{include:"#interface-members"}]},{include:"#preprocessor"},{include:"#comment"}]},"interface-members":{patterns:[{include:"#preprocessor"},{include:"#comment"},{include:"#storage-modifier"},{include:"#property-declaration"},{include:"#event-declaration"},{include:"#indexer-declaration"},{include:"#method-declaration"},{include:"#operator-declaration"},{include:"#attribute-section"},{include:"#punctuation-semicolon"}]},"interpolated-string":{begin:/\$"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.cs"}},end:/(")|([^\n\\])(?=\n?$)/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.cs"},"2":{name:"invalid.illegal.newline.cs"}},name:"string.quoted.double.cs",patterns:[{include:"#string-character-escape"},{include:"#interpolation"}]},interpolation:{begin:/(?<=[^\{]|^)((?:\{\{)*)(\{)(?=[^\{])/dgv,beginCaptures:{"1":{name:"string.quoted.double.cs"},"2":{name:"punctuation.definition.interpolation.begin.cs"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.definition.interpolation.end.cs"}},name:"meta.embedded.interpolation.cs",patterns:[{include:"#expression"}]},intrusive:{patterns:[{include:"#preprocessor"},{include:"#comment"}]},"invocation-expression":{begin:/(?:(?:(\?)\p{space}*)?(\.)\p{space}*|(->)\p{space}*)?(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\p{space}*(<(?<type_args>[^\(\)\<\>]|\((?:[^\(\)\<\>]|<[^\(\)\<\>]*>|\([^\(\)\<\>]*\))*\)|<(?:[^\(\)\<\>]|\((?:[^\(\)\<\>]|<[^\(\)\<\>]*>|\([^\(\)\<\>]*\))*\)|<(?:[^\(\)\<\>]|\((?:[^\(\)\<\>]|<[^\(\)\<\>]*>|\([^\(\)\<\>]*\))*\)|<(?:[^\(\)\<\>]|\((?:[^\(\)\<\>]|<[^\(\)\<\>]*>|\([^\(\)\<\>]*\))*\)|<(?:[^\(\)\<\>]|\((?:[^\(\)\<\>]|<[^\(\)\<\>]*>|\([^\(\)\<\>]*\))*\)|<(?:)*>)*>)*>)*>)*>)*>\p{space}*)?(?=\()/dgv,beginCaptures:{"1":{name:"keyword.operator.null-conditional.cs"},"2":{name:"punctuation.accessor.cs"},"3":{name:"punctuation.accessor.pointer.cs"},"4":{name:"entity.name.function.cs"},"5":{patterns:[{include:"#type-arguments"}]}},end:/(?<=\))/dgv,patterns:[{include:"#argument-list"}]},"is-expression":{begin:/(?<!\.)\b(is)\b/dgv,beginCaptures:{"1":{name:"keyword.operator.expression.pattern.is.cs"}},end:/(?=[\]\&\)\,\:\;\=\?\^\|\}]|!=)/dgv,patterns:[{include:"#pattern"}]},"join-clause":{begin:/*@__PURE__*/ new EmulatedRegExp("\\b(join)\\b\\p{space}*(?<type_name>(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)?\\p{space}+((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*))\\b\\p{space}*\\b(in)\\b\\p{space}*","dgv",{"hiddenCaptures":[5,7,8,9,12],"transfers":[[3,[5,8,12]],[4,[7]],[6,[9]]]}),beginCaptures:{"1":{name:"keyword.operator.expression.query.join.cs"},"2":{patterns:[{include:"#type"}]},"7":{name:"entity.name.variable.range-variable.cs"},"8":{name:"keyword.operator.expression.query.in.cs"}},end:/(?=[\)\;])/dgv,patterns:[{include:"#join-on"},{include:"#join-equals"},{include:"#join-into"},{include:"#query-body"},{include:"#expression"}]},"join-equals":{captures:{"1":{name:"keyword.operator.expression.query.equals.cs"}},match:/\b(equals)\b\p{space}*/dgv},"join-into":{captures:{"1":{name:"keyword.operator.expression.query.into.cs"},"2":{name:"entity.name.variable.range-variable.cs"}},match:/\b(into)\b\p{space}*(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\b\p{space}*/dgv},"join-on":{captures:{"1":{name:"keyword.operator.expression.query.on.cs"}},match:/\b(on)\b\p{space}*/dgv},"labeled-statement":{captures:{"1":{name:"entity.name.label.cs"},"2":{name:"punctuation.separator.colon.cs"}},match:/(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\p{space}*(:)/dgv},"language-variable":{patterns:[{match:/\b(base|this)\b/dgv,name:"variable.language.$1.cs"},{match:/\b(value)\b/dgv,name:"variable.other.$1.cs"}]},"let-clause":{begin:/\b(let)\b\p{space}*(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\b\p{space}*(=)\p{space}*/dgv,beginCaptures:{"1":{name:"keyword.operator.expression.query.let.cs"},"2":{name:"entity.name.variable.range-variable.cs"},"3":{name:"keyword.operator.assignment.cs"}},end:/(?=[\)\;])/dgv,patterns:[{include:"#query-body"},{include:"#expression"}]},"list-pattern":{begin:/(?=\[)/dgv,end:/(?=[\]\&\)\,\:\;\=\?\^\|\}]|!=|\b(and|or|when)\b)/dgv,patterns:[{begin:/\[/dgv,beginCaptures:{"0":{name:"punctuation.squarebracket.open.cs"}},end:/\]/dgv,endCaptures:{"0":{name:"punctuation.squarebracket.close.cs"}},patterns:[{include:"#pattern"},{include:"#punctuation-comma"}]},{begin:/(?<=\])/dgv,end:/(?=[\]\&\)\,\:\;\=\?\^\|\}]|!=|\b(and|or|when)\b)/dgv,patterns:[{include:"#intrusive"},{include:"#simple-designation-pattern"}]}]},literal:{patterns:[{include:"#boolean-literal"},{include:"#null-literal"},{include:"#numeric-literal"},{include:"#char-literal"},{include:"#raw-string-literal"},{include:"#string-literal"},{include:"#verbatim-string-literal"},{include:"#tuple-literal"}]},"local-constant-declaration":{begin:/*@__PURE__*/ new EmulatedRegExp("\\b(?<const_keyword>const)\\b\\p{space}*(?<type_name>(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}+((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*))\\p{space}*(?=[\\,\\;\\=])","dgv",{"hiddenCaptures":[5,7,8,9,12],"transfers":[[3,[5,8,12]],[4,[7]],[6,[9]]]}),beginCaptures:{"1":{name:"storage.modifier.const.cs"},"2":{patterns:[{include:"#type"}]},"7":{name:"entity.name.variable.local.cs"}},end:/(?=;)/dgv,patterns:[{match:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,name:"entity.name.variable.local.cs"},{include:"#punctuation-comma"},{include:"#comment"},{include:"#variable-initializer"}]},"local-declaration":{patterns:[{include:"#local-constant-declaration"},{include:"#local-variable-declaration"},{include:"#local-function-declaration"},{include:"#local-tuple-var-deconstruction"}]},"local-function-declaration":{begin:/*@__PURE__*/ new EmulatedRegExp("\\b((?:(?:async|unsafe|static|extern)\\p{space}+)*)(?<type_name>(?:ref\\p{space}+(?:readonly\\p{space}+)?)?(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?)?(?:\\p{space}*\\[\\p{space}*(?:,\\p{space}*)*\\](?:\\p{space}*\\?)?)*)\\p{space}+((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*))\\p{space}*(<[^\\<\\>]+>)?\\p{space}*(?=\\()","dgv",{"hiddenCaptures":[5,7,8,9,12],"transfers":[[3,[5,8,12]],[4,[7]],[6,[9]]]}),beginCaptures:{"1":{patterns:[{include:"#storage-modifier"}]},"2":{patterns:[{include:"#type"}]},"7":{name:"entity.name.function.cs"},"8":{patterns:[{include:"#type-parameter-list"}]}},end:/(?<=\})|(?=;)/dgv,patterns:[{include:"#comment"},{include:"#parenthesized-parameter-list"},{include:"#generic-constraints"},{include:"#expression-body"},{include:"#block"}]},"local-tuple-var-deconstruction":{begin:/\b(var)\b\p{space}*(?<tuple>\((?:[^\(\)]|(?:\((?:[^\(\)]|(?:\((?:[^\(\)]|(?:\((?:[^\(\)]|(?:\((?:[^\(\)]|(?:))+\)))+\)))+\)))+\)))+\))\p{space}*(?=[\)\;\=])/dgv,beginCaptures:{"1":{name:"storage.type.var.cs"},"2":{patterns:[{include:"#tuple-declaration-deconstruction-element-list"}]}},end:/(?=[\)\;])/dgv,patterns:[{include:"#comment"},{include:"#variable-initializer"}]},"local-variable-declaration":{begin:/*@__PURE__*/ new EmulatedRegExp("(?:(?:\\b(ref)\\p{space}+(?:\\b(readonly)\\p{space}+)?)?\\b(var)\\b|(?<type_name>(?:ref\\p{space}+(?:readonly\\p{space}+)?)?(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*[\\*\\?]\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*))\\p{space}+((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*))\\p{space}*(?!=>)(?=[\\)\\,\\;\\=])","dgv",{"hiddenCaptures":[7,9,10,11,14],"transfers":[[5,[7,10,14]],[6,[9]],[8,[11]]]}),beginCaptures:{"1":{name:"storage.modifier.ref.cs"},"2":{name:"storage.modifier.readonly.cs"},"3":{name:"storage.type.var.cs"},"4":{patterns:[{include:"#type"}]},"9":{name:"entity.name.variable.local.cs"}},end:/(?=[\)\;\}])/dgv,patterns:[{match:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,name:"entity.name.variable.local.cs"},{include:"#punctuation-comma"},{include:"#comment"},{include:"#variable-initializer"}]},"lock-statement":{begin:/\b(lock)\b/dgv,beginCaptures:{"1":{name:"keyword.control.context.lock.cs"}},end:/(?<=\))|(?=[\;\}])/dgv,patterns:[{include:"#intrusive"},{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#intrusive"},{include:"#expression"}]}]},"member-access-expression":{patterns:[{captures:{"1":{name:"keyword.operator.null-conditional.cs"},"2":{name:"punctuation.accessor.cs"},"3":{name:"punctuation.accessor.pointer.cs"},"4":{name:"variable.other.object.property.cs"}},match:/(?:(?:(\?)\p{space}*)?(\.)\p{space}*|(->)\p{space}*)(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\p{space}*(?![\(_\p{Alpha}\p{Nd}]|(\?)?\[|<)/dgv},{captures:{"1":{name:"punctuation.accessor.cs"},"2":{name:"variable.other.object.cs"},"3":{patterns:[{include:"#type-arguments"}]}},match:/*@__PURE__*/ new EmulatedRegExp("(\\.)?\\p{space}*(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)(?<type_params>\\p{space}*<([^\\<\\>]|(?:\\p{space}*<([^\\<\\>]|(?:\\p{space}*<([^\\<\\>]|(?:\\p{space}*<([^\\<\\>]|(?:\\p{space}*<([^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)(?=(\\p{space}*\\?)?\\p{space}*\\.\\p{space}*@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)","dgv",{"hiddenCaptures":[5,6,7,8]})},{captures:{"1":{name:"variable.other.object.cs"}},match:/(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)(?=\p{space}*(?:(?:\?\p{space}*)?\.|->)\p{space}*@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)/dgv}]},"method-declaration":{begin:/*@__PURE__*/ new EmulatedRegExp("(?<return_type>(?<type_name>(?:ref\\p{space}+(?:readonly\\p{space}+)?)?(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}+)(?<interface_name>((?:ref\\p{space}+(?:readonly\\p{space}+)?)?(?:(?:(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}*\\.\\p{space}*)?((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*))\\p{space}*(<([^\\<\\>]+)>)?\\p{space}*(?=\\()","dgv",{"hiddenCaptures":[5,7,8,9,12,13,14,15,16,17,18,19,20,22],"transfers":[[3,[5,8,13,15,18,22]],[4,[7,14,17]],[6,[9,16,19]],[2,[12]],[10,[20]]]}),beginCaptures:{"1":{patterns:[{include:"#type"}]},"7":{patterns:[{include:"#type"},{include:"#punctuation-accessor"}]},"8":{name:"entity.name.function.cs"},"9":{patterns:[{include:"#type-parameter-list"}]}},end:/(?<=\})|(?=;)/dgv,patterns:[{include:"#comment"},{include:"#parenthesized-parameter-list"},{include:"#generic-constraints"},{include:"#expression-body"},{include:"#block"}]},"named-argument":{begin:/(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\p{space}*(:)/dgv,beginCaptures:{"1":{name:"entity.name.variable.parameter.cs"},"2":{name:"punctuation.separator.colon.cs"}},end:/(?=([\]\)\,]))/dgv,patterns:[{include:"#argument"}]},"namespace-declaration":{begin:/\b(namespace)\p{space}+/dgv,beginCaptures:{"1":{name:"storage.type.namespace.cs"}},end:/(?<=\})|(?=;)/dgv,patterns:[{include:"#comment"},{match:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,name:"entity.name.type.namespace.cs"},{include:"#punctuation-accessor"},{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.curlybrace.open.cs"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.curlybrace.close.cs"}},patterns:[{include:"#declarations"},{include:"#using-directive"},{include:"#punctuation-semicolon"}]}]},"null-literal":{match:/(?<!\.)\bnull\b/dgv,name:"constant.language.null.cs"},"numeric-literal":{captures:{"0":{patterns:[{begin:/(?=[^\n])/dgv,end:/(?=\n?$)/dgv,patterns:[{captures:{"2":{name:"constant.numeric.decimal.cs",patterns:[{match:/(?<=\p{AHex})_(?=\p{AHex})/dgv,name:"constant.numeric.other.separator.thousands.cs"}]},"3":{name:"constant.numeric.other.separator.thousands.cs"},"4":{name:"constant.numeric.other.separator.decimals.cs"},"5":{name:"constant.numeric.decimal.cs",patterns:[{match:/(?<=\p{AHex})_(?=\p{AHex})/dgv,name:"constant.numeric.other.separator.thousands.cs"}]},"6":{name:"constant.numeric.other.separator.thousands.cs"},"8":{name:"constant.numeric.other.exponent.cs"},"9":{name:"keyword.operator.arithmetic.cs"},"10":{name:"keyword.operator.arithmetic.cs"},"11":{name:"constant.numeric.decimal.cs",patterns:[{match:/(?<=\p{AHex})_(?=\p{AHex})/dgv,name:"constant.numeric.other.separator.thousands.cs"}]},"12":{name:"constant.numeric.other.suffix.cs"}},match:/((?=[\.0-9])(?!0[BXbx]))([0-9](?:[0-9]|((?<=\p{AHex})_(?=\p{AHex})))*)?((?<=[0-9])|\.(?=[0-9]))([0-9](?:[0-9]|((?<=\p{AHex})_(?=\p{AHex})))*)?((?<!_)([Ee])(\+?)(-?)([0-9](?:[0-9]|(?<=\p{AHex})_(?=\p{AHex}))*))?([DFMdfm](?![\p{L}\p{M}\p{N}\p{Pc}]))?(?=\n?$)/dgvy},{captures:{"1":{name:"constant.numeric.other.preffix.binary.cs"},"2":{name:"constant.numeric.binary.cs",patterns:[{match:/(?<=\p{AHex})_(?=\p{AHex})/dgv,name:"constant.numeric.other.separator.thousands.cs"}]},"3":{name:"constant.numeric.other.separator.thousands.cs"},"4":{name:"constant.numeric.other.suffix.cs"}},match:/(0[Bb])([01_](?:[01_]|((?<=\p{AHex})_(?=\p{AHex})))*)((?:(?:(?:(?:(?:[Uu]|[Uu]l)|[Uu]L)|l[Uu]?)|L[Uu]?)|[DFMdfm])(?![\p{L}\p{M}\p{N}\p{Pc}]))?(?=\n?$)/dgvy},{captures:{"1":{name:"constant.numeric.other.preffix.hex.cs"},"2":{name:"constant.numeric.hex.cs",patterns:[{match:/(?<=\p{AHex})_(?=\p{AHex})/dgv,name:"constant.numeric.other.separator.thousands.cs"}]},"3":{name:"constant.numeric.other.separator.thousands.cs"},"4":{name:"constant.numeric.other.suffix.cs"}},match:/(0[Xx])(\p{AHex}(?:\p{AHex}|((?<=\p{AHex})_(?=\p{AHex})))*)((?:(?:(?:(?:(?:[Uu]|[Uu]l)|[Uu]L)|l[Uu]?)|L[Uu]?)|[DFMdfm])(?![\p{L}\p{M}\p{N}\p{Pc}]))?(?=\n?$)/dgvy},{captures:{"2":{name:"constant.numeric.decimal.cs",patterns:[{match:/(?<=\p{AHex})_(?=\p{AHex})/dgv,name:"constant.numeric.other.separator.thousands.cs"}]},"3":{name:"constant.numeric.other.separator.thousands.cs"},"5":{name:"constant.numeric.other.exponent.cs"},"6":{name:"keyword.operator.arithmetic.cs"},"7":{name:"keyword.operator.arithmetic.cs"},"8":{name:"constant.numeric.decimal.cs",patterns:[{match:/(?<=\p{AHex})_(?=\p{AHex})/dgv,name:"constant.numeric.other.separator.thousands.cs"}]},"9":{name:"constant.numeric.other.suffix.cs"}},match:/((?=[\.0-9])(?!0[BXbx]))([0-9](?:[0-9]|((?<=\p{AHex})_(?=\p{AHex})))*)((?<!_)([Ee])(\+?)(-?)([0-9](?:[0-9]|(?<=\p{AHex})_(?=\p{AHex}))*))?((?:(?:(?:(?:(?:[Uu]|[Uu]l)|[Uu]L)|l[Uu]?)|L[Uu]?)|[DFMdfm])(?![\p{L}\p{M}\p{N}\p{Pc}]))?(?=\n?$)/dgvy},{match:/(?:[0-9A-Z_a-z]|(?<=[Ee])[\-\+]|\.\p{Nd})+/dgv,name:"invalid.illegal.constant.numeric.cs"}]}]}},match:/(?<![\p{L}\p{M}\p{N}\p{Pc}])\.?\p{Nd}(?:[0-9A-Z_a-z]|(?<=[Ee])[\-\+]|\.\p{Nd})*/dgv},"object-creation-expression":{patterns:[{include:"#object-creation-expression-with-parameters"},{include:"#object-creation-expression-with-no-parameters"}]},"object-creation-expression-with-no-parameters":{captures:{"1":{name:"keyword.operator.expression.new.cs"},"2":{patterns:[{include:"#type"}]}},match:/*@__PURE__*/ new EmulatedRegExp("(new)\\p{space}+(?<type_name>(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}*(?=\\{|//|/\\*|(?=\\n?$))","dgv",{"hiddenCaptures":[5,7,8,9],"transfers":[[3,[5,8]],[4,[7]],[6,[9]]]})},"object-creation-expression-with-parameters":{begin:/*@__PURE__*/ new EmulatedRegExp("(new)(?:\\p{space}+(?<type_name>(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*))?\\p{space}*(?=\\()","dgv",{"hiddenCaptures":[5,7,8,9],"transfers":[[3,[5,8]],[4,[7]],[6,[9]]]}),beginCaptures:{"1":{name:"keyword.operator.expression.new.cs"},"2":{patterns:[{include:"#type"}]}},end:/(?<=\))/dgv,patterns:[{include:"#argument-list"}]},"operator-assignment":{match:/(?<![\!\=])(=)(?!=)/dgv,name:"keyword.operator.assignment.cs"},"operator-declaration":{begin:/*@__PURE__*/ new EmulatedRegExp("(?<type_name>(?:ref\\p{space}+(?:readonly\\p{space}+)?)?(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}*\\b(?<operator_keyword>operator)\\b\\p{space}*(?<operator>[\\-\\!\\%\\&\\*\\+\\/\\<\\=\\>\\^\\|\\~]+|true|false)\\p{space}*(?=\\()","dgv",{"hiddenCaptures":[4,6,7,8],"transfers":[[2,[4,7]],[3,[6]],[5,[8]]]}),beginCaptures:{"1":{patterns:[{include:"#type"}]},"6":{name:"storage.type.operator.cs"},"7":{name:"entity.name.function.cs"}},end:/(?<=\})|(?=;)/dgv,patterns:[{include:"#comment"},{include:"#parenthesized-parameter-list"},{include:"#expression-body"},{include:"#block"}]},"orderby-clause":{begin:/\b(orderby)\b\p{space}*/dgv,beginCaptures:{"1":{name:"keyword.operator.expression.query.orderby.cs"}},end:/(?=[\)\;])/dgv,patterns:[{include:"#ordering-direction"},{include:"#query-body"},{include:"#expression"},{include:"#punctuation-comma"}]},"ordering-direction":{captures:{"1":{name:"keyword.operator.expression.query.$1.cs"}},match:/\b((?:a|de)scending)\b/dgv},parameter:{captures:{"1":{name:"storage.modifier.$1.cs"},"2":{patterns:[{include:"#type"}]},"7":{name:"entity.name.variable.parameter.cs"}},match:/*@__PURE__*/ new EmulatedRegExp("(?:\\b(ref|params|out|in|this)\\b\\p{space}+)?(?<type_name>(?:ref\\p{space}+)?(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}+((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*))","dgv",{"hiddenCaptures":[5,7,8,9,12],"transfers":[[3,[5,8,12]],[4,[7]],[6,[9]]]})},"parenthesized-expression":{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#expression"}]},"parenthesized-parameter-list":{begin:/(\()/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/(\))/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#comment"},{include:"#attribute-section"},{include:"#parameter"},{include:"#punctuation-comma"},{include:"#variable-initializer"}]},pattern:{patterns:[{include:"#intrusive"},{include:"#combinator-pattern"},{include:"#discard-pattern"},{include:"#constant-pattern"},{include:"#relational-pattern"},{include:"#var-pattern"},{include:"#type-pattern"},{include:"#positional-pattern"},{include:"#property-pattern"},{include:"#list-pattern"},{include:"#slice-pattern"}]},"positional-pattern":{begin:/(?=\()/dgv,end:/(?=[\]\&\)\,\:\;\=\?\^\|\}]|!=|\b(and|or|when)\b)/dgv,patterns:[{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#subpattern"},{include:"#punctuation-comma"}]},{begin:/(?<=\))/dgv,end:/(?=[\]\&\)\,\:\;\=\?\^\|\}]|!=|\b(and|or|when)\b)/dgv,patterns:[{include:"#intrusive"},{include:"#property-pattern"},{include:"#simple-designation-pattern"}]}]},preprocessor:{begin:/^\p{space}*(#)\p{space}*/dgv,beginCaptures:{"1":{name:"punctuation.separator.hash.cs"}},end:/(?<=(?=\n?$))/dgv,name:"meta.preprocessor.cs",patterns:[{include:"#comment"},{include:"#preprocessor-define-or-undef"},{include:"#preprocessor-if-or-elif"},{include:"#preprocessor-else-or-endif"},{include:"#preprocessor-warning-or-error"},{include:"#preprocessor-region"},{include:"#preprocessor-endregion"},{include:"#preprocessor-load"},{include:"#preprocessor-r"},{include:"#preprocessor-line"},{include:"#preprocessor-pragma-warning"},{include:"#preprocessor-pragma-checksum"}]},"preprocessor-define-or-undef":{captures:{"1":{name:"keyword.preprocessor.define.cs"},"2":{name:"keyword.preprocessor.undef.cs"},"3":{name:"entity.name.variable.preprocessor.symbol.cs"}},match:/\b(?:(define)|(undef))\b\p{space}*\b([_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\b/dgv},"preprocessor-else-or-endif":{captures:{"1":{name:"keyword.preprocessor.else.cs"},"2":{name:"keyword.preprocessor.endif.cs"}},match:/\b(?:(else)|(endif))\b/dgv},"preprocessor-endregion":{captures:{"1":{name:"keyword.preprocessor.endregion.cs"}},match:/\b(endregion)\b/dgv},"preprocessor-expression":{patterns:[{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#preprocessor-expression"}]},{captures:{"1":{name:"constant.language.boolean.true.cs"},"2":{name:"constant.language.boolean.false.cs"},"3":{name:"entity.name.variable.preprocessor.symbol.cs"}},match:/\b(?:(true)|(false)|([_\p{Alpha}][_\p{Alpha}\p{Nd}]*))\b/dgv},{captures:{"1":{name:"keyword.operator.comparison.cs"},"2":{name:"keyword.operator.logical.cs"}},match:/([\!\=]=)|(!|&&|\|\|)/dgv}]},"preprocessor-if-or-elif":{begin:/\b(?:(if)|(elif))\b/dgv,beginCaptures:{"1":{name:"keyword.preprocessor.if.cs"},"2":{name:"keyword.preprocessor.elif.cs"}},end:/(?=(?=\n?$))/dgv,patterns:[{include:"#comment"},{include:"#preprocessor-expression"}]},"preprocessor-line":{begin:/\b(line)\b/dgv,beginCaptures:{"1":{name:"keyword.preprocessor.line.cs"}},end:/(?=(?=\n?$))/dgv,patterns:[{captures:{"1":{name:"keyword.preprocessor.default.cs"},"2":{name:"keyword.preprocessor.hidden.cs"}},match:/\b(default|hidden)/dgv},{captures:{"0":{name:"constant.numeric.decimal.cs"}},match:/[0-9]+/dgv},{captures:{"0":{name:"string.quoted.double.cs"}},match:/"[^"]*"/dgv}]},"preprocessor-load":{begin:/\b(load)\b/dgv,beginCaptures:{"1":{name:"keyword.preprocessor.load.cs"}},end:/(?=(?=\n?$))/dgv,patterns:[{captures:{"0":{name:"string.quoted.double.cs"}},match:/"[^"]*"/dgv}]},"preprocessor-pragma-checksum":{captures:{"1":{name:"keyword.preprocessor.pragma.cs"},"2":{name:"keyword.preprocessor.checksum.cs"},"3":{name:"string.quoted.double.cs"},"4":{name:"string.quoted.double.cs"},"5":{name:"string.quoted.double.cs"}},match:/\b(pragma)\b\p{space}*\b(checksum)\b\p{space}*("[^"]*")\p{space}*("[^"]*")\p{space}*("[^"]*")/dgv},"preprocessor-pragma-warning":{captures:{"1":{name:"keyword.preprocessor.pragma.cs"},"2":{name:"keyword.preprocessor.warning.cs"},"3":{name:"keyword.preprocessor.disable.cs"},"4":{name:"keyword.preprocessor.restore.cs"},"5":{patterns:[{captures:{"0":{name:"constant.numeric.decimal.cs"}},match:/[0-9]+/dgv},{include:"#punctuation-comma"}]}},match:/\b(pragma)\b\p{space}*\b(warning)\b\p{space}*\b(?:(disable)|(restore))\b(\p{space}*[0-9]+(?:\p{space}*,\p{space}*[0-9]+)?)?/dgv},"preprocessor-r":{begin:/\b(r)\b/dgv,beginCaptures:{"1":{name:"keyword.preprocessor.r.cs"}},end:/(?=(?=\n?$))/dgv,patterns:[{captures:{"0":{name:"string.quoted.double.cs"}},match:/"[^"]*"/dgv}]},"preprocessor-region":{captures:{"1":{name:"keyword.preprocessor.region.cs"},"2":{name:"string.unquoted.preprocessor.message.cs"}},match:/\b(region)\b\p{space}*([^\n]*)(?=(?=\n?$))/dgv},"preprocessor-warning-or-error":{captures:{"1":{name:"keyword.preprocessor.warning.cs"},"2":{name:"keyword.preprocessor.error.cs"},"3":{name:"string.unquoted.preprocessor.message.cs"}},match:/\b(?:(warning)|(error))\b\p{space}*([^\n]*)(?=(?=\n?$))/dgv},"property-accessors":{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.curlybrace.open.cs"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.curlybrace.close.cs"}},patterns:[{include:"#comment"},{include:"#attribute-section"},{match:/\b(private|protected|internal)\b/dgv,name:"storage.modifier.$1.cs"},{begin:/\b(get)\b\p{space}*(?=[\;\{]|=>|\/\/|\/\*|(?=\n?$))/dgv,beginCaptures:{"1":{name:"storage.type.accessor.$1.cs"}},end:/(?<=[\;\}])|(?=\})/dgv,patterns:[{include:"#accessor-getter"}]},{begin:/\b(set|init)\b\p{space}*(?=[\;\{]|=>|\/\/|\/\*|(?=\n?$))/dgv,beginCaptures:{"1":{name:"storage.type.accessor.$1.cs"}},end:/(?<=[\;\}])|(?=\})/dgv,patterns:[{include:"#accessor-setter"}]}]},"property-declaration":{begin:/*@__PURE__*/ new EmulatedRegExp("(?![\\p{Alpha}\\p{M}\\p{Nd}\\p{Pc}\\p{space}]*\\b(?:class|interface|struct|enum|event)\\b)(?<return_type>(?<type_name>(?:ref\\p{space}+(?:readonly\\p{space}+)?)?(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}+)(?<interface_name>((?:ref\\p{space}+(?:readonly\\p{space}+)?)?(?:(?:(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}*\\.\\p{space}*)?(?<property_name>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*))\\p{space}*(?=\\{|=>|//|/\\*|(?=\\n?$))","dgv",{"hiddenCaptures":[5,7,8,9,12,13,14,15,16,17,18,19,20,22],"transfers":[[3,[5,8,13,15,18,22]],[4,[7,14,17]],[6,[9,16,19]],[2,[12]],[10,[20]]]}),beginCaptures:{"1":{patterns:[{include:"#type"}]},"7":{patterns:[{include:"#type"},{include:"#punctuation-accessor"}]},"8":{name:"entity.name.variable.property.cs"}},end:/(?<=\})|(?=;)/dgv,patterns:[{include:"#comment"},{include:"#property-accessors"},{include:"#accessor-getter-expression"},{include:"#variable-initializer"},{include:"#class-or-struct-members"}]},"property-pattern":{begin:/(?=\{)/dgv,end:/(?=[\]\&\)\,\:\;\=\?\^\|\}]|!=|\b(and|or|when)\b)/dgv,patterns:[{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.curlybrace.open.cs"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.curlybrace.close.cs"}},patterns:[{include:"#subpattern"},{include:"#punctuation-comma"}]},{begin:/(?<=\})/dgv,end:/(?=[\]\&\)\,\:\;\=\?\^\|\}]|!=|\b(and|or|when)\b)/dgv,patterns:[{include:"#intrusive"},{include:"#simple-designation-pattern"}]}]},"punctuation-accessor":{match:/\./dgv,name:"punctuation.accessor.cs"},"punctuation-comma":{match:/,/dgv,name:"punctuation.separator.comma.cs"},"punctuation-semicolon":{match:/;/dgv,name:"punctuation.terminator.statement.cs"},"query-body":{patterns:[{include:"#let-clause"},{include:"#where-clause"},{include:"#join-clause"},{include:"#orderby-clause"},{include:"#select-clause"},{include:"#group-clause"}]},"query-expression":{begin:/*@__PURE__*/ new EmulatedRegExp("\\b(from)\\b\\p{space}*(?<type_name>(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)?\\p{space}+((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*))\\b\\p{space}*\\b(in)\\b\\p{space}*","dgv",{"hiddenCaptures":[5,7,8,9,12],"transfers":[[3,[5,8,12]],[4,[7]],[6,[9]]]}),beginCaptures:{"1":{name:"keyword.operator.expression.query.from.cs"},"2":{patterns:[{include:"#type"}]},"7":{name:"entity.name.variable.range-variable.cs"},"8":{name:"keyword.operator.expression.query.in.cs"}},end:/(?=[\)\;])/dgv,patterns:[{include:"#query-body"},{include:"#expression"}]},"raw-interpolated-string":{patterns:[{include:"#raw-interpolated-string-five-or-more-quote-one-or-more-interpolation"},{include:"#raw-interpolated-string-three-or-more-quote-three-or-more-interpolation"},{include:"#raw-interpolated-string-quadruple-quote-double-interpolation"},{include:"#raw-interpolated-string-quadruple-quote-single-interpolation"},{include:"#raw-interpolated-string-triple-quote-double-interpolation"},{include:"#raw-interpolated-string-triple-quote-single-interpolation"}]},"raw-interpolated-string-five-or-more-quote-one-or-more-interpolation":{begin:/\$+"""""+/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.cs"}},end:/"""""+/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.cs"}},name:"string.quoted.double.cs"},"raw-interpolated-string-quadruple-quote-double-interpolation":{begin:/\$\$""""/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.cs"}},end:/""""/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.cs"}},name:"string.quoted.double.cs",patterns:[{include:"#double-raw-interpolation"}]},"raw-interpolated-string-quadruple-quote-single-interpolation":{begin:/\$""""/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.cs"}},end:/""""/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.cs"}},name:"string.quoted.double.cs",patterns:[{include:"#raw-interpolation"}]},"raw-interpolated-string-three-or-more-quote-three-or-more-interpolation":{begin:/\$\$\$+"""+/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.cs"}},end:/"""+/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.cs"}},name:"string.quoted.double.cs"},"raw-interpolated-string-triple-quote-double-interpolation":{begin:/\$\$"""/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.cs"}},end:/"""/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.cs"}},name:"string.quoted.double.cs",patterns:[{include:"#double-raw-interpolation"}]},"raw-interpolated-string-triple-quote-single-interpolation":{begin:/\$"""/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.cs"}},end:/"""/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.cs"}},name:"string.quoted.double.cs",patterns:[{include:"#raw-interpolation"}]},"raw-interpolation":{begin:/(?<=[^\{]|^)(\{*)(\{)(?=[^\{])/dgv,beginCaptures:{"1":{name:"string.quoted.double.cs"},"2":{name:"punctuation.definition.interpolation.begin.cs"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.definition.interpolation.end.cs"}},name:"meta.embedded.interpolation.cs",patterns:[{include:"#expression"}]},"raw-string-literal":{patterns:[{include:"#raw-string-literal-more"},{include:"#raw-string-literal-quadruple"},{include:"#raw-string-literal-triple"}]},"raw-string-literal-more":{begin:/"""""+/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.cs"}},end:/"""""+/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.cs"}},name:"string.quoted.double.cs"},"raw-string-literal-quadruple":{begin:/""""/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.cs"}},end:/""""/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.cs"}},name:"string.quoted.double.cs"},"raw-string-literal-triple":{begin:/"""/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.cs"}},end:/"""/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.cs"}},name:"string.quoted.double.cs"},"readonly-modifier":{match:/\breadonly\b/dgv,name:"storage.modifier.readonly.cs"},"record-declaration":{begin:/(?=\brecord\b)/dgv,end:/(?<=\})|(?=;)/dgv,patterns:[{begin:/(record)\b\p{space}+(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)/dgv,beginCaptures:{"1":{name:"storage.type.record.cs"},"2":{name:"entity.name.type.class.cs"}},end:/(?=\{)|(?=;)/dgv,patterns:[{include:"#comment"},{include:"#type-parameter-list"},{include:"#parenthesized-parameter-list"},{include:"#base-types"},{include:"#generic-constraints"}]},{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.curlybrace.open.cs"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.curlybrace.close.cs"}},patterns:[{include:"#class-or-struct-members"}]},{include:"#preprocessor"},{include:"#comment"}]},"ref-modifier":{match:/\bref\b/dgv,name:"storage.modifier.ref.cs"},"relational-pattern":{begin:/<=?|>=?/dgv,beginCaptures:{"0":{name:"keyword.operator.relational.cs"}},end:/(?=[\]\&\)\,\:\;\=\?\^\|\}]|!=|\b(and|or|when)\b)/dgv,patterns:[{include:"#expression"}]},"return-statement":{begin:/(?<!\.)\b(return)\b/dgv,beginCaptures:{"1":{name:"keyword.control.flow.return.cs"}},end:/(?=[\;\}])/dgv,patterns:[{include:"#ref-modifier"},{include:"#expression"}]},"script-top-level":{patterns:[{include:"#statement"},{include:"#method-declaration"},{include:"#punctuation-semicolon"}]},"select-clause":{begin:/\b(select)\b\p{space}*/dgv,beginCaptures:{"1":{name:"keyword.operator.expression.query.select.cs"}},end:/(?=[\)\;])/dgv,patterns:[{include:"#query-body"},{include:"#expression"}]},"simple-designation-pattern":{patterns:[{include:"#discard-pattern"},{match:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,name:"entity.name.variable.local.cs"}]},"slice-pattern":{match:/\.\./dgv,name:"keyword.operator.range.cs"},statement:{patterns:[{include:"#preprocessor"},{include:"#comment"},{include:"#while-statement"},{include:"#do-statement"},{include:"#for-statement"},{include:"#foreach-statement"},{include:"#if-statement"},{include:"#else-part"},{include:"#goto-statement"},{include:"#return-statement"},{include:"#break-or-continue-statement"},{include:"#throw-statement"},{include:"#yield-statement"},{include:"#await-statement"},{include:"#try-statement"},{include:"#expression-operator-expression"},{include:"#context-control-statement"},{include:"#context-control-paren-statement"},{include:"#labeled-statement"},{include:"#object-creation-expression"},{include:"#array-creation-expression"},{include:"#anonymous-object-creation-expression"},{include:"#local-declaration"},{include:"#block"},{include:"#expression"},{include:"#punctuation-semicolon"}]},"storage-modifier":{match:/(?<!\.)\b(new|public|protected|internal|private|abstract|virtual|override|sealed|static|partial|readonly|volatile|const|extern|async|unsafe|ref|required|file)\b/dgv,name:"storage.modifier.$1.cs"},"string-character-escape":{match:/\\(x\p{AHex}{1,4}|U\p{AHex}{8}|u\p{AHex}{4}|[^\n])/dgv,name:"constant.character.escape.cs"},"string-literal":{begin:/(?<!@)"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.cs"}},end:/(")|([^\n\\])(?=\n?$)/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.cs"},"2":{name:"invalid.illegal.newline.cs"}},name:"string.quoted.double.cs",patterns:[{include:"#string-character-escape"}]},"struct-declaration":{begin:/(?=(\brecord\b\p{space}+)?\bstruct\b)/dgv,end:/(?<=\})|(?=;)/dgv,patterns:[{begin:/(\b(record)\b\p{space}+)?(struct)\b\p{space}+(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)/dgv,beginCaptures:{"2":{name:"storage.type.record.cs"},"3":{name:"storage.type.struct.cs"},"4":{name:"entity.name.type.struct.cs"}},end:/(?=\{)|(?=;)/dgv,patterns:[{include:"#comment"},{include:"#type-parameter-list"},{include:"#parenthesized-parameter-list"},{include:"#base-types"},{include:"#generic-constraints"}]},{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.curlybrace.open.cs"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.curlybrace.close.cs"}},patterns:[{include:"#class-or-struct-members"}]},{include:"#preprocessor"},{include:"#comment"}]},subpattern:{patterns:[{captures:{"1":{patterns:[{match:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,name:"variable.other.object.property.cs"},{include:"#punctuation-accessor"}]},"2":{name:"punctuation.separator.colon.cs"}},match:/(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*(?:\p{space}*\.\p{space}*@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)*)\p{space}*(:)/dgv},{include:"#pattern"}]},"switch-expression":{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.curlybrace.open.cs"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.curlybrace.close.cs"}},patterns:[{include:"#punctuation-comma"},{begin:/=>/dgv,beginCaptures:{"0":{name:"keyword.operator.arrow.cs"}},end:/(?=[\,\}])/dgv,patterns:[{include:"#expression"}]},{begin:/\b(when)\b/dgv,beginCaptures:{"1":{name:"keyword.control.conditional.when.cs"}},end:/(?==>|[\,\}])/dgv,patterns:[{include:"#case-guard"}]},{begin:/(?!\p{space})/dgv,end:/(?=\bwhen\b|=>|[\,\}])/dgv,patterns:[{include:"#pattern"}]}]},"switch-label":{begin:/\b(case|default)\b/dgv,beginCaptures:{"1":{name:"keyword.control.conditional.$1.cs"}},end:/(:)|(?=\})/dgv,endCaptures:{"1":{name:"punctuation.separator.colon.cs"}},patterns:[{begin:/\b(when)\b/dgv,beginCaptures:{"1":{name:"keyword.control.conditional.when.cs"}},end:/(?=[\:\}])/dgv,patterns:[{include:"#case-guard"}]},{begin:/(?!\p{space})/dgv,end:/(?=\bwhen\b|[\:\}])/dgv,patterns:[{include:"#pattern"}]}]},"switch-statement":{patterns:[{include:"#intrusive"},{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#expression"}]},{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.curlybrace.open.cs"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.curlybrace.close.cs"}},patterns:[{include:"#switch-label"},{include:"#statement"}]}]},"switch-statement-or-expression":{begin:/(?<!\.)\b(switch)\b/dgv,beginCaptures:{"1":{name:"keyword.control.conditional.switch.cs"}},end:/(?<=\})|(?=\})/dgv,patterns:[{include:"#intrusive"},{begin:/(?=\()/dgv,end:/(?<=\})|(?=\})/dgv,patterns:[{include:"#switch-statement"}]},{begin:/(?=\{)/dgv,end:/(?<=\})|(?=\})/dgv,patterns:[{include:"#switch-expression"}]}]},"throw-expression":{captures:{"1":{name:"keyword.control.flow.throw.cs"}},match:/\b(throw)\b/dgv},"throw-statement":{begin:/(?<!\.)\b(throw)\b/dgv,beginCaptures:{"1":{name:"keyword.control.flow.throw.cs"}},end:/(?=[\;\}])/dgv,patterns:[{include:"#expression"}]},"try-block":{begin:/(?<!\.)\b(try)\b/dgv,beginCaptures:{"1":{name:"keyword.control.exception.try.cs"}},end:/(?<=\})/dgv,patterns:[{include:"#comment"},{include:"#block"}]},"try-statement":{patterns:[{include:"#try-block"},{include:"#catch-clause"},{include:"#finally-clause"}]},"tuple-declaration-deconstruction-element-list":{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#comment"},{include:"#tuple-declaration-deconstruction-element-list"},{include:"#declaration-expression-tuple"},{include:"#punctuation-comma"},{captures:{"1":{name:"entity.name.variable.tuple-element.cs"}},match:/(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\b\p{space}*(?=[\)\,])/dgv}]},"tuple-deconstruction-assignment":{captures:{"1":{patterns:[{include:"#tuple-deconstruction-element-list"}]}},match:/(?<tuple>\p{space}*\((?:[^\(\)]|(?:\p{space}*\((?:[^\(\)]|(?:\p{space}*\((?:[^\(\)]|(?:\p{space}*\((?:[^\(\)]|(?:\p{space}*\((?:[^\(\)]|(?:))+\)))+\)))+\)))+\)))+\))\p{space}*(?!=[\=\>])(?==)/dgv},"tuple-deconstruction-element-list":{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#comment"},{include:"#tuple-deconstruction-element-list"},{include:"#declaration-expression-tuple"},{include:"#punctuation-comma"},{captures:{"1":{name:"variable.other.readwrite.cs"}},match:/(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\b\p{space}*(?=[\)\,])/dgv}]},"tuple-element":{captures:{"1":{patterns:[{include:"#type"}]},"6":{name:"entity.name.variable.tuple-element.cs"}},match:/*@__PURE__*/ new EmulatedRegExp("(?<type_name>(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)(?:(?<tuple_name>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*))\\b)?","dgv",{"hiddenCaptures":[4,6,7,8,11],"transfers":[[2,[4,7,11]],[3,[6]],[5,[8]]]})},"tuple-literal":{begin:/(\()(?=[^\n]*[\,\:])/dgv,beginCaptures:{"1":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#comment"},{include:"#tuple-literal-element"},{include:"#expression"},{include:"#punctuation-comma"}]},"tuple-literal-element":{begin:/(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\p{space}*(?=:)/dgv,beginCaptures:{"1":{name:"entity.name.variable.tuple-element.cs"}},end:/(:)/dgv,endCaptures:{"0":{name:"punctuation.separator.colon.cs"}}},"tuple-type":{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#tuple-element"},{include:"#punctuation-comma"}]},type:{patterns:[{include:"#comment"},{include:"#ref-modifier"},{include:"#readonly-modifier"},{include:"#tuple-type"},{include:"#type-builtin"},{include:"#type-name"},{include:"#type-arguments"},{include:"#type-array-suffix"},{include:"#type-nullable-suffix"},{include:"#type-pointer-suffix"}]},"type-arguments":{begin:/</dgv,beginCaptures:{"0":{name:"punctuation.definition.typeparameters.begin.cs"}},end:/>/dgv,endCaptures:{"0":{name:"punctuation.definition.typeparameters.end.cs"}},patterns:[{include:"#type"},{include:"#punctuation-comma"}]},"type-array-suffix":{begin:/\[/dgv,beginCaptures:{"0":{name:"punctuation.squarebracket.open.cs"}},end:/\]/dgv,endCaptures:{"0":{name:"punctuation.squarebracket.close.cs"}},patterns:[{include:"#intrusive"},{include:"#punctuation-comma"}]},"type-builtin":{captures:{"1":{name:"keyword.type.$1.cs"}},match:/\b(bool|s?byte|u?short|n?u?int|u?long|float|double|decimal|char|string|object|void|dynamic)\b/dgv},"type-declarations":{patterns:[{include:"#preprocessor"},{include:"#comment"},{include:"#storage-modifier"},{include:"#class-declaration"},{include:"#delegate-declaration"},{include:"#enum-declaration"},{include:"#interface-declaration"},{include:"#struct-declaration"},{include:"#record-declaration"},{include:"#attribute-section"},{include:"#punctuation-semicolon"}]},"type-name":{patterns:[{captures:{"1":{name:"entity.name.type.alias.cs"},"2":{name:"punctuation.separator.coloncolon.cs"}},match:/(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\p{space}*(::)/dgv},{captures:{"1":{name:"entity.name.type.cs"},"2":{name:"punctuation.accessor.cs"}},match:/(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\p{space}*(\.)/dgv},{captures:{"1":{name:"punctuation.accessor.cs"},"2":{name:"entity.name.type.cs"}},match:/(\.)\p{space}*(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)/dgv},{match:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,name:"entity.name.type.cs"}]},"type-nullable-suffix":{match:/\?/dgv,name:"punctuation.separator.question-mark.cs"},"type-operator-expression":{begin:/\b(default|sizeof|typeof)\p{space}*(\()/dgv,beginCaptures:{"1":{name:"keyword.operator.expression.$1.cs"},"2":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#type"}]},"type-parameter-list":{begin:/</dgv,beginCaptures:{"0":{name:"punctuation.definition.typeparameters.begin.cs"}},end:/>/dgv,endCaptures:{"0":{name:"punctuation.definition.typeparameters.end.cs"}},patterns:[{match:/\b(in|out)\b/dgv,name:"storage.modifier.$1.cs"},{match:/(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\b/dgv,name:"entity.name.type.type-parameter.cs"},{include:"#comment"},{include:"#punctuation-comma"},{include:"#attribute-section"}]},"type-pattern":{begin:/(?=@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)/dgv,end:/(?=[\]\&\)\,\:\;\=\?\^\|\}]|!=|\b(and|or|when)\b)/dgv,patterns:[{begin:/(?:)/dgv,end:/*@__PURE__*/ new EmulatedRegExp("(?!^[\\@_\\p{Alpha}])(?=[\\]\\&\\(\\)\\,\\:\\;\\=\\@\\^_\\{\\|\\}\\p{Alpha}]|(?:\\p{space}|^)\\?|!=|\\b(and|or|when)\\b)","dgv",{"strategy":"clip_search"}),patterns:[{include:"#intrusive"},{include:"#type-subpattern"}]},{begin:/(?=[\(\@_\{\p{Alpha}])/dgv,end:/(?=[\]\&\)\,\:\;\=\?\^\|\}]|!=|\b(and|or|when)\b)/dgv,patterns:[{include:"#intrusive"},{include:"#positional-pattern"},{include:"#property-pattern"},{include:"#simple-designation-pattern"}]}]},"type-pointer-suffix":{match:/\*/dgv,name:"punctuation.separator.asterisk.cs"},"type-subpattern":{patterns:[{include:"#type-builtin"},{begin:/(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\p{space}*(::)/dgv,beginCaptures:{"1":{name:"entity.name.type.alias.cs"},"2":{name:"punctuation.separator.coloncolon.cs"}},end:/(?<=[_\p{Alpha}\p{Nd}])|(?=[\]\&\(\)\,\.\:-\=\?\[\^\{\|\}]|!=|\b(and|or|when)\b)/dgv,patterns:[{include:"#intrusive"},{match:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,name:"entity.name.type.cs"}]},{match:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,name:"entity.name.type.cs"},{begin:/\./dgv,beginCaptures:{"0":{name:"punctuation.accessor.cs"}},end:/(?<=[_\p{Alpha}\p{Nd}])|(?=[\]\&\(\)\,\:-\=\?\[\^\{\|\}]|!=|\b(and|or|when)\b)/dgv,patterns:[{include:"#intrusive"},{match:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,name:"entity.name.type.cs"}]},{include:"#type-arguments"},{include:"#type-array-suffix"},{match:/(?<!\p{space})\?/dgv,name:"punctuation.separator.question-mark.cs"}]},"using-directive":{patterns:[{begin:/\b(?:(global)\p{space}+)?(using)\p{space}+(static)\b\p{space}*(?:(unsafe)\b\p{space}*)?/dgv,beginCaptures:{"1":{name:"keyword.other.directive.global.cs"},"2":{name:"keyword.other.directive.using.cs"},"3":{name:"keyword.other.directive.static.cs"},"4":{name:"storage.modifier.unsafe.cs"}},end:/(?=;)/dgv,patterns:[{include:"#type"}]},{begin:/\b(?:(global)\p{space}+)?(using)\b\p{space}*(?:(unsafe)\b\p{space}*)?(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\p{space}*(=)/dgv,beginCaptures:{"1":{name:"keyword.other.directive.global.cs"},"2":{name:"keyword.other.directive.using.cs"},"3":{name:"storage.modifier.unsafe.cs"},"4":{name:"entity.name.type.alias.cs"},"5":{name:"keyword.operator.assignment.cs"}},end:/(?=;)/dgv,patterns:[{include:"#comment"},{include:"#type"}]},{begin:/*@__PURE__*/ new EmulatedRegExp("\\b(?:(global)\\p{space}+)?(using)\\b(?:(?=(\\p{space}*))\\3)(?!\\(|var\\b)","dgv",{"hiddenCaptures":[3]}),beginCaptures:{"1":{name:"keyword.other.directive.global.cs"},"2":{name:"keyword.other.directive.using.cs"}},end:/(?=;)/dgv,patterns:[{include:"#comment"},{match:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,name:"entity.name.type.namespace.cs"},{include:"#punctuation-accessor"},{include:"#operator-assignment"}]}]},"using-statement":{begin:/\b(using)\b/dgv,beginCaptures:{"1":{name:"keyword.control.context.using.cs"}},end:/(?<=\))|(?=[\;\}])/dgv,patterns:[{include:"#intrusive"},{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#intrusive"},{include:"#await-expression"},{include:"#local-variable-declaration"},{include:"#expression"}]},{include:"#local-variable-declaration"}]},"var-pattern":{begin:/\b(var)\b/dgv,beginCaptures:{"1":{name:"storage.type.var.cs"}},end:/(?=[\]\&\)\,\:\;\=\?\^\|\}]|!=|\b(and|or|when)\b)/dgv,patterns:[{include:"#designation-pattern"}]},"variable-initializer":{begin:/(?<![\!\=])(=)(?![\=\>])/dgv,beginCaptures:{"1":{name:"keyword.operator.assignment.cs"}},end:/(?=[\]\)\,\;\}])/dgv,patterns:[{include:"#ref-modifier"},{include:"#expression"}]},"verbatim-interpolated-string":{begin:/(?:\$@|@\$)"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.cs"}},end:/"(?=[^"])/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.cs"}},name:"string.quoted.double.cs",patterns:[{include:"#verbatim-string-character-escape"},{include:"#interpolation"}]},"verbatim-string-character-escape":{match:/""/dgv,name:"constant.character.escape.cs"},"verbatim-string-literal":{begin:/@"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.cs"}},end:/"(?=[^"])/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.cs"}},name:"string.quoted.double.cs",patterns:[{include:"#verbatim-string-character-escape"}]},"when-clause":{begin:/(?<!\.)\b(when)\b\p{space}*(\()/dgv,beginCaptures:{"1":{name:"keyword.control.exception.when.cs"},"2":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#expression"},{include:"#comment"}]},"where-clause":{begin:/\b(where)\b\p{space}*/dgv,beginCaptures:{"1":{name:"keyword.operator.expression.query.where.cs"}},end:/(?=[\)\;])/dgv,patterns:[{include:"#query-body"},{include:"#expression"}]},"while-statement":{begin:/(?<!\.)\b(while)\b\p{space}*(?=\()/dgv,beginCaptures:{"1":{name:"keyword.control.loop.while.cs"}},end:/(?<=\})|(?=;)/dgv,patterns:[{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#expression"}]},{include:"#statement"}]},"with-expression":{begin:/(?<!\.)\b(with)\b\p{space}*(?=\{|\/\/|\/\*|(?=\n?$))/dgv,beginCaptures:{"1":{name:"keyword.operator.expression.with.cs"}},end:/(?<=\})/dgv,patterns:[{include:"#comment"},{include:"#initializer-expression"}]},"xml-attribute":{patterns:[{captures:{"1":{name:"entity.other.attribute-name.cs"},"2":{name:"entity.other.attribute-name.namespace.cs"},"3":{name:"punctuation.separator.colon.cs"},"4":{name:"entity.other.attribute-name.localname.cs"},"5":{name:"punctuation.separator.equals.cs"}},match:/(?:^|\p{space}+)((?:([\-_\p{Alpha}\p{Nd}]+)(:))?([\-_\p{Alpha}\p{Nd}]+))(=)/dgv},{include:"#xml-string"}]},"xml-cdata":{begin:/<!\[CDATA\[/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.cs"}},end:/\]\]>/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.cs"}},name:"string.unquoted.cdata.cs"},"xml-character-entity":{patterns:[{captures:{"1":{name:"punctuation.definition.constant.cs"},"3":{name:"punctuation.definition.constant.cs"}},match:/(&)([\:_\p{Alpha}][\-\.\:_\p{Alpha}\p{Nd}]*|#\p{Nd}+|#x\p{AHex}+)(;)/dgv,name:"constant.character.entity.cs"},{match:/&/dgv,name:"invalid.illegal.bad-ampersand.cs"}]},"xml-comment":{begin:/<!--/dgv,beginCaptures:{"0":{name:"punctuation.definition.comment.cs"}},end:/-->/dgv,endCaptures:{"0":{name:"punctuation.definition.comment.cs"}},name:"comment.block.cs"},"xml-doc-comment":{patterns:[{include:"#xml-comment"},{include:"#xml-character-entity"},{include:"#xml-cdata"},{include:"#xml-tag"}]},"xml-string":{patterns:[{begin:/'/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.cs"}},end:/'/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.cs"}},name:"string.quoted.single.cs",patterns:[{include:"#xml-character-entity"}]},{begin:/"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.cs"}},end:/"/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.cs"}},name:"string.quoted.double.cs",patterns:[{include:"#xml-character-entity"}]}]},"xml-tag":{begin:/(<\/?)((?:([\-_\p{Alpha}\p{Nd}]+)(:))?([\-_\p{Alpha}\p{Nd}]+))/dgv,beginCaptures:{"1":{name:"punctuation.definition.tag.cs"},"2":{name:"entity.name.tag.cs"},"3":{name:"entity.name.tag.namespace.cs"},"4":{name:"punctuation.separator.colon.cs"},"5":{name:"entity.name.tag.localname.cs"}},end:/(\/?>)/dgv,endCaptures:{"1":{name:"punctuation.definition.tag.cs"}},name:"meta.tag.cs",patterns:[{include:"#xml-attribute"}]},"yield-break-statement":{captures:{"1":{name:"keyword.control.flow.yield.cs"},"2":{name:"keyword.control.flow.break.cs"}},match:/(?<!\.)\b(yield)\b\p{space}*\b(break)\b/dgv},"yield-return-statement":{begin:/(?<!\.)\b(yield)\b\p{space}*\b(return)\b/dgv,beginCaptures:{"1":{name:"keyword.control.flow.yield.cs"},"2":{name:"keyword.control.flow.return.cs"}},end:/(?=[\;\}])/dgv,patterns:[{include:"#expression"}]},"yield-statement":{patterns:[{include:"#yield-return-statement"},{include:"#yield-break-statement"}]}},scopeName:"source.cs",embeddedLangs:undefined,aliases:["c#","cs"]})
|
|
3
|
+
const lang = Object.freeze({displayName:"C#",name:"csharp",patterns:[{include:"#preprocessor"},{include:"#comment"},{include:"#directives"},{include:"#declarations"},{include:"#script-top-level"}],repository:{"accessor-getter":{patterns:[{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.curlybrace.open.cs"}},contentName:"meta.accessor.getter.cs",end:/\}/dgv,endCaptures:{"0":{name:"punctuation.curlybrace.close.cs"}},patterns:[{include:"#statement"}]},{include:"#accessor-getter-expression"},{include:"#punctuation-semicolon"}]},"accessor-getter-expression":{begin:/=>/dgv,beginCaptures:{"0":{name:"keyword.operator.arrow.cs"}},contentName:"meta.accessor.getter.cs",end:/(?=[\;\}])/dgv,patterns:[{include:"#ref-modifier"},{include:"#expression"}]},"accessor-setter":{patterns:[{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.curlybrace.open.cs"}},contentName:"meta.accessor.setter.cs",end:/\}/dgv,endCaptures:{"0":{name:"punctuation.curlybrace.close.cs"}},patterns:[{include:"#statement"}]},{begin:/=>/dgv,beginCaptures:{"0":{name:"keyword.operator.arrow.cs"}},contentName:"meta.accessor.setter.cs",end:/(?=[\;\}])/dgv,patterns:[{include:"#ref-modifier"},{include:"#expression"}]},{include:"#punctuation-semicolon"}]},"anonymous-method-expression":{patterns:[{begin:/((?:\b(?:async|static)\b\p{space}*)*)(?:(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\b|(\()(?<tuple>(?:[^\(\)]|\((?:(?:[^\(\)]|\((?:(?:[^\(\)]|\((?:(?:[^\(\)]|\((?:(?:[^\(\)]|\((?:)\))*)\))*)\))*)\))*)\))*)(\)))\p{space}*(=>)/dgv,beginCaptures:{"1":{patterns:[{match:/async|static/dgv,name:"storage.modifier.$0.cs"}]},"2":{name:"entity.name.variable.parameter.cs"},"3":{name:"punctuation.parenthesis.open.cs"},"4":{patterns:[{include:"#comment"},{include:"#explicit-anonymous-function-parameter"},{include:"#implicit-anonymous-function-parameter"},{include:"#default-argument"},{include:"#punctuation-comma"}]},"5":{name:"punctuation.parenthesis.close.cs"},"6":{name:"keyword.operator.arrow.cs"}},end:/(?=[\)\,\;\}])/dgv,patterns:[{include:"#intrusive"},{begin:/(?=\{)/dgv,end:/(?=[\)\,\;\}])/dgv,patterns:[{include:"#block"},{include:"#intrusive"}]},{begin:/\b(ref)\b|(?=\P{space})/dgv,beginCaptures:{"1":{name:"storage.modifier.ref.cs"}},end:/(?=[\)\,\;\}])/dgv,patterns:[{include:"#expression"}]}]},{begin:/((?:\b(?:async|static)\b\p{space}*)*)\b(delegate)\b\p{space}*/dgv,beginCaptures:{"1":{patterns:[{match:/async|static/dgv,name:"storage.modifier.$0.cs"}]},"2":{name:"storage.type.delegate.cs"}},end:/(?<=\})|(?=[\)\,\;\}])/dgv,patterns:[{include:"#intrusive"},{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#intrusive"},{include:"#explicit-anonymous-function-parameter"},{include:"#punctuation-comma"}]},{include:"#block"}]}]},"anonymous-object-creation-expression":{begin:/\b(new)\b\p{space}*(?=\{|\/\/|\/\*|(?=\n?$))/dgv,beginCaptures:{"1":{name:"keyword.operator.expression.new.cs"}},end:/(?<=\})/dgv,patterns:[{include:"#comment"},{include:"#initializer-expression"}]},argument:{patterns:[{match:/\b(ref|in)\b/dgv,name:"storage.modifier.$1.cs"},{begin:/\b(out)\b/dgv,beginCaptures:{"1":{name:"storage.modifier.out.cs"}},end:/(?=[\]\)\,])/dgv,patterns:[{include:"#declaration-expression-local"},{include:"#expression"}]},{include:"#expression"}]},"argument-list":{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#named-argument"},{include:"#argument"},{include:"#punctuation-comma"}]},"array-creation-expression":{begin:/*@__PURE__*/ new EmulatedRegExp("\\b(new|stackalloc)\\b\\p{space}*(?<type_name>(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)?\\p{space}*(?=\\[)","dgv",{"hiddenCaptures":[5,7,8,9],"transfers":[[3,[5,8]],[4,[7]],[6,[9]]]}),beginCaptures:{"1":{name:"keyword.operator.expression.$1.cs"},"2":{patterns:[{include:"#type"}]}},end:/(?<=\])/dgv,patterns:[{include:"#bracketed-argument-list"}]},"as-expression":{captures:{"1":{name:"keyword.operator.expression.as.cs"},"2":{patterns:[{include:"#type"}]}},match:/*@__PURE__*/ new EmulatedRegExp("(?<!\\.)\\b(as)\\b\\p{space}*(?<type_name>(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?(?!\\?))?(?:\\p{space}*\\[\\p{space}*(?:,\\p{space}*)*\\](?:\\p{space}*\\?(?!\\?))?)*)?","dgv",{"hiddenCaptures":[5,7,8,9],"transfers":[[3,[5,8]],[4,[7]],[6,[9]]]})},"assignment-expression":{begin:/(?:[\-\%\*\+\/]|\?\?|[\&\^]|<<|>>>?|\|)?=(?![\=\>])/dgv,beginCaptures:{"0":{patterns:[{include:"#assignment-operators"}]}},end:/(?=[\]\)\,\;\}])/dgv,patterns:[{include:"#ref-modifier"},{include:"#expression"}]},"assignment-operators":{patterns:[{match:/(?:[\-\%\*\+\/]|\?\?)=/dgv,name:"keyword.operator.assignment.compound.cs"},{match:/(?:[\&\^]|<<|>>>?|\|)=/dgv,name:"keyword.operator.assignment.compound.bitwise.cs"},{match:/=/dgv,name:"keyword.operator.assignment.cs"}]},attribute:{patterns:[{include:"#type-name"},{include:"#type-arguments"},{include:"#attribute-arguments"}]},"attribute-arguments":{begin:/(\()/dgv,beginCaptures:{"1":{name:"punctuation.parenthesis.open.cs"}},end:/(\))/dgv,endCaptures:{"1":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#attribute-named-argument"},{include:"#expression"},{include:"#punctuation-comma"}]},"attribute-named-argument":{begin:/(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\p{space}*(?==)/dgv,beginCaptures:{"1":{name:"entity.name.variable.property.cs"}},end:/(?=([\)\,]))/dgv,patterns:[{include:"#operator-assignment"},{include:"#expression"}]},"attribute-section":{begin:/(\[)(assembly|module|field|event|method|param|property|return|type)?(:)?/dgv,beginCaptures:{"1":{name:"punctuation.squarebracket.open.cs"},"2":{name:"keyword.other.attribute-specifier.cs"},"3":{name:"punctuation.separator.colon.cs"}},end:/(\])/dgv,endCaptures:{"1":{name:"punctuation.squarebracket.close.cs"}},patterns:[{include:"#comment"},{include:"#attribute"},{include:"#punctuation-comma"}]},"await-expression":{match:/(?<!\.\p{space}*)\b(await)\b/dgv,name:"keyword.operator.expression.await.cs"},"await-statement":{begin:/(?<!\.\p{space}*)\b(await)\b/dgv,beginCaptures:{"1":{name:"keyword.operator.expression.await.cs"}},end:/(?<=\})|(?=[\;\}])/dgv,patterns:[{include:"#foreach-statement"},{include:"#using-statement"},{include:"#expression"}]},"base-types":{begin:/:/dgv,beginCaptures:{"0":{name:"punctuation.separator.colon.cs"}},end:/(?=\{|where|;)/dgv,patterns:[{include:"#type"},{include:"#punctuation-comma"},{include:"#preprocessor"}]},block:{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.curlybrace.open.cs"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.curlybrace.close.cs"}},patterns:[{include:"#statement"}]},"boolean-literal":{patterns:[{match:/(?<!\.)\btrue\b/dgv,name:"constant.language.boolean.true.cs"},{match:/(?<!\.)\bfalse\b/dgv,name:"constant.language.boolean.false.cs"}]},"bracketed-argument-list":{begin:/\[/dgv,beginCaptures:{"0":{name:"punctuation.squarebracket.open.cs"}},end:/\]/dgv,endCaptures:{"0":{name:"punctuation.squarebracket.close.cs"}},patterns:[{include:"#named-argument"},{include:"#argument"},{include:"#punctuation-comma"}]},"bracketed-parameter-list":{begin:/(?=(\[))/dgv,beginCaptures:{"1":{name:"punctuation.squarebracket.open.cs"}},end:/(?=(\]))/dgv,endCaptures:{"1":{name:"punctuation.squarebracket.close.cs"}},patterns:[{begin:/(?<=\[)/dgv,end:/(?=\])/dgv,patterns:[{include:"#comment"},{include:"#attribute-section"},{include:"#parameter"},{include:"#punctuation-comma"},{include:"#variable-initializer"}]}]},"break-or-continue-statement":{match:/(?<!\.)\b(break|continue)\b/dgv,name:"keyword.control.flow.$1.cs"},"case-guard":{patterns:[{include:"#parenthesized-expression"},{include:"#expression"}]},"cast-expression":{captures:{"1":{name:"punctuation.parenthesis.open.cs"},"2":{patterns:[{include:"#type"}]},"7":{name:"punctuation.parenthesis.close.cs"}},match:/*@__PURE__*/ new EmulatedRegExp("(\\()\\p{space}*(?<type_name>(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}*(\\))(?=\\p{space}*-*!*@?[\\(_\\p{Alpha}\\p{Nd}])","dgv",{"hiddenCaptures":[5,7,8,9],"transfers":[[3,[5,8]],[4,[7]],[6,[9]]]})},"casted-constant-pattern":{begin:/(\()([\.\:\@_\p{space}\p{Alpha}\p{Nd}]+)(\))(?=[\-\!\+\~\p{space}]*@?["'\(_\p{Alpha}\p{Nd}]+)/dgv,beginCaptures:{"1":{name:"punctuation.parenthesis.open.cs"},"2":{patterns:[{include:"#type-builtin"},{include:"#type-name"}]},"3":{name:"punctuation.parenthesis.close.cs"}},end:/(?=[\]\&\)\,\:\;\=\?\^\|\}]|!=|\b(and|or|when)\b)/dgv,patterns:[{include:"#casted-constant-pattern"},{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#constant-pattern"}]},{include:"#constant-pattern"},{captures:{"1":{name:"entity.name.type.alias.cs"},"2":{name:"punctuation.separator.coloncolon.cs"}},match:/(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\p{space}*(::)/dgv},{captures:{"1":{name:"entity.name.type.cs"},"2":{name:"punctuation.accessor.cs"}},match:/(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\p{space}*(\.)/dgv},{match:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,name:"variable.other.constant.cs"}]},"catch-clause":{begin:/(?<!\.)\b(catch)\b/dgv,beginCaptures:{"1":{name:"keyword.control.exception.catch.cs"}},end:/(?<=\})/dgv,patterns:[{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{captures:{"1":{patterns:[{include:"#type"}]},"6":{name:"entity.name.variable.local.cs"}},match:/*@__PURE__*/ new EmulatedRegExp("(?<type_name>(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}*(?:((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*))\\b)?","dgv",{"hiddenCaptures":[4,6,7,8,11],"transfers":[[2,[4,7,11]],[3,[6]],[5,[8]]]})}]},{include:"#when-clause"},{include:"#comment"},{include:"#block"}]},"char-character-escape":{match:/\\(x\p{AHex}{1,4}|u\p{AHex}{4}|[^\n])/dgv,name:"constant.character.escape.cs"},"char-literal":{begin:/'/dgv,beginCaptures:{"0":{name:"punctuation.definition.char.begin.cs"}},end:/(')|([^\n\\])(?=\n?$)/dgv,endCaptures:{"1":{name:"punctuation.definition.char.end.cs"},"2":{name:"invalid.illegal.newline.cs"}},name:"string.quoted.single.cs",patterns:[{include:"#char-character-escape"}]},"class-declaration":{begin:/(?=(\brecord\b\p{space}+)?\bclass\b)/dgv,end:/(?<=\})|(?=;)/dgv,patterns:[{begin:/(\b(record)\b\p{space}+)?\b(class)\b\p{space}+(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\p{space}*/dgv,beginCaptures:{"2":{name:"storage.type.record.cs"},"3":{name:"storage.type.class.cs"},"4":{name:"entity.name.type.class.cs"}},end:/(?=\{)|(?=;)/dgv,patterns:[{include:"#comment"},{include:"#type-parameter-list"},{include:"#parenthesized-parameter-list"},{include:"#base-types"},{include:"#generic-constraints"}]},{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.curlybrace.open.cs"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.curlybrace.close.cs"}},patterns:[{include:"#class-or-struct-members"}]},{include:"#preprocessor"},{include:"#comment"}]},"class-or-struct-members":{patterns:[{include:"#preprocessor"},{include:"#comment"},{include:"#storage-modifier"},{include:"#type-declarations"},{include:"#property-declaration"},{include:"#field-declaration"},{include:"#event-declaration"},{include:"#indexer-declaration"},{include:"#variable-initializer"},{include:"#constructor-declaration"},{include:"#destructor-declaration"},{include:"#operator-declaration"},{include:"#conversion-operator-declaration"},{include:"#method-declaration"},{include:"#attribute-section"},{include:"#punctuation-semicolon"}]},"combinator-pattern":{match:/\b(and|or|not)\b/dgv,name:"keyword.operator.expression.pattern.combinator.$1.cs"},comment:{patterns:[{begin:/(^\p{space}+)?(\/\/\/)(?!\/)/dgv,captures:{"1":{name:"punctuation.whitespace.comment.leading.cs"},"2":{name:"punctuation.definition.comment.cs"}},name:"comment.block.documentation.cs",patterns:[{include:"#xml-doc-comment"}],while:/^(\p{space}*)(\/\/\/)(?!\/)/dgv},{begin:/(^\p{space}+)?(\/\*\*)(?!\/)/dgv,captures:{"1":{name:"punctuation.whitespace.comment.leading.cs"},"2":{name:"punctuation.definition.comment.cs"}},end:/(^\p{space}+)?(\*\/)/dgv,name:"comment.block.documentation.cs",patterns:[{begin:/(?=(?:(?!\*\/)\p{Any})*(?=\n?$))/dgvy,patterns:[{include:"#xml-doc-comment"}],while:/*@__PURE__*/ new EmulatedRegExp("^((?:(?=(\\p{space}*))\\2))(\\*(?!/))?(?=(?:(?!\\*/)\\p{Any})*(?=\\n?$))","dgv",{"hiddenCaptures":[2]}),whileCaptures:{"1":{name:"punctuation.whitespace.comment.leading.cs"},"2":{name:"punctuation.definition.comment.cs"}}},{include:"#xml-doc-comment"}]},{begin:/(^\p{space}+)?(\/\/)[^\n]*(?=\n?$)/dgv,captures:{"1":{name:"punctuation.whitespace.comment.leading.cs"},"2":{name:"punctuation.definition.comment.cs"}},name:"comment.line.double-slash.cs",while:/^(\p{space}*)(\/\/)[^\n]*(?=\n?$)/dgv},{begin:/\/\*/dgv,captures:{"0":{name:"punctuation.definition.comment.cs"}},end:/\*\//dgv,name:"comment.block.cs"}]},"conditional-operator":{patterns:[{match:/\?(?!\?|\p{space}*[\.\[])/dgv,name:"keyword.operator.conditional.question-mark.cs"},{match:/:/dgv,name:"keyword.operator.conditional.colon.cs"}]},"constant-pattern":{patterns:[{include:"#boolean-literal"},{include:"#null-literal"},{include:"#numeric-literal"},{include:"#char-literal"},{include:"#string-literal"},{include:"#raw-string-literal"},{include:"#verbatim-string-literal"},{include:"#type-operator-expression"},{include:"#expression-operator-expression"},{include:"#expression-operators"},{include:"#casted-constant-pattern"}]},"constructor-declaration":{begin:/(?=@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*\p{space}*\()/dgv,end:/(?<=\})|(?=;)/dgv,patterns:[{captures:{"1":{name:"entity.name.function.cs"}},match:/(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\b/dgv},{begin:/(:)/dgv,beginCaptures:{"1":{name:"punctuation.separator.colon.cs"}},end:/(?=\{|=>)/dgv,patterns:[{include:"#constructor-initializer"}]},{include:"#parenthesized-parameter-list"},{include:"#preprocessor"},{include:"#comment"},{include:"#expression-body"},{include:"#block"}]},"constructor-initializer":{begin:/\b(base|this)\b\p{space}*(?=\()/dgv,beginCaptures:{"1":{name:"variable.language.$1.cs"}},end:/(?<=\))/dgv,patterns:[{include:"#argument-list"}]},"context-control-paren-statement":{patterns:[{include:"#fixed-statement"},{include:"#lock-statement"},{include:"#using-statement"}]},"context-control-statement":{match:/\b(checked|unchecked|unsafe)\b(?!\p{space}*[\(\@_\p{Alpha}])/dgv,name:"keyword.control.context.$1.cs"},"conversion-operator-declaration":{begin:/*@__PURE__*/ new EmulatedRegExp("\\b(?<explicit_or_implicit_keyword>(?:ex|im)plicit)\\p{space}*\\b(?<operator_keyword>operator)\\p{space}*(?<type_name>(?:ref\\p{space}+(?:readonly\\p{space}+)?)?(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}*(?=\\()","dgv",{"hiddenCaptures":[6,8,9,10],"transfers":[[4,[6,9]],[5,[8]],[7,[10]]]}),beginCaptures:{"1":{patterns:[{captures:{"1":{name:"storage.modifier.explicit.cs"}},match:/\b(explicit)\b/dgv},{captures:{"1":{name:"storage.modifier.implicit.cs"}},match:/\b(implicit)\b/dgv}]},"2":{name:"storage.type.operator.cs"},"3":{patterns:[{include:"#type"}]}},end:/(?<=\})|(?=;)/dgv,patterns:[{include:"#comment"},{include:"#parenthesized-parameter-list"},{include:"#expression-body"},{include:"#block"}]},"declaration-expression-local":{captures:{"1":{name:"storage.type.var.cs"},"2":{patterns:[{include:"#type"}]},"7":{name:"entity.name.variable.local.cs"}},match:/*@__PURE__*/ new EmulatedRegExp("(?:\\b(var)\\b|(?<type_name>(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*))\\p{space}+((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*))\\b\\p{space}*(?=[\\]\\)\\,])","dgv",{"hiddenCaptures":[5,7,8,9,12],"transfers":[[3,[5,8,12]],[4,[7]],[6,[9]]]})},"declaration-expression-tuple":{captures:{"1":{name:"storage.type.var.cs"},"2":{patterns:[{include:"#type"}]},"7":{name:"entity.name.variable.tuple-element.cs"}},match:/*@__PURE__*/ new EmulatedRegExp("(?:\\b(var)\\b|(?<type_name>(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*))\\p{space}+((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*))\\b\\p{space}*(?=[\\)\\,])","dgv",{"hiddenCaptures":[5,7,8,9,12],"transfers":[[3,[5,8,12]],[4,[7]],[6,[9]]]})},declarations:{patterns:[{include:"#namespace-declaration"},{include:"#type-declarations"},{include:"#punctuation-semicolon"}]},"default-argument":{begin:/=/dgv,beginCaptures:{"0":{name:"keyword.operator.assignment.cs"}},end:/(?=[\)\,])/dgv,patterns:[{include:"#expression"}]},"default-literal-expression":{captures:{"1":{name:"keyword.operator.expression.default.cs"}},match:/\b(default)\b/dgv},"delegate-declaration":{begin:/*@__PURE__*/ new EmulatedRegExp("\\b(delegate)\\b\\p{space}+(?<type_name>(?:ref\\p{space}+(?:readonly\\p{space}+)?)?(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}+((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*))\\p{space}*(<([^\\<\\>]+)>)?\\p{space}*(?=\\()","dgv",{"hiddenCaptures":[5,7,8,9,12],"transfers":[[3,[5,8,12]],[4,[7]],[6,[9]]]}),beginCaptures:{"1":{name:"storage.type.delegate.cs"},"2":{patterns:[{include:"#type"}]},"7":{name:"entity.name.type.delegate.cs"},"8":{patterns:[{include:"#type-parameter-list"}]}},end:/(?=;)/dgv,patterns:[{include:"#comment"},{include:"#parenthesized-parameter-list"},{include:"#generic-constraints"}]},"designation-pattern":{patterns:[{include:"#intrusive"},{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#punctuation-comma"},{include:"#designation-pattern"}]},{include:"#simple-designation-pattern"}]},"destructor-declaration":{begin:/(~)(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\p{space}*(?=\()/dgv,beginCaptures:{"1":{name:"punctuation.tilde.cs"},"2":{name:"entity.name.function.cs"}},end:/(?<=\})|(?=;)/dgv,patterns:[{include:"#comment"},{include:"#parenthesized-parameter-list"},{include:"#expression-body"},{include:"#block"}]},directives:{patterns:[{include:"#extern-alias-directive"},{include:"#using-directive"},{include:"#attribute-section"},{include:"#punctuation-semicolon"}]},"discard-pattern":{match:/_(?![_\p{Alpha}\p{Nd}])/dgv,name:"variable.language.discard.cs"},"do-statement":{begin:/(?<!\.)\b(do)\b/dgv,beginCaptures:{"1":{name:"keyword.control.loop.do.cs"}},end:/(?=[\;\}])/dgv,patterns:[{include:"#statement"}]},"double-raw-interpolation":{begin:/(?<=[^\{][^\{]|^)(\{*)(\{\{)(?=[^\{])/dgv,beginCaptures:{"1":{name:"string.quoted.double.cs"},"2":{name:"punctuation.definition.interpolation.begin.cs"}},end:/\}\}/dgv,endCaptures:{"0":{name:"punctuation.definition.interpolation.end.cs"}},name:"meta.embedded.interpolation.cs",patterns:[{include:"#expression"}]},"element-access-expression":{begin:/(?:(?:(\?)\p{space}*)?(\.)\p{space}*|(->)\p{space}*)?(?:(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\p{space}*)?(?:(\?)\p{space}*)?(?=\[)/dgv,beginCaptures:{"1":{name:"keyword.operator.null-conditional.cs"},"2":{name:"punctuation.accessor.cs"},"3":{name:"punctuation.accessor.pointer.cs"},"4":{name:"variable.other.object.property.cs"},"5":{name:"keyword.operator.null-conditional.cs"}},end:/(?<=\])(?!\p{space}*\[)/dgv,patterns:[{include:"#bracketed-argument-list"}]},"else-part":{begin:/(?<!\.)\b(else)\b/dgv,beginCaptures:{"1":{name:"keyword.control.conditional.else.cs"}},end:/(?<=\})|(?=;)/dgv,patterns:[{include:"#statement"}]},"enum-declaration":{begin:/(?=\benum\b)/dgv,end:/(?<=\})|(?=;)/dgv,patterns:[{begin:/(?=enum)/dgv,end:/(?=\{)|(?=;)/dgv,patterns:[{include:"#comment"},{captures:{"1":{name:"storage.type.enum.cs"},"2":{name:"entity.name.type.enum.cs"}},match:/(enum)\p{space}+(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)/dgv},{begin:/:/dgv,beginCaptures:{"0":{name:"punctuation.separator.colon.cs"}},end:/(?=\{)/dgv,patterns:[{include:"#type"}]}]},{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.curlybrace.open.cs"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.curlybrace.close.cs"}},patterns:[{include:"#preprocessor"},{include:"#comment"},{include:"#attribute-section"},{include:"#punctuation-comma"},{begin:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,beginCaptures:{"0":{name:"entity.name.variable.enum-member.cs"}},end:/(?=([\,\}]))/dgv,patterns:[{include:"#comment"},{include:"#variable-initializer"}]}]},{include:"#preprocessor"},{include:"#comment"}]},"event-accessors":{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.curlybrace.open.cs"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.curlybrace.close.cs"}},patterns:[{include:"#comment"},{include:"#attribute-section"},{begin:/\b(add|remove)\b\p{space}*(?=[\;\{]|=>|\/\/|\/\*|(?=\n?$))/dgv,beginCaptures:{"1":{name:"storage.type.accessor.$1.cs"}},end:/(?<=[\;\}])|(?=\})/dgv,patterns:[{include:"#accessor-setter"}]}]},"event-declaration":{begin:/*@__PURE__*/ new EmulatedRegExp("\\b(event)\\b\\p{space}*(?<return_type>(?<type_name>(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}+)(?<interface_name>((?:(?:(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}*\\.\\p{space}*)?((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*))\\p{space}*(?=[\\,\\;\\=\\{]|//|/\\*|(?=\\n?$))","dgv",{"hiddenCaptures":[6,8,9,10,13,14,15,16,17,18,19,20,21,23],"transfers":[[4,[6,9,14,16,19,23]],[5,[8,15,18]],[7,[10,17,20]],[3,[13]],[11,[21]]]}),beginCaptures:{"1":{name:"storage.type.event.cs"},"2":{patterns:[{include:"#type"}]},"8":{patterns:[{include:"#type"},{include:"#punctuation-accessor"}]},"9":{name:"entity.name.variable.event.cs"}},end:/(?<=\})|(?=;)/dgv,patterns:[{include:"#comment"},{include:"#event-accessors"},{match:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,name:"entity.name.variable.event.cs"},{include:"#punctuation-comma"},{begin:/=/dgv,beginCaptures:{"0":{name:"keyword.operator.assignment.cs"}},end:/(?<=,)|(?=;)/dgv,patterns:[{include:"#expression"},{include:"#punctuation-comma"}]}]},"explicit-anonymous-function-parameter":{captures:{"1":{name:"storage.modifier.$1.cs"},"2":{patterns:[{include:"#type"}]},"7":{name:"entity.name.variable.parameter.cs"}},match:/*@__PURE__*/ new EmulatedRegExp("(?:\\b(ref|params|out|in)\\b\\p{space}*)?(?<type_name>(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args><(?:[^\\<\\>]|(?:<(?:[^\\<\\>]|(?:<(?:[^\\<\\>]|(?:<(?:[^\\<\\>]|(?:<(?:[^\\<\\>]|(?:))*>\\p{space}*))*>\\p{space}*))*>\\p{space}*))*>\\p{space}*))*>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(<(?:[^\\<\\>]|(?:<(?:[^\\<\\>]|(?:<(?:[^\\<\\>]|(?:<(?:[^\\<\\>]|(?:<(?:[^\\<\\>]|(?:))*>\\p{space}*))*>\\p{space}*))*>\\p{space}*))*>\\p{space}*))*>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))*\\)))*\\)))*\\)))*\\)))*\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}*\\b((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*))\\b","dgv",{"hiddenCaptures":[5,7,8,9,12],"transfers":[[3,[5,8,12]],[4,[7]],[6,[9]]]})},expression:{patterns:[{include:"#preprocessor"},{include:"#comment"},{include:"#expression-operator-expression"},{include:"#type-operator-expression"},{include:"#default-literal-expression"},{include:"#throw-expression"},{include:"#raw-interpolated-string"},{include:"#interpolated-string"},{include:"#verbatim-interpolated-string"},{include:"#type-builtin"},{include:"#language-variable"},{include:"#switch-statement-or-expression"},{include:"#with-expression"},{include:"#conditional-operator"},{include:"#assignment-expression"},{include:"#expression-operators"},{include:"#await-expression"},{include:"#query-expression"},{include:"#as-expression"},{include:"#is-expression"},{include:"#anonymous-method-expression"},{include:"#object-creation-expression"},{include:"#array-creation-expression"},{include:"#anonymous-object-creation-expression"},{include:"#invocation-expression"},{include:"#member-access-expression"},{include:"#element-access-expression"},{include:"#cast-expression"},{include:"#literal"},{include:"#parenthesized-expression"},{include:"#tuple-deconstruction-assignment"},{include:"#initializer-expression"},{include:"#identifier"}]},"expression-body":{begin:/=>/dgv,beginCaptures:{"0":{name:"keyword.operator.arrow.cs"}},end:/(?=[\)\,\;\}])/dgv,patterns:[{include:"#ref-modifier"},{include:"#expression"}]},"expression-operator-expression":{begin:/\b(checked|unchecked|nameof)\p{space}*(\()/dgv,beginCaptures:{"1":{name:"keyword.operator.expression.$1.cs"},"2":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#expression"}]},"expression-operators":{patterns:[{match:/<<|>>>?/dgv,name:"keyword.operator.bitwise.shift.cs"},{match:/[\!\=]=/dgv,name:"keyword.operator.comparison.cs"},{match:/<=|>=|[\<\>]/dgv,name:"keyword.operator.relational.cs"},{match:/!|&&|\|\|/dgv,name:"keyword.operator.logical.cs"},{match:/[\&\^\|\~]/dgv,name:"keyword.operator.bitwise.cs"},{match:/--/dgv,name:"keyword.operator.decrement.cs"},{match:/\+\+/dgv,name:"keyword.operator.increment.cs"},{match:/\+|-(?!>)|[\%\*\/]/dgv,name:"keyword.operator.arithmetic.cs"},{match:/\?\?/dgv,name:"keyword.operator.null-coalescing.cs"},{match:/\.\./dgv,name:"keyword.operator.range.cs"}]},"extern-alias-directive":{begin:/\b(extern)\p{space}+(alias)\b/dgv,beginCaptures:{"1":{name:"keyword.other.directive.extern.cs"},"2":{name:"keyword.other.directive.alias.cs"}},end:/(?=;)/dgv,patterns:[{match:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,name:"variable.other.alias.cs"}]},"field-declaration":{begin:/*@__PURE__*/ new EmulatedRegExp("(?<type_name>(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}+((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*))\\p{space}*(?!=[\\=\\>])(?=[\\,\\;\\=]|(?=\\n?$))","dgv",{"hiddenCaptures":[4,6,7,8,11],"transfers":[[2,[4,7,11]],[3,[6]],[5,[8]]]}),beginCaptures:{"1":{patterns:[{include:"#type"}]},"6":{name:"entity.name.variable.field.cs"}},end:/(?=;)/dgv,patterns:[{match:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,name:"entity.name.variable.field.cs"},{include:"#punctuation-comma"},{include:"#comment"},{include:"#variable-initializer"},{include:"#class-or-struct-members"}]},"finally-clause":{begin:/(?<!\.)\b(finally)\b/dgv,beginCaptures:{"1":{name:"keyword.control.exception.finally.cs"}},end:/(?<=\})/dgv,patterns:[{include:"#comment"},{include:"#block"}]},"fixed-statement":{begin:/\b(fixed)\b/dgv,beginCaptures:{"1":{name:"keyword.control.context.fixed.cs"}},end:/(?<=\))|(?=[\;\}])/dgv,patterns:[{include:"#intrusive"},{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#intrusive"},{include:"#local-variable-declaration"}]}]},"for-statement":{begin:/\b(for)\b/dgv,beginCaptures:{"1":{name:"keyword.control.loop.for.cs"}},end:/(?<=\))|(?=[\;\}])/dgv,patterns:[{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{begin:/(?=[^\)\;])/dgv,end:/(?=[\)\;])/dgv,patterns:[{include:"#intrusive"},{include:"#local-variable-declaration"}]},{begin:/(?=;)/dgv,end:/(?=\))/dgv,patterns:[{include:"#intrusive"},{include:"#expression"},{include:"#punctuation-comma"},{include:"#punctuation-semicolon"}]}]}]},"foreach-statement":{begin:/\b(foreach)\b/dgv,beginCaptures:{"1":{name:"keyword.control.loop.foreach.cs"}},end:/(?<=\))|(?=[\;\}])/dgv,patterns:[{include:"#intrusive"},{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#intrusive"},{captures:{"1":{name:"storage.modifier.ref.cs"},"2":{name:"storage.type.var.cs"},"3":{patterns:[{include:"#type"}]},"8":{name:"entity.name.variable.local.cs"},"9":{name:"keyword.control.loop.in.cs"}},match:/*@__PURE__*/ new EmulatedRegExp("(?:(?:\\b(ref)\\p{space}+)?\\b(var)\\b|(?<type_name>(?:ref\\p{space}+)?(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*))\\p{space}+((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*))\\p{space}+\\b(in)\\b","dgv",{"hiddenCaptures":[6,8,9,10,13],"transfers":[[4,[6,9,13]],[5,[8]],[7,[10]]]})},{captures:{"1":{name:"storage.type.var.cs"},"2":{patterns:[{include:"#tuple-declaration-deconstruction-element-list"}]},"3":{name:"keyword.control.loop.in.cs"}},match:/(?:\b(var)\b\p{space}*)?(?<tuple>\((?:[^\(\)]|(?:\((?:[^\(\)]|(?:\((?:[^\(\)]|(?:\((?:[^\(\)]|(?:\((?:[^\(\)]|(?:))+\)))+\)))+\)))+\)))+\))\p{space}+\b(in)\b/dgv},{include:"#expression"}]}]},"generic-constraints":{begin:/(where)\p{space}+(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\p{space}*(:)/dgv,beginCaptures:{"1":{name:"storage.modifier.where.cs"},"2":{name:"entity.name.type.type-parameter.cs"},"3":{name:"punctuation.separator.colon.cs"}},end:/(?=\{|where|;|=>)/dgv,patterns:[{match:/\bclass\b/dgv,name:"storage.type.class.cs"},{match:/\bstruct\b/dgv,name:"storage.type.struct.cs"},{match:/\bdefault\b/dgv,name:"keyword.other.constraint.default.cs"},{match:/\bnotnull\b/dgv,name:"keyword.other.constraint.notnull.cs"},{match:/\bunmanaged\b/dgv,name:"keyword.other.constraint.unmanaged.cs"},{captures:{"1":{name:"keyword.operator.expression.new.cs"},"2":{name:"punctuation.parenthesis.open.cs"},"3":{name:"punctuation.parenthesis.close.cs"}},match:/(new)\p{space}*(\()\p{space}*(\))/dgv},{include:"#type"},{include:"#punctuation-comma"},{include:"#generic-constraints"}]},"goto-statement":{begin:/(?<!\.)\b(goto)\b/dgv,beginCaptures:{"1":{name:"keyword.control.flow.goto.cs"}},end:/(?=[\;\}])/dgv,patterns:[{begin:/\b(case)\b/dgv,beginCaptures:{"1":{name:"keyword.control.conditional.case.cs"}},end:/(?=[\;\}])/dgv,patterns:[{include:"#expression"}]},{captures:{"1":{name:"keyword.control.conditional.default.cs"}},match:/\b(default)\b/dgv},{match:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,name:"entity.name.label.cs"}]},"group-by":{captures:{"1":{name:"keyword.operator.expression.query.by.cs"}},match:/\b(by)\b\p{space}*/dgv},"group-clause":{begin:/\b(group)\b\p{space}*/dgv,beginCaptures:{"1":{name:"keyword.operator.expression.query.group.cs"}},end:/(?=[\)\;])/dgv,patterns:[{include:"#group-by"},{include:"#group-into"},{include:"#query-body"},{include:"#expression"}]},"group-into":{captures:{"1":{name:"keyword.operator.expression.query.into.cs"},"2":{name:"entity.name.variable.range-variable.cs"}},match:/\b(into)\b\p{space}*(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\b\p{space}*/dgv},identifier:{match:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,name:"variable.other.readwrite.cs"},"if-statement":{begin:/(?<!\.)\b(if)\b\p{space}*(?=\()/dgv,beginCaptures:{"1":{name:"keyword.control.conditional.if.cs"}},end:/(?<=\})|(?=;)/dgv,patterns:[{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#expression"}]},{include:"#statement"}]},"implicit-anonymous-function-parameter":{match:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*\b/dgv,name:"entity.name.variable.parameter.cs"},"indexer-declaration":{begin:/*@__PURE__*/ new EmulatedRegExp("(?<return_type>(?<type_name>(?:ref\\p{space}+(?:readonly\\p{space}+)?)?(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}+)(?<interface_name>((?:ref\\p{space}+(?:readonly\\p{space}+)?)?(?:(?:(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}*\\.\\p{space}*)?(?<indexer_name>this)\\p{space}*(?=\\[)","dgv",{"hiddenCaptures":[5,7,8,9,12,13,14,15,16,17,18,19,20],"transfers":[[3,[5,8,13,15,18]],[4,[7,14,17]],[6,[9,16,19]],[2,[12]],[10,[20]]]}),beginCaptures:{"1":{patterns:[{include:"#type"}]},"7":{patterns:[{include:"#type"},{include:"#punctuation-accessor"}]},"8":{name:"variable.language.this.cs"}},end:/(?<=\})|(?=;)/dgv,patterns:[{include:"#comment"},{include:"#bracketed-parameter-list"},{include:"#property-accessors"},{include:"#accessor-getter-expression"},{include:"#variable-initializer"}]},"initializer-expression":{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.curlybrace.open.cs"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.curlybrace.close.cs"}},patterns:[{include:"#expression"},{include:"#punctuation-comma"}]},"interface-declaration":{begin:/(?=\binterface\b)/dgv,end:/(?<=\})|(?=;)/dgv,patterns:[{begin:/(interface)\b\p{space}+(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)/dgv,beginCaptures:{"1":{name:"storage.type.interface.cs"},"2":{name:"entity.name.type.interface.cs"}},end:/(?=\{)|(?=;)/dgv,patterns:[{include:"#comment"},{include:"#type-parameter-list"},{include:"#base-types"},{include:"#generic-constraints"}]},{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.curlybrace.open.cs"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.curlybrace.close.cs"}},patterns:[{include:"#interface-members"}]},{include:"#preprocessor"},{include:"#comment"}]},"interface-members":{patterns:[{include:"#preprocessor"},{include:"#comment"},{include:"#storage-modifier"},{include:"#property-declaration"},{include:"#event-declaration"},{include:"#indexer-declaration"},{include:"#method-declaration"},{include:"#operator-declaration"},{include:"#attribute-section"},{include:"#punctuation-semicolon"}]},"interpolated-string":{begin:/\$"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.cs"}},end:/(")|([^\n\\])(?=\n?$)/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.cs"},"2":{name:"invalid.illegal.newline.cs"}},name:"string.quoted.double.cs",patterns:[{include:"#string-character-escape"},{include:"#interpolation"}]},interpolation:{begin:/(?<=[^\{]|^)((?:\{\{)*)(\{)(?=[^\{])/dgv,beginCaptures:{"1":{name:"string.quoted.double.cs"},"2":{name:"punctuation.definition.interpolation.begin.cs"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.definition.interpolation.end.cs"}},name:"meta.embedded.interpolation.cs",patterns:[{include:"#expression"}]},intrusive:{patterns:[{include:"#preprocessor"},{include:"#comment"}]},"invocation-expression":{begin:/(?:(?:(\?)\p{space}*)?(\.)\p{space}*|(->)\p{space}*)?(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\p{space}*(<(?<type_args>[^\(\)\<\>]|\((?:[^\(\)\<\>]|<[^\(\)\<\>]*>|\([^\(\)\<\>]*\))*\)|<(?:[^\(\)\<\>]|\((?:[^\(\)\<\>]|<[^\(\)\<\>]*>|\([^\(\)\<\>]*\))*\)|<(?:[^\(\)\<\>]|\((?:[^\(\)\<\>]|<[^\(\)\<\>]*>|\([^\(\)\<\>]*\))*\)|<(?:[^\(\)\<\>]|\((?:[^\(\)\<\>]|<[^\(\)\<\>]*>|\([^\(\)\<\>]*\))*\)|<(?:[^\(\)\<\>]|\((?:[^\(\)\<\>]|<[^\(\)\<\>]*>|\([^\(\)\<\>]*\))*\)|<(?:)*>)*>)*>)*>)*>)*>\p{space}*)?(?=\()/dgv,beginCaptures:{"1":{name:"keyword.operator.null-conditional.cs"},"2":{name:"punctuation.accessor.cs"},"3":{name:"punctuation.accessor.pointer.cs"},"4":{name:"entity.name.function.cs"},"5":{patterns:[{include:"#type-arguments"}]}},end:/(?<=\))/dgv,patterns:[{include:"#argument-list"}]},"is-expression":{begin:/(?<!\.)\b(is)\b/dgv,beginCaptures:{"1":{name:"keyword.operator.expression.pattern.is.cs"}},end:/(?=[\]\&\)\,\:\;\=\?\^\|\}]|!=)/dgv,patterns:[{include:"#pattern"}]},"join-clause":{begin:/*@__PURE__*/ new EmulatedRegExp("\\b(join)\\b\\p{space}*(?<type_name>(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)?\\p{space}+((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*))\\b\\p{space}*\\b(in)\\b\\p{space}*","dgv",{"hiddenCaptures":[5,7,8,9,12],"transfers":[[3,[5,8,12]],[4,[7]],[6,[9]]]}),beginCaptures:{"1":{name:"keyword.operator.expression.query.join.cs"},"2":{patterns:[{include:"#type"}]},"7":{name:"entity.name.variable.range-variable.cs"},"8":{name:"keyword.operator.expression.query.in.cs"}},end:/(?=[\)\;])/dgv,patterns:[{include:"#join-on"},{include:"#join-equals"},{include:"#join-into"},{include:"#query-body"},{include:"#expression"}]},"join-equals":{captures:{"1":{name:"keyword.operator.expression.query.equals.cs"}},match:/\b(equals)\b\p{space}*/dgv},"join-into":{captures:{"1":{name:"keyword.operator.expression.query.into.cs"},"2":{name:"entity.name.variable.range-variable.cs"}},match:/\b(into)\b\p{space}*(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\b\p{space}*/dgv},"join-on":{captures:{"1":{name:"keyword.operator.expression.query.on.cs"}},match:/\b(on)\b\p{space}*/dgv},"labeled-statement":{captures:{"1":{name:"entity.name.label.cs"},"2":{name:"punctuation.separator.colon.cs"}},match:/(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\p{space}*(:)/dgv},"language-variable":{patterns:[{match:/\b(base|this)\b/dgv,name:"variable.language.$1.cs"},{match:/\b(value)\b/dgv,name:"variable.other.$1.cs"}]},"let-clause":{begin:/\b(let)\b\p{space}*(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\b\p{space}*(=)\p{space}*/dgv,beginCaptures:{"1":{name:"keyword.operator.expression.query.let.cs"},"2":{name:"entity.name.variable.range-variable.cs"},"3":{name:"keyword.operator.assignment.cs"}},end:/(?=[\)\;])/dgv,patterns:[{include:"#query-body"},{include:"#expression"}]},"list-pattern":{begin:/(?=\[)/dgv,end:/(?=[\]\&\)\,\:\;\=\?\^\|\}]|!=|\b(and|or|when)\b)/dgv,patterns:[{begin:/\[/dgv,beginCaptures:{"0":{name:"punctuation.squarebracket.open.cs"}},end:/\]/dgv,endCaptures:{"0":{name:"punctuation.squarebracket.close.cs"}},patterns:[{include:"#pattern"},{include:"#punctuation-comma"}]},{begin:/(?<=\])/dgv,end:/(?=[\]\&\)\,\:\;\=\?\^\|\}]|!=|\b(and|or|when)\b)/dgv,patterns:[{include:"#intrusive"},{include:"#simple-designation-pattern"}]}]},literal:{patterns:[{include:"#boolean-literal"},{include:"#null-literal"},{include:"#numeric-literal"},{include:"#char-literal"},{include:"#raw-string-literal"},{include:"#string-literal"},{include:"#verbatim-string-literal"},{include:"#tuple-literal"}]},"local-constant-declaration":{begin:/*@__PURE__*/ new EmulatedRegExp("\\b(?<const_keyword>const)\\b\\p{space}*(?<type_name>(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}+((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*))\\p{space}*(?=[\\,\\;\\=])","dgv",{"hiddenCaptures":[5,7,8,9,12],"transfers":[[3,[5,8,12]],[4,[7]],[6,[9]]]}),beginCaptures:{"1":{name:"storage.modifier.const.cs"},"2":{patterns:[{include:"#type"}]},"7":{name:"entity.name.variable.local.cs"}},end:/(?=;)/dgv,patterns:[{match:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,name:"entity.name.variable.local.cs"},{include:"#punctuation-comma"},{include:"#comment"},{include:"#variable-initializer"}]},"local-declaration":{patterns:[{include:"#local-constant-declaration"},{include:"#local-variable-declaration"},{include:"#local-function-declaration"},{include:"#local-tuple-var-deconstruction"}]},"local-function-declaration":{begin:/*@__PURE__*/ new EmulatedRegExp("\\b((?:(?:async|unsafe|static|extern)\\p{space}+)*)(?<type_name>(?:ref\\p{space}+(?:readonly\\p{space}+)?)?(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?)?(?:\\p{space}*\\[\\p{space}*(?:,\\p{space}*)*\\](?:\\p{space}*\\?)?)*)\\p{space}+((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*))\\p{space}*(<[^\\<\\>]+>)?\\p{space}*(?=\\()","dgv",{"hiddenCaptures":[5,7,8,9,12],"transfers":[[3,[5,8,12]],[4,[7]],[6,[9]]]}),beginCaptures:{"1":{patterns:[{include:"#storage-modifier"}]},"2":{patterns:[{include:"#type"}]},"7":{name:"entity.name.function.cs"},"8":{patterns:[{include:"#type-parameter-list"}]}},end:/(?<=\})|(?=;)/dgv,patterns:[{include:"#comment"},{include:"#parenthesized-parameter-list"},{include:"#generic-constraints"},{include:"#expression-body"},{include:"#block"}]},"local-tuple-var-deconstruction":{begin:/\b(var)\b\p{space}*(?<tuple>\((?:[^\(\)]|(?:\((?:[^\(\)]|(?:\((?:[^\(\)]|(?:\((?:[^\(\)]|(?:\((?:[^\(\)]|(?:))+\)))+\)))+\)))+\)))+\))\p{space}*(?=[\)\;\=])/dgv,beginCaptures:{"1":{name:"storage.type.var.cs"},"2":{patterns:[{include:"#tuple-declaration-deconstruction-element-list"}]}},end:/(?=[\)\;])/dgv,patterns:[{include:"#comment"},{include:"#variable-initializer"}]},"local-variable-declaration":{begin:/*@__PURE__*/ new EmulatedRegExp("(?:(?:\\b(ref)\\p{space}+(?:\\b(readonly)\\p{space}+)?)?\\b(var)\\b|(?<type_name>(?:ref\\p{space}+(?:readonly\\p{space}+)?)?(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*[\\*\\?]\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*))\\p{space}+((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*))\\p{space}*(?!=>)(?=[\\)\\,\\;\\=])","dgv",{"hiddenCaptures":[7,9,10,11,14],"transfers":[[5,[7,10,14]],[6,[9]],[8,[11]]]}),beginCaptures:{"1":{name:"storage.modifier.ref.cs"},"2":{name:"storage.modifier.readonly.cs"},"3":{name:"storage.type.var.cs"},"4":{patterns:[{include:"#type"}]},"9":{name:"entity.name.variable.local.cs"}},end:/(?=[\)\;\}])/dgv,patterns:[{match:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,name:"entity.name.variable.local.cs"},{include:"#punctuation-comma"},{include:"#comment"},{include:"#variable-initializer"}]},"lock-statement":{begin:/\b(lock)\b/dgv,beginCaptures:{"1":{name:"keyword.control.context.lock.cs"}},end:/(?<=\))|(?=[\;\}])/dgv,patterns:[{include:"#intrusive"},{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#intrusive"},{include:"#expression"}]}]},"member-access-expression":{patterns:[{captures:{"1":{name:"keyword.operator.null-conditional.cs"},"2":{name:"punctuation.accessor.cs"},"3":{name:"punctuation.accessor.pointer.cs"},"4":{name:"variable.other.object.property.cs"}},match:/(?:(?:(\?)\p{space}*)?(\.)\p{space}*|(->)\p{space}*)(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\p{space}*(?![\(_\p{Alpha}\p{Nd}]|(\?)?\[|<)/dgv},{captures:{"1":{name:"punctuation.accessor.cs"},"2":{name:"variable.other.object.cs"},"3":{patterns:[{include:"#type-arguments"}]}},match:/*@__PURE__*/ new EmulatedRegExp("(\\.)?\\p{space}*(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)(?<type_params>\\p{space}*<([^\\<\\>]|(?:\\p{space}*<([^\\<\\>]|(?:\\p{space}*<([^\\<\\>]|(?:\\p{space}*<([^\\<\\>]|(?:\\p{space}*<([^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)(?=(\\p{space}*\\?)?\\p{space}*\\.\\p{space}*@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)","dgv",{"hiddenCaptures":[5,6,7,8]})},{captures:{"1":{name:"variable.other.object.cs"}},match:/(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)(?=\p{space}*(?:(?:\?\p{space}*)?\.|->)\p{space}*@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)/dgv}]},"method-declaration":{begin:/*@__PURE__*/ new EmulatedRegExp("(?<return_type>(?<type_name>(?:ref\\p{space}+(?:readonly\\p{space}+)?)?(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}+)(?<interface_name>((?:ref\\p{space}+(?:readonly\\p{space}+)?)?(?:(?:(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}*\\.\\p{space}*)?((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*))\\p{space}*(<([^\\<\\>]+)>)?\\p{space}*(?=\\()","dgv",{"hiddenCaptures":[5,7,8,9,12,13,14,15,16,17,18,19,20,22],"transfers":[[3,[5,8,13,15,18,22]],[4,[7,14,17]],[6,[9,16,19]],[2,[12]],[10,[20]]]}),beginCaptures:{"1":{patterns:[{include:"#type"}]},"7":{patterns:[{include:"#type"},{include:"#punctuation-accessor"}]},"8":{name:"entity.name.function.cs"},"9":{patterns:[{include:"#type-parameter-list"}]}},end:/(?<=\})|(?=;)/dgv,patterns:[{include:"#comment"},{include:"#parenthesized-parameter-list"},{include:"#generic-constraints"},{include:"#expression-body"},{include:"#block"}]},"named-argument":{begin:/(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\p{space}*(:)/dgv,beginCaptures:{"1":{name:"entity.name.variable.parameter.cs"},"2":{name:"punctuation.separator.colon.cs"}},end:/(?=([\]\)\,]))/dgv,patterns:[{include:"#argument"}]},"namespace-declaration":{begin:/\b(namespace)\p{space}+/dgv,beginCaptures:{"1":{name:"storage.type.namespace.cs"}},end:/(?<=\})|(?=;)/dgv,patterns:[{include:"#comment"},{match:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,name:"entity.name.type.namespace.cs"},{include:"#punctuation-accessor"},{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.curlybrace.open.cs"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.curlybrace.close.cs"}},patterns:[{include:"#declarations"},{include:"#using-directive"},{include:"#punctuation-semicolon"}]}]},"null-literal":{match:/(?<!\.)\bnull\b/dgv,name:"constant.language.null.cs"},"numeric-literal":{captures:{"0":{patterns:[{begin:/(?=[^\n])/dgv,end:/(?=\n?$)/dgv,patterns:[{captures:{"2":{name:"constant.numeric.decimal.cs",patterns:[{match:/(?<=\p{AHex})_(?=\p{AHex})/dgv,name:"constant.numeric.other.separator.thousands.cs"}]},"3":{name:"constant.numeric.other.separator.thousands.cs"},"4":{name:"constant.numeric.other.separator.decimals.cs"},"5":{name:"constant.numeric.decimal.cs",patterns:[{match:/(?<=\p{AHex})_(?=\p{AHex})/dgv,name:"constant.numeric.other.separator.thousands.cs"}]},"6":{name:"constant.numeric.other.separator.thousands.cs"},"8":{name:"constant.numeric.other.exponent.cs"},"9":{name:"keyword.operator.arithmetic.cs"},"10":{name:"keyword.operator.arithmetic.cs"},"11":{name:"constant.numeric.decimal.cs",patterns:[{match:/(?<=\p{AHex})_(?=\p{AHex})/dgv,name:"constant.numeric.other.separator.thousands.cs"}]},"12":{name:"constant.numeric.other.suffix.cs"}},match:/((?=[\.0-9])(?!0[BXbx]))([0-9](?:[0-9]|((?<=\p{AHex})_(?=\p{AHex})))*)?((?<=[0-9])|\.(?=[0-9]))([0-9](?:[0-9]|((?<=\p{AHex})_(?=\p{AHex})))*)?((?<!_)([Ee])(\+?)(-?)([0-9](?:[0-9]|(?<=\p{AHex})_(?=\p{AHex}))*))?([DFMdfm](?![\p{L}\p{M}\p{N}\p{Pc}]))?(?=\n?$)/dgvy},{captures:{"1":{name:"constant.numeric.other.preffix.binary.cs"},"2":{name:"constant.numeric.binary.cs",patterns:[{match:/(?<=\p{AHex})_(?=\p{AHex})/dgv,name:"constant.numeric.other.separator.thousands.cs"}]},"3":{name:"constant.numeric.other.separator.thousands.cs"},"4":{name:"constant.numeric.other.suffix.cs"}},match:/(0[Bb])([01_](?:[01_]|((?<=\p{AHex})_(?=\p{AHex})))*)((?:(?:(?:(?:(?:[Uu]|[Uu]l)|[Uu]L)|l[Uu]?)|L[Uu]?)|[DFMdfm])(?![\p{L}\p{M}\p{N}\p{Pc}]))?(?=\n?$)/dgvy},{captures:{"1":{name:"constant.numeric.other.preffix.hex.cs"},"2":{name:"constant.numeric.hex.cs",patterns:[{match:/(?<=\p{AHex})_(?=\p{AHex})/dgv,name:"constant.numeric.other.separator.thousands.cs"}]},"3":{name:"constant.numeric.other.separator.thousands.cs"},"4":{name:"constant.numeric.other.suffix.cs"}},match:/(0[Xx])(\p{AHex}(?:\p{AHex}|((?<=\p{AHex})_(?=\p{AHex})))*)((?:(?:(?:(?:(?:[Uu]|[Uu]l)|[Uu]L)|l[Uu]?)|L[Uu]?)|[DFMdfm])(?![\p{L}\p{M}\p{N}\p{Pc}]))?(?=\n?$)/dgvy},{captures:{"2":{name:"constant.numeric.decimal.cs",patterns:[{match:/(?<=\p{AHex})_(?=\p{AHex})/dgv,name:"constant.numeric.other.separator.thousands.cs"}]},"3":{name:"constant.numeric.other.separator.thousands.cs"},"5":{name:"constant.numeric.other.exponent.cs"},"6":{name:"keyword.operator.arithmetic.cs"},"7":{name:"keyword.operator.arithmetic.cs"},"8":{name:"constant.numeric.decimal.cs",patterns:[{match:/(?<=\p{AHex})_(?=\p{AHex})/dgv,name:"constant.numeric.other.separator.thousands.cs"}]},"9":{name:"constant.numeric.other.suffix.cs"}},match:/((?=[\.0-9])(?!0[BXbx]))([0-9](?:[0-9]|((?<=\p{AHex})_(?=\p{AHex})))*)((?<!_)([Ee])(\+?)(-?)([0-9](?:[0-9]|(?<=\p{AHex})_(?=\p{AHex}))*))?((?:(?:(?:(?:(?:[Uu]|[Uu]l)|[Uu]L)|l[Uu]?)|L[Uu]?)|[DFMdfm])(?![\p{L}\p{M}\p{N}\p{Pc}]))?(?=\n?$)/dgvy},{match:/(?:[0-9A-Z_a-z]|(?<=[Ee])[\-\+]|\.\p{Nd})+/dgv,name:"invalid.illegal.constant.numeric.cs"}]}]}},match:/(?<![\p{L}\p{M}\p{N}\p{Pc}])\.?\p{Nd}(?:[0-9A-Z_a-z]|(?<=[Ee])[\-\+]|\.\p{Nd})*/dgv},"object-creation-expression":{patterns:[{include:"#object-creation-expression-with-parameters"},{include:"#object-creation-expression-with-no-parameters"}]},"object-creation-expression-with-no-parameters":{captures:{"1":{name:"keyword.operator.expression.new.cs"},"2":{patterns:[{include:"#type"}]}},match:/*@__PURE__*/ new EmulatedRegExp("(new)\\p{space}+(?<type_name>(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}*(?=\\{|//|/\\*|(?=\\n?$))","dgv",{"hiddenCaptures":[5,7,8,9],"transfers":[[3,[5,8]],[4,[7]],[6,[9]]]})},"object-creation-expression-with-parameters":{begin:/*@__PURE__*/ new EmulatedRegExp("(new)(?:\\p{space}+(?<type_name>(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*))?\\p{space}*(?=\\()","dgv",{"hiddenCaptures":[5,7,8,9],"transfers":[[3,[5,8]],[4,[7]],[6,[9]]]}),beginCaptures:{"1":{name:"keyword.operator.expression.new.cs"},"2":{patterns:[{include:"#type"}]}},end:/(?<=\))/dgv,patterns:[{include:"#argument-list"}]},"operator-assignment":{match:/(?<![\!\=])(=)(?!=)/dgv,name:"keyword.operator.assignment.cs"},"operator-declaration":{begin:/*@__PURE__*/ new EmulatedRegExp("(?<type_name>(?:ref\\p{space}+(?:readonly\\p{space}+)?)?(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}*\\b(?<operator_keyword>operator)\\b\\p{space}*(?<operator>[\\-\\!\\%\\&\\*\\+\\/\\<\\=\\>\\^\\|\\~]+|true|false)\\p{space}*(?=\\()","dgv",{"hiddenCaptures":[4,6,7,8],"transfers":[[2,[4,7]],[3,[6]],[5,[8]]]}),beginCaptures:{"1":{patterns:[{include:"#type"}]},"6":{name:"storage.type.operator.cs"},"7":{name:"entity.name.function.cs"}},end:/(?<=\})|(?=;)/dgv,patterns:[{include:"#comment"},{include:"#parenthesized-parameter-list"},{include:"#expression-body"},{include:"#block"}]},"orderby-clause":{begin:/\b(orderby)\b\p{space}*/dgv,beginCaptures:{"1":{name:"keyword.operator.expression.query.orderby.cs"}},end:/(?=[\)\;])/dgv,patterns:[{include:"#ordering-direction"},{include:"#query-body"},{include:"#expression"},{include:"#punctuation-comma"}]},"ordering-direction":{captures:{"1":{name:"keyword.operator.expression.query.$1.cs"}},match:/\b((?:a|de)scending)\b/dgv},parameter:{captures:{"1":{name:"storage.modifier.$1.cs"},"2":{patterns:[{include:"#type"}]},"7":{name:"entity.name.variable.parameter.cs"}},match:/*@__PURE__*/ new EmulatedRegExp("(?:\\b(ref|params|out|in|this)\\b\\p{space}+)?(?<type_name>(?:ref\\p{space}+)?(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}+((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*))","dgv",{"hiddenCaptures":[5,7,8,9,12],"transfers":[[3,[5,8,12]],[4,[7]],[6,[9]]]})},"parenthesized-expression":{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#expression"}]},"parenthesized-parameter-list":{begin:/(\()/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/(\))/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#comment"},{include:"#attribute-section"},{include:"#parameter"},{include:"#punctuation-comma"},{include:"#variable-initializer"}]},pattern:{patterns:[{include:"#intrusive"},{include:"#combinator-pattern"},{include:"#discard-pattern"},{include:"#constant-pattern"},{include:"#relational-pattern"},{include:"#var-pattern"},{include:"#type-pattern"},{include:"#positional-pattern"},{include:"#property-pattern"},{include:"#list-pattern"},{include:"#slice-pattern"}]},"positional-pattern":{begin:/(?=\()/dgv,end:/(?=[\]\&\)\,\:\;\=\?\^\|\}]|!=|\b(and|or|when)\b)/dgv,patterns:[{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#subpattern"},{include:"#punctuation-comma"}]},{begin:/(?<=\))/dgv,end:/(?=[\]\&\)\,\:\;\=\?\^\|\}]|!=|\b(and|or|when)\b)/dgv,patterns:[{include:"#intrusive"},{include:"#property-pattern"},{include:"#simple-designation-pattern"}]}]},preprocessor:{begin:/^\p{space}*(#)\p{space}*/dgv,beginCaptures:{"1":{name:"punctuation.separator.hash.cs"}},end:/(?<=(?=\n?$))/dgv,name:"meta.preprocessor.cs",patterns:[{include:"#comment"},{include:"#preprocessor-define-or-undef"},{include:"#preprocessor-if-or-elif"},{include:"#preprocessor-else-or-endif"},{include:"#preprocessor-warning-or-error"},{include:"#preprocessor-region"},{include:"#preprocessor-endregion"},{include:"#preprocessor-load"},{include:"#preprocessor-r"},{include:"#preprocessor-line"},{include:"#preprocessor-pragma-warning"},{include:"#preprocessor-pragma-checksum"},{include:"#preprocessor-app-directive"}]},"preprocessor-app-directive":{begin:/\p{space}*(:)\p{space}*/dgv,beginCaptures:{"1":{name:"punctuation.separator.colon.cs"}},end:/(?=(?=\n?$))/dgv,patterns:[{include:"#preprocessor-app-directive-package"},{include:"#preprocessor-app-directive-property"},{include:"#preprocessor-app-directive-project"},{include:"#preprocessor-app-directive-sdk"},{include:"#preprocessor-app-directive-generic"}]},"preprocessor-app-directive-generic":{captures:{"1":{name:"string.unquoted.preprocessor.message.cs"}},match:/\b([^\n]*)?\p{space}*/dgv},"preprocessor-app-directive-package":{captures:{"1":{name:"keyword.preprocessor.package.cs"},"2":{patterns:[{include:"#preprocessor-app-directive-package-name"}]},"3":{name:"punctuation.separator.at.cs"},"4":{name:"string.unquoted.preprocessor.message.cs"}},match:/\b(package)\b\p{space}*([_\p{Alpha}][\._\p{Alpha}\p{Nd}]*)?(@)?([^\n]*)?\p{space}*/dgv},"preprocessor-app-directive-package-name":{patterns:[{captures:{"1":{name:"punctuation.dot.cs"},"2":{name:"entity.name.variable.preprocessor.symbol.cs"}},match:/(\.)([_\p{Alpha}][_\p{Alpha}\p{Nd}]*)/dgv},{match:/[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,name:"entity.name.variable.preprocessor.symbol.cs"}]},"preprocessor-app-directive-project":{captures:{"1":{name:"keyword.preprocessor.project.cs"},"2":{name:"string.unquoted.preprocessor.message.cs"}},match:/\b(project)\b\p{space}*([^\n]*)?\p{space}*/dgv},"preprocessor-app-directive-property":{captures:{"1":{name:"keyword.preprocessor.property.cs"},"2":{name:"entity.name.variable.preprocessor.symbol.cs"},"3":{name:"punctuation.separator.equals.cs"},"4":{name:"string.unquoted.preprocessor.message.cs"}},match:/\b(property)\b\p{space}*([_\p{Alpha}][_\p{Alpha}\p{Nd}]*)?(=)?([^\n]*)?\p{space}*/dgv},"preprocessor-app-directive-sdk":{captures:{"1":{name:"keyword.preprocessor.sdk.cs"},"2":{patterns:[{include:"#preprocessor-app-directive-package-name"}]},"3":{name:"punctuation.separator.at.cs"},"4":{name:"string.unquoted.preprocessor.message.cs"}},match:/\b(sdk)\b\p{space}*([_\p{Alpha}][\._\p{Alpha}\p{Nd}]*)?(@)?([^\n]*)?\p{space}*/dgv},"preprocessor-define-or-undef":{captures:{"1":{name:"keyword.preprocessor.define.cs"},"2":{name:"keyword.preprocessor.undef.cs"},"3":{name:"entity.name.variable.preprocessor.symbol.cs"}},match:/\b(?:(define)|(undef))\b\p{space}*\b([_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\b/dgv},"preprocessor-else-or-endif":{captures:{"1":{name:"keyword.preprocessor.else.cs"},"2":{name:"keyword.preprocessor.endif.cs"}},match:/\b(?:(else)|(endif))\b/dgv},"preprocessor-endregion":{captures:{"1":{name:"keyword.preprocessor.endregion.cs"}},match:/\b(endregion)\b/dgv},"preprocessor-expression":{patterns:[{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#preprocessor-expression"}]},{captures:{"1":{name:"constant.language.boolean.true.cs"},"2":{name:"constant.language.boolean.false.cs"},"3":{name:"entity.name.variable.preprocessor.symbol.cs"}},match:/\b(?:(true)|(false)|([_\p{Alpha}][_\p{Alpha}\p{Nd}]*))\b/dgv},{captures:{"1":{name:"keyword.operator.comparison.cs"},"2":{name:"keyword.operator.logical.cs"}},match:/([\!\=]=)|(!|&&|\|\|)/dgv}]},"preprocessor-if-or-elif":{begin:/\b(?:(if)|(elif))\b/dgv,beginCaptures:{"1":{name:"keyword.preprocessor.if.cs"},"2":{name:"keyword.preprocessor.elif.cs"}},end:/(?=(?=\n?$))/dgv,patterns:[{include:"#comment"},{include:"#preprocessor-expression"}]},"preprocessor-line":{begin:/\b(line)\b/dgv,beginCaptures:{"1":{name:"keyword.preprocessor.line.cs"}},end:/(?=(?=\n?$))/dgv,patterns:[{captures:{"1":{name:"keyword.preprocessor.default.cs"},"2":{name:"keyword.preprocessor.hidden.cs"}},match:/\b(default|hidden)/dgv},{captures:{"0":{name:"constant.numeric.decimal.cs"}},match:/[0-9]+/dgv},{captures:{"0":{name:"string.quoted.double.cs"}},match:/"[^"]*"/dgv}]},"preprocessor-load":{begin:/\b(load)\b/dgv,beginCaptures:{"1":{name:"keyword.preprocessor.load.cs"}},end:/(?=(?=\n?$))/dgv,patterns:[{captures:{"0":{name:"string.quoted.double.cs"}},match:/"[^"]*"/dgv}]},"preprocessor-pragma-checksum":{captures:{"1":{name:"keyword.preprocessor.pragma.cs"},"2":{name:"keyword.preprocessor.checksum.cs"},"3":{name:"string.quoted.double.cs"},"4":{name:"string.quoted.double.cs"},"5":{name:"string.quoted.double.cs"}},match:/\b(pragma)\b\p{space}*\b(checksum)\b\p{space}*("[^"]*")\p{space}*("[^"]*")\p{space}*("[^"]*")/dgv},"preprocessor-pragma-warning":{captures:{"1":{name:"keyword.preprocessor.pragma.cs"},"2":{name:"keyword.preprocessor.warning.cs"},"3":{name:"keyword.preprocessor.disable.cs"},"4":{name:"keyword.preprocessor.restore.cs"},"5":{patterns:[{captures:{"0":{name:"constant.numeric.decimal.cs"}},match:/[0-9]+/dgv},{include:"#punctuation-comma"}]}},match:/\b(pragma)\b\p{space}*\b(warning)\b\p{space}*\b(?:(disable)|(restore))\b(\p{space}*[0-9]+(?:\p{space}*,\p{space}*[0-9]+)?)?/dgv},"preprocessor-r":{begin:/\b(r)\b/dgv,beginCaptures:{"1":{name:"keyword.preprocessor.r.cs"}},end:/(?=(?=\n?$))/dgv,patterns:[{captures:{"0":{name:"string.quoted.double.cs"}},match:/"[^"]*"/dgv}]},"preprocessor-region":{captures:{"1":{name:"keyword.preprocessor.region.cs"},"2":{name:"string.unquoted.preprocessor.message.cs"}},match:/\b(region)\b\p{space}*([^\n]*)(?=(?=\n?$))/dgv},"preprocessor-warning-or-error":{captures:{"1":{name:"keyword.preprocessor.warning.cs"},"2":{name:"keyword.preprocessor.error.cs"},"3":{name:"string.unquoted.preprocessor.message.cs"}},match:/\b(?:(warning)|(error))\b\p{space}*([^\n]*)(?=(?=\n?$))/dgv},"property-accessors":{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.curlybrace.open.cs"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.curlybrace.close.cs"}},patterns:[{include:"#comment"},{include:"#attribute-section"},{match:/\b(private|protected|internal)\b/dgv,name:"storage.modifier.$1.cs"},{begin:/\b(get)\b\p{space}*(?=[\;\{]|=>|\/\/|\/\*|(?=\n?$))/dgv,beginCaptures:{"1":{name:"storage.type.accessor.$1.cs"}},end:/(?<=[\;\}])|(?=\})/dgv,patterns:[{include:"#accessor-getter"}]},{begin:/\b(set|init)\b\p{space}*(?=[\;\{]|=>|\/\/|\/\*|(?=\n?$))/dgv,beginCaptures:{"1":{name:"storage.type.accessor.$1.cs"}},end:/(?<=[\;\}])|(?=\})/dgv,patterns:[{include:"#accessor-setter"}]}]},"property-declaration":{begin:/*@__PURE__*/ new EmulatedRegExp("(?![\\p{Alpha}\\p{M}\\p{Nd}\\p{Pc}\\p{space}]*\\b(?:class|interface|struct|enum|event)\\b)(?<return_type>(?<type_name>(?:ref\\p{space}+(?:readonly\\p{space}+)?)?(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}+)(?<interface_name>((?:ref\\p{space}+(?:readonly\\p{space}+)?)?(?:(?:(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)\\p{space}*\\.\\p{space}*)?(?<property_name>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*))\\p{space}*(?=\\{|=>|//|/\\*|(?=\\n?$))","dgv",{"hiddenCaptures":[5,7,8,9,12,13,14,15,16,17,18,19,20,22],"transfers":[[3,[5,8,13,15,18,22]],[4,[7,14,17]],[6,[9,16,19]],[2,[12]],[10,[20]]]}),beginCaptures:{"1":{patterns:[{include:"#type"}]},"7":{patterns:[{include:"#type"},{include:"#punctuation-accessor"}]},"8":{name:"entity.name.variable.property.cs"}},end:/(?<=\})|(?=;)/dgv,patterns:[{include:"#comment"},{include:"#property-accessors"},{include:"#accessor-getter-expression"},{include:"#variable-initializer"},{include:"#class-or-struct-members"}]},"property-pattern":{begin:/(?=\{)/dgv,end:/(?=[\]\&\)\,\:\;\=\?\^\|\}]|!=|\b(and|or|when)\b)/dgv,patterns:[{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.curlybrace.open.cs"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.curlybrace.close.cs"}},patterns:[{include:"#subpattern"},{include:"#punctuation-comma"}]},{begin:/(?<=\})/dgv,end:/(?=[\]\&\)\,\:\;\=\?\^\|\}]|!=|\b(and|or|when)\b)/dgv,patterns:[{include:"#intrusive"},{include:"#simple-designation-pattern"}]}]},"punctuation-accessor":{match:/\./dgv,name:"punctuation.accessor.cs"},"punctuation-comma":{match:/,/dgv,name:"punctuation.separator.comma.cs"},"punctuation-semicolon":{match:/;/dgv,name:"punctuation.terminator.statement.cs"},"query-body":{patterns:[{include:"#let-clause"},{include:"#where-clause"},{include:"#join-clause"},{include:"#orderby-clause"},{include:"#select-clause"},{include:"#group-clause"}]},"query-expression":{begin:/*@__PURE__*/ new EmulatedRegExp("\\b(from)\\b\\p{space}*(?<type_name>(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)?\\p{space}+((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*))\\b\\p{space}*\\b(in)\\b\\p{space}*","dgv",{"hiddenCaptures":[5,7,8,9,12],"transfers":[[3,[5,8,12]],[4,[7]],[6,[9]]]}),beginCaptures:{"1":{name:"keyword.operator.expression.query.from.cs"},"2":{patterns:[{include:"#type"}]},"7":{name:"entity.name.variable.range-variable.cs"},"8":{name:"keyword.operator.expression.query.in.cs"}},end:/(?=[\)\;])/dgv,patterns:[{include:"#query-body"},{include:"#expression"}]},"raw-interpolated-string":{patterns:[{include:"#raw-interpolated-string-five-or-more-quote-one-or-more-interpolation"},{include:"#raw-interpolated-string-three-or-more-quote-three-or-more-interpolation"},{include:"#raw-interpolated-string-quadruple-quote-double-interpolation"},{include:"#raw-interpolated-string-quadruple-quote-single-interpolation"},{include:"#raw-interpolated-string-triple-quote-double-interpolation"},{include:"#raw-interpolated-string-triple-quote-single-interpolation"}]},"raw-interpolated-string-five-or-more-quote-one-or-more-interpolation":{begin:/\$+"""""+/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.cs"}},end:/"""""+/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.cs"}},name:"string.quoted.double.cs"},"raw-interpolated-string-quadruple-quote-double-interpolation":{begin:/\$\$""""/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.cs"}},end:/""""/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.cs"}},name:"string.quoted.double.cs",patterns:[{include:"#double-raw-interpolation"}]},"raw-interpolated-string-quadruple-quote-single-interpolation":{begin:/\$""""/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.cs"}},end:/""""/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.cs"}},name:"string.quoted.double.cs",patterns:[{include:"#raw-interpolation"}]},"raw-interpolated-string-three-or-more-quote-three-or-more-interpolation":{begin:/\$\$\$+"""+/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.cs"}},end:/"""+/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.cs"}},name:"string.quoted.double.cs"},"raw-interpolated-string-triple-quote-double-interpolation":{begin:/\$\$"""/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.cs"}},end:/"""/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.cs"}},name:"string.quoted.double.cs",patterns:[{include:"#double-raw-interpolation"}]},"raw-interpolated-string-triple-quote-single-interpolation":{begin:/\$"""/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.cs"}},end:/"""/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.cs"}},name:"string.quoted.double.cs",patterns:[{include:"#raw-interpolation"}]},"raw-interpolation":{begin:/(?<=[^\{]|^)(\{*)(\{)(?=[^\{])/dgv,beginCaptures:{"1":{name:"string.quoted.double.cs"},"2":{name:"punctuation.definition.interpolation.begin.cs"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.definition.interpolation.end.cs"}},name:"meta.embedded.interpolation.cs",patterns:[{include:"#expression"}]},"raw-string-literal":{patterns:[{include:"#raw-string-literal-more"},{include:"#raw-string-literal-quadruple"},{include:"#raw-string-literal-triple"}]},"raw-string-literal-more":{begin:/"""""+/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.cs"}},end:/"""""+/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.cs"}},name:"string.quoted.double.cs"},"raw-string-literal-quadruple":{begin:/""""/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.cs"}},end:/""""/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.cs"}},name:"string.quoted.double.cs"},"raw-string-literal-triple":{begin:/"""/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.cs"}},end:/"""/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.cs"}},name:"string.quoted.double.cs"},"readonly-modifier":{match:/\breadonly\b/dgv,name:"storage.modifier.readonly.cs"},"record-declaration":{begin:/(?=\brecord\b)/dgv,end:/(?<=\})|(?=;)/dgv,patterns:[{begin:/(record)\b\p{space}+(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)/dgv,beginCaptures:{"1":{name:"storage.type.record.cs"},"2":{name:"entity.name.type.class.cs"}},end:/(?=\{)|(?=;)/dgv,patterns:[{include:"#comment"},{include:"#type-parameter-list"},{include:"#parenthesized-parameter-list"},{include:"#base-types"},{include:"#generic-constraints"}]},{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.curlybrace.open.cs"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.curlybrace.close.cs"}},patterns:[{include:"#class-or-struct-members"}]},{include:"#preprocessor"},{include:"#comment"}]},"ref-modifier":{match:/\bref\b/dgv,name:"storage.modifier.ref.cs"},"relational-pattern":{begin:/<=?|>=?/dgv,beginCaptures:{"0":{name:"keyword.operator.relational.cs"}},end:/(?=[\]\&\)\,\:\;\=\?\^\|\}]|!=|\b(and|or|when)\b)/dgv,patterns:[{include:"#expression"}]},"return-statement":{begin:/(?<!\.)\b(return)\b/dgv,beginCaptures:{"1":{name:"keyword.control.flow.return.cs"}},end:/(?=[\;\}])/dgv,patterns:[{include:"#ref-modifier"},{include:"#expression"}]},"script-top-level":{patterns:[{include:"#statement"},{include:"#method-declaration"},{include:"#punctuation-semicolon"}]},"select-clause":{begin:/\b(select)\b\p{space}*/dgv,beginCaptures:{"1":{name:"keyword.operator.expression.query.select.cs"}},end:/(?=[\)\;])/dgv,patterns:[{include:"#query-body"},{include:"#expression"}]},"simple-designation-pattern":{patterns:[{include:"#discard-pattern"},{match:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,name:"entity.name.variable.local.cs"}]},"slice-pattern":{match:/\.\./dgv,name:"keyword.operator.range.cs"},statement:{patterns:[{include:"#preprocessor"},{include:"#comment"},{include:"#while-statement"},{include:"#do-statement"},{include:"#for-statement"},{include:"#foreach-statement"},{include:"#if-statement"},{include:"#else-part"},{include:"#goto-statement"},{include:"#return-statement"},{include:"#break-or-continue-statement"},{include:"#throw-statement"},{include:"#yield-statement"},{include:"#await-statement"},{include:"#try-statement"},{include:"#expression-operator-expression"},{include:"#context-control-statement"},{include:"#context-control-paren-statement"},{include:"#labeled-statement"},{include:"#object-creation-expression"},{include:"#array-creation-expression"},{include:"#anonymous-object-creation-expression"},{include:"#local-declaration"},{include:"#block"},{include:"#expression"},{include:"#punctuation-semicolon"}]},"storage-modifier":{match:/(?<!\.)\b(new|public|protected|internal|private|abstract|virtual|override|sealed|static|partial|readonly|volatile|const|extern|async|unsafe|ref|required|file)\b/dgv,name:"storage.modifier.$1.cs"},"string-character-escape":{match:/\\(x\p{AHex}{1,4}|U\p{AHex}{8}|u\p{AHex}{4}|[^\n])/dgv,name:"constant.character.escape.cs"},"string-literal":{begin:/(?<!@)"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.cs"}},end:/(")|([^\n\\])(?=\n?$)/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.cs"},"2":{name:"invalid.illegal.newline.cs"}},name:"string.quoted.double.cs",patterns:[{include:"#string-character-escape"}]},"struct-declaration":{begin:/(?=(\brecord\b\p{space}+)?\bstruct\b)/dgv,end:/(?<=\})|(?=;)/dgv,patterns:[{begin:/(\b(record)\b\p{space}+)?(struct)\b\p{space}+(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)/dgv,beginCaptures:{"2":{name:"storage.type.record.cs"},"3":{name:"storage.type.struct.cs"},"4":{name:"entity.name.type.struct.cs"}},end:/(?=\{)|(?=;)/dgv,patterns:[{include:"#comment"},{include:"#type-parameter-list"},{include:"#parenthesized-parameter-list"},{include:"#base-types"},{include:"#generic-constraints"}]},{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.curlybrace.open.cs"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.curlybrace.close.cs"}},patterns:[{include:"#class-or-struct-members"}]},{include:"#preprocessor"},{include:"#comment"}]},subpattern:{patterns:[{captures:{"1":{patterns:[{match:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,name:"variable.other.object.property.cs"},{include:"#punctuation-accessor"}]},"2":{name:"punctuation.separator.colon.cs"}},match:/(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*(?:\p{space}*\.\p{space}*@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)*)\p{space}*(:)/dgv},{include:"#pattern"}]},"switch-expression":{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.curlybrace.open.cs"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.curlybrace.close.cs"}},patterns:[{include:"#punctuation-comma"},{begin:/=>/dgv,beginCaptures:{"0":{name:"keyword.operator.arrow.cs"}},end:/(?=[\,\}])/dgv,patterns:[{include:"#expression"}]},{begin:/\b(when)\b/dgv,beginCaptures:{"1":{name:"keyword.control.conditional.when.cs"}},end:/(?==>|[\,\}])/dgv,patterns:[{include:"#case-guard"}]},{begin:/(?!\p{space})/dgv,end:/(?=\bwhen\b|=>|[\,\}])/dgv,patterns:[{include:"#pattern"}]}]},"switch-label":{begin:/\b(case|default)\b/dgv,beginCaptures:{"1":{name:"keyword.control.conditional.$1.cs"}},end:/(:)|(?=\})/dgv,endCaptures:{"1":{name:"punctuation.separator.colon.cs"}},patterns:[{begin:/\b(when)\b/dgv,beginCaptures:{"1":{name:"keyword.control.conditional.when.cs"}},end:/(?=[\:\}])/dgv,patterns:[{include:"#case-guard"}]},{begin:/(?!\p{space})/dgv,end:/(?=\bwhen\b|[\:\}])/dgv,patterns:[{include:"#pattern"}]}]},"switch-statement":{patterns:[{include:"#intrusive"},{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#expression"}]},{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.curlybrace.open.cs"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.curlybrace.close.cs"}},patterns:[{include:"#switch-label"},{include:"#statement"}]}]},"switch-statement-or-expression":{begin:/(?<!\.)\b(switch)\b/dgv,beginCaptures:{"1":{name:"keyword.control.conditional.switch.cs"}},end:/(?<=\})|(?=\})/dgv,patterns:[{include:"#intrusive"},{begin:/(?=\()/dgv,end:/(?<=\})|(?=\})/dgv,patterns:[{include:"#switch-statement"}]},{begin:/(?=\{)/dgv,end:/(?<=\})|(?=\})/dgv,patterns:[{include:"#switch-expression"}]}]},"throw-expression":{captures:{"1":{name:"keyword.control.flow.throw.cs"}},match:/\b(throw)\b/dgv},"throw-statement":{begin:/(?<!\.)\b(throw)\b/dgv,beginCaptures:{"1":{name:"keyword.control.flow.throw.cs"}},end:/(?=[\;\}])/dgv,patterns:[{include:"#expression"}]},"try-block":{begin:/(?<!\.)\b(try)\b/dgv,beginCaptures:{"1":{name:"keyword.control.exception.try.cs"}},end:/(?<=\})/dgv,patterns:[{include:"#comment"},{include:"#block"}]},"try-statement":{patterns:[{include:"#try-block"},{include:"#catch-clause"},{include:"#finally-clause"}]},"tuple-declaration-deconstruction-element-list":{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#comment"},{include:"#tuple-declaration-deconstruction-element-list"},{include:"#declaration-expression-tuple"},{include:"#punctuation-comma"},{captures:{"1":{name:"entity.name.variable.tuple-element.cs"}},match:/(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\b\p{space}*(?=[\)\,])/dgv}]},"tuple-deconstruction-assignment":{captures:{"1":{patterns:[{include:"#tuple-deconstruction-element-list"}]}},match:/(?<tuple>\p{space}*\((?:[^\(\)]|(?:\p{space}*\((?:[^\(\)]|(?:\p{space}*\((?:[^\(\)]|(?:\p{space}*\((?:[^\(\)]|(?:\p{space}*\((?:[^\(\)]|(?:))+\)))+\)))+\)))+\)))+\))\p{space}*(?!=[\=\>])(?==)/dgv},"tuple-deconstruction-element-list":{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#comment"},{include:"#tuple-deconstruction-element-list"},{include:"#declaration-expression-tuple"},{include:"#punctuation-comma"},{captures:{"1":{name:"variable.other.readwrite.cs"}},match:/(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\b\p{space}*(?=[\)\,])/dgv}]},"tuple-element":{captures:{"1":{patterns:[{include:"#type"}]},"6":{name:"entity.name.variable.tuple-element.cs"}},match:/*@__PURE__*/ new EmulatedRegExp("(?<type_name>(?:(?:(?<identifier>@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*::\\p{space}*)?(?<name_and_type_args>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?<type_args>\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?)(?:\\p{space}*\\.\\p{space}*((@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*)\\p{space}*(\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:\\p{space}*<(?:[^\\<\\>]|(?:))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*))+>\\p{space}*)?))*|(?<tuple>\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:\\p{space}*\\((?:[^\\(\\)]|(?:))+\\)))+\\)))+\\)))+\\)))+\\)))(?:\\p{space}*\\?\\p{space}*)?(?:\\p{space}*\\[(?:\\p{space}*,\\p{space}*)*\\]\\p{space}*\\??\\p{space}*)*)(?:(?<tuple_name>(@?[_\\p{Alpha}][_\\p{Alpha}\\p{Nd}]*))\\b)?","dgv",{"hiddenCaptures":[4,6,7,8,11],"transfers":[[2,[4,7,11]],[3,[6]],[5,[8]]]})},"tuple-literal":{begin:/(\()(?=[^\n]*[\,\:])/dgv,beginCaptures:{"1":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#comment"},{include:"#tuple-literal-element"},{include:"#expression"},{include:"#punctuation-comma"}]},"tuple-literal-element":{begin:/(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\p{space}*(?=:)/dgv,beginCaptures:{"1":{name:"entity.name.variable.tuple-element.cs"}},end:/(:)/dgv,endCaptures:{"0":{name:"punctuation.separator.colon.cs"}}},"tuple-type":{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#tuple-element"},{include:"#punctuation-comma"}]},type:{patterns:[{include:"#comment"},{include:"#ref-modifier"},{include:"#readonly-modifier"},{include:"#tuple-type"},{include:"#type-builtin"},{include:"#type-name"},{include:"#type-arguments"},{include:"#type-array-suffix"},{include:"#type-nullable-suffix"},{include:"#type-pointer-suffix"}]},"type-arguments":{begin:/</dgv,beginCaptures:{"0":{name:"punctuation.definition.typeparameters.begin.cs"}},end:/>/dgv,endCaptures:{"0":{name:"punctuation.definition.typeparameters.end.cs"}},patterns:[{include:"#type"},{include:"#punctuation-comma"}]},"type-array-suffix":{begin:/\[/dgv,beginCaptures:{"0":{name:"punctuation.squarebracket.open.cs"}},end:/\]/dgv,endCaptures:{"0":{name:"punctuation.squarebracket.close.cs"}},patterns:[{include:"#intrusive"},{include:"#punctuation-comma"}]},"type-builtin":{captures:{"1":{name:"keyword.type.$1.cs"}},match:/\b(bool|s?byte|u?short|n?u?int|u?long|float|double|decimal|char|string|object|void|dynamic)\b/dgv},"type-declarations":{patterns:[{include:"#preprocessor"},{include:"#comment"},{include:"#storage-modifier"},{include:"#class-declaration"},{include:"#delegate-declaration"},{include:"#enum-declaration"},{include:"#interface-declaration"},{include:"#struct-declaration"},{include:"#record-declaration"},{include:"#attribute-section"},{include:"#punctuation-semicolon"}]},"type-name":{patterns:[{captures:{"1":{name:"entity.name.type.alias.cs"},"2":{name:"punctuation.separator.coloncolon.cs"}},match:/(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\p{space}*(::)/dgv},{captures:{"1":{name:"entity.name.type.cs"},"2":{name:"punctuation.accessor.cs"}},match:/(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\p{space}*(\.)/dgv},{captures:{"1":{name:"punctuation.accessor.cs"},"2":{name:"entity.name.type.cs"}},match:/(\.)\p{space}*(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)/dgv},{match:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,name:"entity.name.type.cs"}]},"type-nullable-suffix":{match:/\?/dgv,name:"punctuation.separator.question-mark.cs"},"type-operator-expression":{begin:/\b(default|sizeof|typeof)\p{space}*(\()/dgv,beginCaptures:{"1":{name:"keyword.operator.expression.$1.cs"},"2":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#type"}]},"type-parameter-list":{begin:/</dgv,beginCaptures:{"0":{name:"punctuation.definition.typeparameters.begin.cs"}},end:/>/dgv,endCaptures:{"0":{name:"punctuation.definition.typeparameters.end.cs"}},patterns:[{match:/\b(in|out)\b/dgv,name:"storage.modifier.$1.cs"},{match:/(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\b/dgv,name:"entity.name.type.type-parameter.cs"},{include:"#comment"},{include:"#punctuation-comma"},{include:"#attribute-section"}]},"type-pattern":{begin:/(?=@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)/dgv,end:/(?=[\]\&\)\,\:\;\=\?\^\|\}]|!=|\b(and|or|when)\b)/dgv,patterns:[{begin:/(?:)/dgv,end:/*@__PURE__*/ new EmulatedRegExp("(?!^[\\@_\\p{Alpha}])(?=[\\]\\&\\(\\)\\,\\:\\;\\=\\@\\^_\\{\\|\\}\\p{Alpha}]|(?:\\p{space}|^)\\?|!=|\\b(and|or|when)\\b)","dgv",{"strategy":"clip_search"}),patterns:[{include:"#intrusive"},{include:"#type-subpattern"}]},{begin:/(?=[\(\@_\{\p{Alpha}])/dgv,end:/(?=[\]\&\)\,\:\;\=\?\^\|\}]|!=|\b(and|or|when)\b)/dgv,patterns:[{include:"#intrusive"},{include:"#positional-pattern"},{include:"#property-pattern"},{include:"#simple-designation-pattern"}]}]},"type-pointer-suffix":{match:/\*/dgv,name:"punctuation.separator.asterisk.cs"},"type-subpattern":{patterns:[{include:"#type-builtin"},{begin:/(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\p{space}*(::)/dgv,beginCaptures:{"1":{name:"entity.name.type.alias.cs"},"2":{name:"punctuation.separator.coloncolon.cs"}},end:/(?<=[_\p{Alpha}\p{Nd}])|(?=[\]\&\(\)\,\.\:-\=\?\[\^\{\|\}]|!=|\b(and|or|when)\b)/dgv,patterns:[{include:"#intrusive"},{match:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,name:"entity.name.type.cs"}]},{match:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,name:"entity.name.type.cs"},{begin:/\./dgv,beginCaptures:{"0":{name:"punctuation.accessor.cs"}},end:/(?<=[_\p{Alpha}\p{Nd}])|(?=[\]\&\(\)\,\:-\=\?\[\^\{\|\}]|!=|\b(and|or|when)\b)/dgv,patterns:[{include:"#intrusive"},{match:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,name:"entity.name.type.cs"}]},{include:"#type-arguments"},{include:"#type-array-suffix"},{match:/(?<!\p{space})\?/dgv,name:"punctuation.separator.question-mark.cs"}]},"using-directive":{patterns:[{begin:/\b(?:(global)\p{space}+)?(using)\p{space}+(static)\b\p{space}*(?:(unsafe)\b\p{space}*)?/dgv,beginCaptures:{"1":{name:"keyword.other.directive.global.cs"},"2":{name:"keyword.other.directive.using.cs"},"3":{name:"keyword.other.directive.static.cs"},"4":{name:"storage.modifier.unsafe.cs"}},end:/(?=;)/dgv,patterns:[{include:"#type"}]},{begin:/\b(?:(global)\p{space}+)?(using)\b\p{space}*(?:(unsafe)\b\p{space}*)?(@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*)\p{space}*(=)/dgv,beginCaptures:{"1":{name:"keyword.other.directive.global.cs"},"2":{name:"keyword.other.directive.using.cs"},"3":{name:"storage.modifier.unsafe.cs"},"4":{name:"entity.name.type.alias.cs"},"5":{name:"keyword.operator.assignment.cs"}},end:/(?=;)/dgv,patterns:[{include:"#comment"},{include:"#type"}]},{begin:/*@__PURE__*/ new EmulatedRegExp("\\b(?:(global)\\p{space}+)?(using)\\b(?:(?=(\\p{space}*))\\3)(?!\\(|var\\b)","dgv",{"hiddenCaptures":[3]}),beginCaptures:{"1":{name:"keyword.other.directive.global.cs"},"2":{name:"keyword.other.directive.using.cs"}},end:/(?=;)/dgv,patterns:[{include:"#comment"},{match:/@?[_\p{Alpha}][_\p{Alpha}\p{Nd}]*/dgv,name:"entity.name.type.namespace.cs"},{include:"#punctuation-accessor"},{include:"#operator-assignment"}]}]},"using-statement":{begin:/\b(using)\b/dgv,beginCaptures:{"1":{name:"keyword.control.context.using.cs"}},end:/(?<=\))|(?=[\;\}])/dgv,patterns:[{include:"#intrusive"},{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#intrusive"},{include:"#await-expression"},{include:"#local-variable-declaration"},{include:"#expression"}]},{include:"#local-variable-declaration"}]},"var-pattern":{begin:/\b(var)\b/dgv,beginCaptures:{"1":{name:"storage.type.var.cs"}},end:/(?=[\]\&\)\,\:\;\=\?\^\|\}]|!=|\b(and|or|when)\b)/dgv,patterns:[{include:"#designation-pattern"}]},"variable-initializer":{begin:/(?<![\!\=])(=)(?![\=\>])/dgv,beginCaptures:{"1":{name:"keyword.operator.assignment.cs"}},end:/(?=[\]\)\,\;\}])/dgv,patterns:[{include:"#ref-modifier"},{include:"#expression"}]},"verbatim-interpolated-string":{begin:/(?:\$@|@\$)"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.cs"}},end:/"(?=[^"])/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.cs"}},name:"string.quoted.double.cs",patterns:[{include:"#verbatim-string-character-escape"},{include:"#interpolation"}]},"verbatim-string-character-escape":{match:/""/dgv,name:"constant.character.escape.cs"},"verbatim-string-literal":{begin:/@"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.cs"}},end:/"(?=[^"])/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.cs"}},name:"string.quoted.double.cs",patterns:[{include:"#verbatim-string-character-escape"}]},"when-clause":{begin:/(?<!\.)\b(when)\b\p{space}*(\()/dgv,beginCaptures:{"1":{name:"keyword.control.exception.when.cs"},"2":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#expression"},{include:"#comment"}]},"where-clause":{begin:/\b(where)\b\p{space}*/dgv,beginCaptures:{"1":{name:"keyword.operator.expression.query.where.cs"}},end:/(?=[\)\;])/dgv,patterns:[{include:"#query-body"},{include:"#expression"}]},"while-statement":{begin:/(?<!\.)\b(while)\b\p{space}*(?=\()/dgv,beginCaptures:{"1":{name:"keyword.control.loop.while.cs"}},end:/(?<=\})|(?=;)/dgv,patterns:[{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.parenthesis.open.cs"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.parenthesis.close.cs"}},patterns:[{include:"#expression"}]},{include:"#statement"}]},"with-expression":{begin:/(?<!\.)\b(with)\b\p{space}*(?=\{|\/\/|\/\*|(?=\n?$))/dgv,beginCaptures:{"1":{name:"keyword.operator.expression.with.cs"}},end:/(?<=\})/dgv,patterns:[{include:"#comment"},{include:"#initializer-expression"}]},"xml-attribute":{patterns:[{captures:{"1":{name:"entity.other.attribute-name.cs"},"2":{name:"entity.other.attribute-name.namespace.cs"},"3":{name:"punctuation.separator.colon.cs"},"4":{name:"entity.other.attribute-name.localname.cs"},"5":{name:"punctuation.separator.equals.cs"}},match:/(?:^|\p{space}+)((?:([\-_\p{Alpha}\p{Nd}]+)(:))?([\-_\p{Alpha}\p{Nd}]+))(=)/dgv},{include:"#xml-string"}]},"xml-cdata":{begin:/<!\[CDATA\[/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.cs"}},end:/\]\]>/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.cs"}},name:"string.unquoted.cdata.cs"},"xml-character-entity":{patterns:[{captures:{"1":{name:"punctuation.definition.constant.cs"},"3":{name:"punctuation.definition.constant.cs"}},match:/(&)([\:_\p{Alpha}][\-\.\:_\p{Alpha}\p{Nd}]*|#\p{Nd}+|#x\p{AHex}+)(;)/dgv,name:"constant.character.entity.cs"},{match:/&/dgv,name:"invalid.illegal.bad-ampersand.cs"}]},"xml-comment":{begin:/<!--/dgv,beginCaptures:{"0":{name:"punctuation.definition.comment.cs"}},end:/-->/dgv,endCaptures:{"0":{name:"punctuation.definition.comment.cs"}},name:"comment.block.cs"},"xml-doc-comment":{patterns:[{include:"#xml-comment"},{include:"#xml-character-entity"},{include:"#xml-cdata"},{include:"#xml-tag"}]},"xml-string":{patterns:[{begin:/'/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.cs"}},end:/'/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.cs"}},name:"string.quoted.single.cs",patterns:[{include:"#xml-character-entity"}]},{begin:/"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.cs"}},end:/"/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.cs"}},name:"string.quoted.double.cs",patterns:[{include:"#xml-character-entity"}]}]},"xml-tag":{begin:/(<\/?)((?:([\-_\p{Alpha}\p{Nd}]+)(:))?([\-_\p{Alpha}\p{Nd}]+))/dgv,beginCaptures:{"1":{name:"punctuation.definition.tag.cs"},"2":{name:"entity.name.tag.cs"},"3":{name:"entity.name.tag.namespace.cs"},"4":{name:"punctuation.separator.colon.cs"},"5":{name:"entity.name.tag.localname.cs"}},end:/(\/?>)/dgv,endCaptures:{"1":{name:"punctuation.definition.tag.cs"}},name:"meta.tag.cs",patterns:[{include:"#xml-attribute"}]},"yield-break-statement":{captures:{"1":{name:"keyword.control.flow.yield.cs"},"2":{name:"keyword.control.flow.break.cs"}},match:/(?<!\.)\b(yield)\b\p{space}*\b(break)\b/dgv},"yield-return-statement":{begin:/(?<!\.)\b(yield)\b\p{space}*\b(return)\b/dgv,beginCaptures:{"1":{name:"keyword.control.flow.yield.cs"},"2":{name:"keyword.control.flow.return.cs"}},end:/(?=[\;\}])/dgv,patterns:[{include:"#expression"}]},"yield-statement":{patterns:[{include:"#yield-return-statement"},{include:"#yield-break-statement"}]}},scopeName:"source.cs",embeddedLangs:undefined,aliases:["c#","cs"]})
|
|
4
4
|
|
|
5
5
|
export default [
|
|
6
6
|
lang
|