@plumile/ui 0.1.146 → 0.1.150

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (72) hide show
  1. package/README.md +3 -0
  2. package/lib/esm/admin/theme/adminSurface.css.js +0 -2
  3. package/lib/esm/atomic/atoms/textarea/textarea.css.js +2 -0
  4. package/lib/esm/atomic/molecules/markdown/components/MarkdownCodeCopyButton.js +19 -35
  5. package/lib/esm/atomic/molecules/markdown/components/MarkdownCodeCopyButton.js.map +1 -1
  6. package/lib/esm/atomic/molecules/markdown/components/MarkdownEmphasis.css.js +0 -1
  7. package/lib/esm/atomic/molecules/markdown/components/MarkdownSubscript.css.js +1 -0
  8. package/lib/esm/backoffice/atoms/copyable_text/CopyableText.js +22 -42
  9. package/lib/esm/backoffice/atoms/copyable_text/CopyableText.js.map +1 -1
  10. package/lib/esm/backoffice/molecules/backoffice_json_viewer/BackofficeJsonViewer.js +2 -1
  11. package/lib/esm/backoffice/molecules/backoffice_json_viewer/BackofficeJsonViewer.js.map +1 -1
  12. package/lib/esm/backoffice/shared/copyWithExecCommand.js +1 -14
  13. package/lib/esm/hooks/useClipboardCopy.js +31 -0
  14. package/lib/esm/hooks/useClipboardCopy.js.map +1 -0
  15. package/lib/esm/index.js +223 -221
  16. package/lib/esm/node_modules/@shikijs/core/dist/index.js +99 -96
  17. package/lib/esm/node_modules/@shikijs/core/dist/index.js.map +1 -1
  18. package/lib/esm/node_modules/@shikijs/core/node_modules/@shikijs/types/dist/index.js.map +1 -1
  19. package/lib/esm/node_modules/@shikijs/primitive/dist/index.js +91 -85
  20. package/lib/esm/node_modules/@shikijs/primitive/dist/index.js.map +1 -1
  21. package/lib/esm/node_modules/@shikijs/primitive/node_modules/@shikijs/types/dist/index.js.map +1 -1
  22. package/lib/esm/node_modules/@vitest/runner/dist/chunk-artifact.js.map +1 -1
  23. package/lib/esm/node_modules/cytoscape/dist/cytoscape.esm.js +1 -1
  24. package/lib/esm/node_modules/cytoscape/dist/cytoscape.esm.js.map +1 -1
  25. package/lib/esm/node_modules/react-shiki/dist/index.js +1 -1
  26. package/lib/esm/node_modules/shiki/dist/bundle-full.js +1 -1
  27. package/lib/esm/node_modules/shiki/dist/bundle-full.js.map +1 -1
  28. package/lib/esm/node_modules/shiki/dist/{chunk-CtajNgzt.js → chunk-D1SwGrFN.js} +2 -2
  29. package/lib/esm/node_modules/shiki/dist/chunk-D1SwGrFN.js.map +1 -0
  30. package/lib/esm/node_modules/shiki/dist/engine-oniguruma.js +1 -1
  31. package/lib/esm/node_modules/shiki/dist/engine-oniguruma.js.map +1 -1
  32. package/lib/esm/node_modules/shiki/dist/{langs-bundle-full-DfKZStlK.js → langs-bundle-full-YTHnHqaM.js} +2 -2
  33. package/lib/esm/node_modules/shiki/dist/{langs-bundle-full-DfKZStlK.js.map → langs-bundle-full-YTHnHqaM.js.map} +1 -1
  34. package/lib/esm/node_modules/shiki/dist/themes.js.map +1 -1
  35. package/lib/esm/node_modules/shiki/node_modules/@shikijs/engine-oniguruma/dist/index.js.map +1 -1
  36. package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/apex.js +1 -1
  37. package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/apex.js.map +1 -1
  38. package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/c3.js +1 -1
  39. package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/c3.js.map +1 -1
  40. package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/csharp.js +1 -1
  41. package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/csharp.js.map +1 -1
  42. package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/hack.js +1 -1
  43. package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/hack.js.map +1 -1
  44. package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/julia.js +1 -1
  45. package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/julia.js.map +1 -1
  46. package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/just.js +1 -1
  47. package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/just.js.map +1 -1
  48. package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/latex.js +1 -1
  49. package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/latex.js.map +1 -1
  50. package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/luau.js +1 -1
  51. package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/luau.js.map +1 -1
  52. package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/php.js +1 -1
  53. package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/php.js.map +1 -1
  54. package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/sql.js +1 -1
  55. package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/sql.js.map +1 -1
  56. package/lib/esm/node_modules/shiki/node_modules/@shikijs/themes/dist/vesper.js +1 -1
  57. package/lib/esm/node_modules/shiki/node_modules/@shikijs/themes/dist/vesper.js.map +1 -1
  58. package/lib/esm/shared/clipboard.js +55 -0
  59. package/lib/esm/shared/clipboard.js.map +1 -0
  60. package/lib/types/atomic/molecules/markdown/components/MarkdownCodeCopyButton.d.ts.map +1 -1
  61. package/lib/types/backoffice/atoms/copyable_text/CopyableText.d.ts.map +1 -1
  62. package/lib/types/backoffice/shared/copyWithExecCommand.d.ts +1 -1
  63. package/lib/types/backoffice/shared/copyWithExecCommand.d.ts.map +1 -1
  64. package/lib/types/hooks/useClipboardCopy.d.ts +9 -0
  65. package/lib/types/hooks/useClipboardCopy.d.ts.map +1 -0
  66. package/lib/types/index.d.ts +2 -0
  67. package/lib/types/index.d.ts.map +1 -1
  68. package/lib/types/shared/clipboard.d.ts +9 -0
  69. package/lib/types/shared/clipboard.d.ts.map +1 -0
  70. package/package.json +4 -4
  71. package/lib/esm/backoffice/shared/copyWithExecCommand.js.map +0 -1
  72. package/lib/esm/node_modules/shiki/dist/chunk-CtajNgzt.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../../../../../../../../../node_modules/shiki/node_modules/@shikijs/engine-oniguruma/dist/index.mjs"],"sourcesContent":["//#region src/error.ts\nvar ShikiError = class extends Error {\n\tconstructor(message) {\n\t\tsuper(message);\n\t\tthis.name = \"ShikiError\";\n\t}\n};\n\nfunction getHeapMax() {\n return 2147483648;\n}\nfunction _emscripten_get_now() {\n return typeof performance !== \"undefined\" ? performance.now() : Date.now();\n}\nconst alignUp = (x, multiple) => x + (multiple - x % multiple) % multiple;\nasync function main(init) {\n let wasmMemory;\n let buffer;\n const binding = {};\n function updateGlobalBufferAndViews(buf) {\n buffer = buf;\n binding.HEAPU8 = new Uint8Array(buf);\n binding.HEAPU32 = new Uint32Array(buf);\n }\n function _emscripten_memcpy_big(dest, src, num) {\n binding.HEAPU8.copyWithin(dest, src, src + num);\n }\n function emscripten_realloc_buffer(size) {\n try {\n wasmMemory.grow(size - buffer.byteLength + 65535 >>> 16);\n updateGlobalBufferAndViews(wasmMemory.buffer);\n return 1;\n } catch {\n }\n }\n function _emscripten_resize_heap(requestedSize) {\n const oldSize = binding.HEAPU8.length;\n requestedSize = requestedSize >>> 0;\n const maxHeapSize = getHeapMax();\n if (requestedSize > maxHeapSize)\n return false;\n for (let cutDown = 1; cutDown <= 4; cutDown *= 2) {\n let overGrownHeapSize = oldSize * (1 + 0.2 / cutDown);\n overGrownHeapSize = Math.min(overGrownHeapSize, requestedSize + 100663296);\n const newSize = Math.min(maxHeapSize, alignUp(Math.max(requestedSize, overGrownHeapSize), 65536));\n const replacement = emscripten_realloc_buffer(newSize);\n if (replacement)\n return true;\n }\n return false;\n }\n const UTF8Decoder = typeof TextDecoder != \"undefined\" ? new TextDecoder(\"utf8\") : void 0;\n function UTF8ArrayToString(heapOrArray, idx, maxBytesToRead = 1024) {\n const endIdx = idx + maxBytesToRead;\n let endPtr = idx;\n while (heapOrArray[endPtr] && !(endPtr >= endIdx)) ++endPtr;\n if (endPtr - idx > 16 && heapOrArray.buffer && UTF8Decoder) {\n return UTF8Decoder.decode(heapOrArray.subarray(idx, endPtr));\n }\n let str = \"\";\n while (idx < endPtr) {\n let u0 = heapOrArray[idx++];\n if (!(u0 & 128)) {\n str += String.fromCharCode(u0);\n continue;\n }\n const u1 = heapOrArray[idx++] & 63;\n if ((u0 & 224) === 192) {\n str += String.fromCharCode((u0 & 31) << 6 | u1);\n continue;\n }\n const u2 = heapOrArray[idx++] & 63;\n if ((u0 & 240) === 224) {\n u0 = (u0 & 15) << 12 | u1 << 6 | u2;\n } else {\n u0 = (u0 & 7) << 18 | u1 << 12 | u2 << 6 | heapOrArray[idx++] & 63;\n }\n if (u0 < 65536) {\n str += String.fromCharCode(u0);\n } else {\n const ch = u0 - 65536;\n str += String.fromCharCode(55296 | ch >> 10, 56320 | ch & 1023);\n }\n }\n return str;\n }\n function UTF8ToString(ptr, maxBytesToRead) {\n return ptr ? UTF8ArrayToString(binding.HEAPU8, ptr, maxBytesToRead) : \"\";\n }\n const asmLibraryArg = {\n emscripten_get_now: _emscripten_get_now,\n emscripten_memcpy_big: _emscripten_memcpy_big,\n emscripten_resize_heap: _emscripten_resize_heap,\n fd_write: () => 0\n };\n async function createWasm() {\n const info = {\n env: asmLibraryArg,\n wasi_snapshot_preview1: asmLibraryArg\n };\n const exports$1 = await init(info);\n wasmMemory = exports$1.memory;\n updateGlobalBufferAndViews(wasmMemory.buffer);\n Object.assign(binding, exports$1);\n binding.UTF8ToString = UTF8ToString;\n }\n await createWasm();\n return binding;\n}\n\nvar __defProp = Object.defineProperty;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== \"symbol\" ? key + \"\" : key, value);\nlet onigBinding = null;\nfunction throwLastOnigError(onigBinding2) {\n throw new ShikiError(onigBinding2.UTF8ToString(onigBinding2.getLastOnigError()));\n}\nclass UtfString {\n constructor(str) {\n __publicField(this, \"utf16Length\");\n __publicField(this, \"utf8Length\");\n __publicField(this, \"utf16Value\");\n __publicField(this, \"utf8Value\");\n __publicField(this, \"utf16OffsetToUtf8\");\n __publicField(this, \"utf8OffsetToUtf16\");\n const utf16Length = str.length;\n const utf8Length = UtfString._utf8ByteLength(str);\n const computeIndicesMapping = utf8Length !== utf16Length;\n const utf16OffsetToUtf8 = computeIndicesMapping ? new Uint32Array(utf16Length + 1) : null;\n if (computeIndicesMapping)\n utf16OffsetToUtf8[utf16Length] = utf8Length;\n const utf8OffsetToUtf16 = computeIndicesMapping ? new Uint32Array(utf8Length + 1) : null;\n if (computeIndicesMapping)\n utf8OffsetToUtf16[utf8Length] = utf16Length;\n const utf8Value = new Uint8Array(utf8Length);\n let i8 = 0;\n for (let i16 = 0; i16 < utf16Length; i16++) {\n const charCode = str.charCodeAt(i16);\n let codePoint = charCode;\n let wasSurrogatePair = false;\n if (charCode >= 55296 && charCode <= 56319) {\n if (i16 + 1 < utf16Length) {\n const nextCharCode = str.charCodeAt(i16 + 1);\n if (nextCharCode >= 56320 && nextCharCode <= 57343) {\n codePoint = (charCode - 55296 << 10) + 65536 | nextCharCode - 56320;\n wasSurrogatePair = true;\n }\n }\n }\n if (computeIndicesMapping) {\n utf16OffsetToUtf8[i16] = i8;\n if (wasSurrogatePair)\n utf16OffsetToUtf8[i16 + 1] = i8;\n if (codePoint <= 127) {\n utf8OffsetToUtf16[i8 + 0] = i16;\n } else if (codePoint <= 2047) {\n utf8OffsetToUtf16[i8 + 0] = i16;\n utf8OffsetToUtf16[i8 + 1] = i16;\n } else if (codePoint <= 65535) {\n utf8OffsetToUtf16[i8 + 0] = i16;\n utf8OffsetToUtf16[i8 + 1] = i16;\n utf8OffsetToUtf16[i8 + 2] = i16;\n } else {\n utf8OffsetToUtf16[i8 + 0] = i16;\n utf8OffsetToUtf16[i8 + 1] = i16;\n utf8OffsetToUtf16[i8 + 2] = i16;\n utf8OffsetToUtf16[i8 + 3] = i16;\n }\n }\n if (codePoint <= 127) {\n utf8Value[i8++] = codePoint;\n } else if (codePoint <= 2047) {\n utf8Value[i8++] = 192 | (codePoint & 1984) >>> 6;\n utf8Value[i8++] = 128 | (codePoint & 63) >>> 0;\n } else if (codePoint <= 65535) {\n utf8Value[i8++] = 224 | (codePoint & 61440) >>> 12;\n utf8Value[i8++] = 128 | (codePoint & 4032) >>> 6;\n utf8Value[i8++] = 128 | (codePoint & 63) >>> 0;\n } else {\n utf8Value[i8++] = 240 | (codePoint & 1835008) >>> 18;\n utf8Value[i8++] = 128 | (codePoint & 258048) >>> 12;\n utf8Value[i8++] = 128 | (codePoint & 4032) >>> 6;\n utf8Value[i8++] = 128 | (codePoint & 63) >>> 0;\n }\n if (wasSurrogatePair)\n i16++;\n }\n this.utf16Length = utf16Length;\n this.utf8Length = utf8Length;\n this.utf16Value = str;\n this.utf8Value = utf8Value;\n this.utf16OffsetToUtf8 = utf16OffsetToUtf8;\n this.utf8OffsetToUtf16 = utf8OffsetToUtf16;\n }\n static _utf8ByteLength(str) {\n let result = 0;\n for (let i = 0, len = str.length; i < len; i++) {\n const charCode = str.charCodeAt(i);\n let codepoint = charCode;\n let wasSurrogatePair = false;\n if (charCode >= 55296 && charCode <= 56319) {\n if (i + 1 < len) {\n const nextCharCode = str.charCodeAt(i + 1);\n if (nextCharCode >= 56320 && nextCharCode <= 57343) {\n codepoint = (charCode - 55296 << 10) + 65536 | nextCharCode - 56320;\n wasSurrogatePair = true;\n }\n }\n }\n if (codepoint <= 127)\n result += 1;\n else if (codepoint <= 2047)\n result += 2;\n else if (codepoint <= 65535)\n result += 3;\n else\n result += 4;\n if (wasSurrogatePair)\n i++;\n }\n return result;\n }\n createString(onigBinding2) {\n const result = onigBinding2.omalloc(this.utf8Length);\n onigBinding2.HEAPU8.set(this.utf8Value, result);\n return result;\n }\n}\nconst _OnigString = class _OnigString {\n constructor(str) {\n __publicField(this, \"id\", ++_OnigString.LAST_ID);\n __publicField(this, \"_onigBinding\");\n __publicField(this, \"content\");\n __publicField(this, \"utf16Length\");\n __publicField(this, \"utf8Length\");\n __publicField(this, \"utf16OffsetToUtf8\");\n __publicField(this, \"utf8OffsetToUtf16\");\n __publicField(this, \"ptr\");\n if (!onigBinding)\n throw new ShikiError(\"Must invoke loadWasm first.\");\n this._onigBinding = onigBinding;\n this.content = str;\n const utfString = new UtfString(str);\n this.utf16Length = utfString.utf16Length;\n this.utf8Length = utfString.utf8Length;\n this.utf16OffsetToUtf8 = utfString.utf16OffsetToUtf8;\n this.utf8OffsetToUtf16 = utfString.utf8OffsetToUtf16;\n if (this.utf8Length < 1e4 && !_OnigString._sharedPtrInUse) {\n if (!_OnigString._sharedPtr)\n _OnigString._sharedPtr = onigBinding.omalloc(1e4);\n _OnigString._sharedPtrInUse = true;\n onigBinding.HEAPU8.set(utfString.utf8Value, _OnigString._sharedPtr);\n this.ptr = _OnigString._sharedPtr;\n } else {\n this.ptr = utfString.createString(onigBinding);\n }\n }\n convertUtf8OffsetToUtf16(utf8Offset) {\n if (this.utf8OffsetToUtf16) {\n if (utf8Offset < 0)\n return 0;\n if (utf8Offset > this.utf8Length)\n return this.utf16Length;\n return this.utf8OffsetToUtf16[utf8Offset];\n }\n return utf8Offset;\n }\n convertUtf16OffsetToUtf8(utf16Offset) {\n if (this.utf16OffsetToUtf8) {\n if (utf16Offset < 0)\n return 0;\n if (utf16Offset > this.utf16Length)\n return this.utf8Length;\n return this.utf16OffsetToUtf8[utf16Offset];\n }\n return utf16Offset;\n }\n dispose() {\n if (this.ptr === _OnigString._sharedPtr)\n _OnigString._sharedPtrInUse = false;\n else\n this._onigBinding.ofree(this.ptr);\n }\n};\n__publicField(_OnigString, \"LAST_ID\", 0);\n__publicField(_OnigString, \"_sharedPtr\", 0);\n// a pointer to a string of 10000 bytes\n__publicField(_OnigString, \"_sharedPtrInUse\", false);\nlet OnigString = _OnigString;\nclass OnigScanner {\n constructor(patterns) {\n __publicField(this, \"_onigBinding\");\n __publicField(this, \"_ptr\");\n if (!onigBinding)\n throw new ShikiError(\"Must invoke loadWasm first.\");\n const strPtrsArr = [];\n const strLenArr = [];\n for (let i = 0, len = patterns.length; i < len; i++) {\n const utfString = new UtfString(patterns[i]);\n strPtrsArr[i] = utfString.createString(onigBinding);\n strLenArr[i] = utfString.utf8Length;\n }\n const strPtrsPtr = onigBinding.omalloc(4 * patterns.length);\n onigBinding.HEAPU32.set(strPtrsArr, strPtrsPtr / 4);\n const strLenPtr = onigBinding.omalloc(4 * patterns.length);\n onigBinding.HEAPU32.set(strLenArr, strLenPtr / 4);\n const scannerPtr = onigBinding.createOnigScanner(strPtrsPtr, strLenPtr, patterns.length);\n for (let i = 0, len = patterns.length; i < len; i++)\n onigBinding.ofree(strPtrsArr[i]);\n onigBinding.ofree(strLenPtr);\n onigBinding.ofree(strPtrsPtr);\n if (scannerPtr === 0)\n throwLastOnigError(onigBinding);\n this._onigBinding = onigBinding;\n this._ptr = scannerPtr;\n }\n dispose() {\n this._onigBinding.freeOnigScanner(this._ptr);\n }\n findNextMatchSync(string, startPosition, arg) {\n let options = 0 /* None */;\n if (typeof arg === \"number\") {\n options = arg;\n }\n if (typeof string === \"string\") {\n string = new OnigString(string);\n const result = this._findNextMatchSync(string, startPosition, false, options);\n string.dispose();\n return result;\n }\n return this._findNextMatchSync(string, startPosition, false, options);\n }\n _findNextMatchSync(string, startPosition, debugCall, options) {\n const onigBinding2 = this._onigBinding;\n const resultPtr = onigBinding2.findNextOnigScannerMatch(this._ptr, string.id, string.ptr, string.utf8Length, string.convertUtf16OffsetToUtf8(startPosition), options);\n if (resultPtr === 0) {\n return null;\n }\n const HEAPU32 = onigBinding2.HEAPU32;\n let offset = resultPtr / 4;\n const index = HEAPU32[offset++];\n const count = HEAPU32[offset++];\n const captureIndices = [];\n for (let i = 0; i < count; i++) {\n const beg = string.convertUtf8OffsetToUtf16(HEAPU32[offset++]);\n const end = string.convertUtf8OffsetToUtf16(HEAPU32[offset++]);\n captureIndices[i] = {\n start: beg,\n end,\n length: end - beg\n };\n }\n return {\n index,\n captureIndices\n };\n }\n}\nfunction isInstantiatorOptionsObject(dataOrOptions) {\n return typeof dataOrOptions.instantiator === \"function\";\n}\nfunction isInstantiatorModule(dataOrOptions) {\n return typeof dataOrOptions.default === \"function\";\n}\nfunction isDataOptionsObject(dataOrOptions) {\n return typeof dataOrOptions.data !== \"undefined\";\n}\nfunction isResponse(dataOrOptions) {\n return typeof Response !== \"undefined\" && dataOrOptions instanceof Response;\n}\nfunction isArrayBuffer(data) {\n return typeof ArrayBuffer !== \"undefined\" && (data instanceof ArrayBuffer || ArrayBuffer.isView(data)) || typeof Buffer !== \"undefined\" && Buffer.isBuffer?.(data) || typeof SharedArrayBuffer !== \"undefined\" && data instanceof SharedArrayBuffer || typeof Uint32Array !== \"undefined\" && data instanceof Uint32Array;\n}\nlet initPromise;\nfunction loadWasm(options) {\n if (initPromise)\n return initPromise;\n async function _load() {\n onigBinding = await main(async (info) => {\n let instance = options;\n instance = await instance;\n if (typeof instance === \"function\")\n instance = await instance(info);\n if (typeof instance === \"function\")\n instance = await instance(info);\n if (isInstantiatorOptionsObject(instance)) {\n instance = await instance.instantiator(info);\n } else if (isInstantiatorModule(instance)) {\n instance = await instance.default(info);\n } else {\n if (isDataOptionsObject(instance))\n instance = instance.data;\n if (isResponse(instance)) {\n if (typeof WebAssembly.instantiateStreaming === \"function\")\n instance = await _makeResponseStreamingLoader(instance)(info);\n else\n instance = await _makeResponseNonStreamingLoader(instance)(info);\n } else if (isArrayBuffer(instance)) {\n instance = await _makeArrayBufferLoader(instance)(info);\n } else if (instance instanceof WebAssembly.Module) {\n instance = await _makeArrayBufferLoader(instance)(info);\n } else if (\"default\" in instance && instance.default instanceof WebAssembly.Module) {\n instance = await _makeArrayBufferLoader(instance.default)(info);\n }\n }\n if (\"instance\" in instance)\n instance = instance.instance;\n if (\"exports\" in instance)\n instance = instance.exports;\n return instance;\n });\n }\n initPromise = _load();\n return initPromise;\n}\nfunction _makeArrayBufferLoader(data) {\n return (importObject) => WebAssembly.instantiate(data, importObject);\n}\nfunction _makeResponseStreamingLoader(data) {\n return (importObject) => WebAssembly.instantiateStreaming(data, importObject);\n}\nfunction _makeResponseNonStreamingLoader(data) {\n return async (importObject) => {\n const arrayBuffer = await data.arrayBuffer();\n return WebAssembly.instantiate(arrayBuffer, importObject);\n };\n}\n\nlet _defaultWasmLoader;\nfunction setDefaultWasmLoader(_loader) {\n _defaultWasmLoader = _loader;\n}\nfunction getDefaultWasmLoader() {\n return _defaultWasmLoader;\n}\nasync function createOnigurumaEngine(options) {\n if (options)\n await loadWasm(options);\n return {\n createScanner(patterns) {\n return new OnigScanner(patterns.map((p) => typeof p === \"string\" ? p : p.source));\n },\n createString(s) {\n return new OnigString(s);\n }\n };\n}\n\nexport { createOnigurumaEngine, getDefaultWasmLoader, loadWasm, setDefaultWasmLoader };\n"],"x_google_ignoreList":[0],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../../../../../../../../node_modules/shiki/node_modules/@shikijs/engine-oniguruma/dist/index.mjs"],"sourcesContent":["//#region src/error.ts\nvar ShikiError = class extends Error {\n\tconstructor(message) {\n\t\tsuper(message);\n\t\tthis.name = \"ShikiError\";\n\t}\n};\n\nfunction getHeapMax() {\n return 2147483648;\n}\nfunction _emscripten_get_now() {\n return typeof performance !== \"undefined\" ? performance.now() : Date.now();\n}\nconst alignUp = (x, multiple) => x + (multiple - x % multiple) % multiple;\nasync function main(init) {\n let wasmMemory;\n let buffer;\n const binding = {};\n function updateGlobalBufferAndViews(buf) {\n buffer = buf;\n binding.HEAPU8 = new Uint8Array(buf);\n binding.HEAPU32 = new Uint32Array(buf);\n }\n function _emscripten_memcpy_big(dest, src, num) {\n binding.HEAPU8.copyWithin(dest, src, src + num);\n }\n function emscripten_realloc_buffer(size) {\n try {\n wasmMemory.grow(size - buffer.byteLength + 65535 >>> 16);\n updateGlobalBufferAndViews(wasmMemory.buffer);\n return 1;\n } catch {\n }\n }\n function _emscripten_resize_heap(requestedSize) {\n const oldSize = binding.HEAPU8.length;\n requestedSize = requestedSize >>> 0;\n const maxHeapSize = getHeapMax();\n if (requestedSize > maxHeapSize)\n return false;\n for (let cutDown = 1; cutDown <= 4; cutDown *= 2) {\n let overGrownHeapSize = oldSize * (1 + 0.2 / cutDown);\n overGrownHeapSize = Math.min(overGrownHeapSize, requestedSize + 100663296);\n const newSize = Math.min(maxHeapSize, alignUp(Math.max(requestedSize, overGrownHeapSize), 65536));\n const replacement = emscripten_realloc_buffer(newSize);\n if (replacement)\n return true;\n }\n return false;\n }\n const UTF8Decoder = typeof TextDecoder != \"undefined\" ? new TextDecoder(\"utf8\") : void 0;\n function UTF8ArrayToString(heapOrArray, idx, maxBytesToRead = 1024) {\n const endIdx = idx + maxBytesToRead;\n let endPtr = idx;\n while (heapOrArray[endPtr] && !(endPtr >= endIdx)) ++endPtr;\n if (endPtr - idx > 16 && heapOrArray.buffer && UTF8Decoder) {\n return UTF8Decoder.decode(heapOrArray.subarray(idx, endPtr));\n }\n let str = \"\";\n while (idx < endPtr) {\n let u0 = heapOrArray[idx++];\n if (!(u0 & 128)) {\n str += String.fromCharCode(u0);\n continue;\n }\n const u1 = heapOrArray[idx++] & 63;\n if ((u0 & 224) === 192) {\n str += String.fromCharCode((u0 & 31) << 6 | u1);\n continue;\n }\n const u2 = heapOrArray[idx++] & 63;\n if ((u0 & 240) === 224) {\n u0 = (u0 & 15) << 12 | u1 << 6 | u2;\n } else {\n u0 = (u0 & 7) << 18 | u1 << 12 | u2 << 6 | heapOrArray[idx++] & 63;\n }\n if (u0 < 65536) {\n str += String.fromCharCode(u0);\n } else {\n const ch = u0 - 65536;\n str += String.fromCharCode(55296 | ch >> 10, 56320 | ch & 1023);\n }\n }\n return str;\n }\n function UTF8ToString(ptr, maxBytesToRead) {\n return ptr ? UTF8ArrayToString(binding.HEAPU8, ptr, maxBytesToRead) : \"\";\n }\n const asmLibraryArg = {\n emscripten_get_now: _emscripten_get_now,\n emscripten_memcpy_big: _emscripten_memcpy_big,\n emscripten_resize_heap: _emscripten_resize_heap,\n fd_write: () => 0\n };\n async function createWasm() {\n const info = {\n env: asmLibraryArg,\n wasi_snapshot_preview1: asmLibraryArg\n };\n const exports = await init(info);\n wasmMemory = exports.memory;\n updateGlobalBufferAndViews(wasmMemory.buffer);\n Object.assign(binding, exports);\n binding.UTF8ToString = UTF8ToString;\n }\n await createWasm();\n return binding;\n}\n\nvar __defProp = Object.defineProperty;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== \"symbol\" ? key + \"\" : key, value);\nlet onigBinding = null;\nfunction throwLastOnigError(onigBinding2) {\n throw new ShikiError(onigBinding2.UTF8ToString(onigBinding2.getLastOnigError()));\n}\nclass UtfString {\n constructor(str) {\n __publicField(this, \"utf16Length\");\n __publicField(this, \"utf8Length\");\n __publicField(this, \"utf16Value\");\n __publicField(this, \"utf8Value\");\n __publicField(this, \"utf16OffsetToUtf8\");\n __publicField(this, \"utf8OffsetToUtf16\");\n const utf16Length = str.length;\n const utf8Length = UtfString._utf8ByteLength(str);\n const computeIndicesMapping = utf8Length !== utf16Length;\n const utf16OffsetToUtf8 = computeIndicesMapping ? new Uint32Array(utf16Length + 1) : null;\n if (computeIndicesMapping)\n utf16OffsetToUtf8[utf16Length] = utf8Length;\n const utf8OffsetToUtf16 = computeIndicesMapping ? new Uint32Array(utf8Length + 1) : null;\n if (computeIndicesMapping)\n utf8OffsetToUtf16[utf8Length] = utf16Length;\n const utf8Value = new Uint8Array(utf8Length);\n let i8 = 0;\n for (let i16 = 0; i16 < utf16Length; i16++) {\n const charCode = str.charCodeAt(i16);\n let codePoint = charCode;\n let wasSurrogatePair = false;\n if (charCode >= 55296 && charCode <= 56319) {\n if (i16 + 1 < utf16Length) {\n const nextCharCode = str.charCodeAt(i16 + 1);\n if (nextCharCode >= 56320 && nextCharCode <= 57343) {\n codePoint = (charCode - 55296 << 10) + 65536 | nextCharCode - 56320;\n wasSurrogatePair = true;\n }\n }\n }\n if (computeIndicesMapping) {\n utf16OffsetToUtf8[i16] = i8;\n if (wasSurrogatePair)\n utf16OffsetToUtf8[i16 + 1] = i8;\n if (codePoint <= 127) {\n utf8OffsetToUtf16[i8 + 0] = i16;\n } else if (codePoint <= 2047) {\n utf8OffsetToUtf16[i8 + 0] = i16;\n utf8OffsetToUtf16[i8 + 1] = i16;\n } else if (codePoint <= 65535) {\n utf8OffsetToUtf16[i8 + 0] = i16;\n utf8OffsetToUtf16[i8 + 1] = i16;\n utf8OffsetToUtf16[i8 + 2] = i16;\n } else {\n utf8OffsetToUtf16[i8 + 0] = i16;\n utf8OffsetToUtf16[i8 + 1] = i16;\n utf8OffsetToUtf16[i8 + 2] = i16;\n utf8OffsetToUtf16[i8 + 3] = i16;\n }\n }\n if (codePoint <= 127) {\n utf8Value[i8++] = codePoint;\n } else if (codePoint <= 2047) {\n utf8Value[i8++] = 192 | (codePoint & 1984) >>> 6;\n utf8Value[i8++] = 128 | (codePoint & 63) >>> 0;\n } else if (codePoint <= 65535) {\n utf8Value[i8++] = 224 | (codePoint & 61440) >>> 12;\n utf8Value[i8++] = 128 | (codePoint & 4032) >>> 6;\n utf8Value[i8++] = 128 | (codePoint & 63) >>> 0;\n } else {\n utf8Value[i8++] = 240 | (codePoint & 1835008) >>> 18;\n utf8Value[i8++] = 128 | (codePoint & 258048) >>> 12;\n utf8Value[i8++] = 128 | (codePoint & 4032) >>> 6;\n utf8Value[i8++] = 128 | (codePoint & 63) >>> 0;\n }\n if (wasSurrogatePair)\n i16++;\n }\n this.utf16Length = utf16Length;\n this.utf8Length = utf8Length;\n this.utf16Value = str;\n this.utf8Value = utf8Value;\n this.utf16OffsetToUtf8 = utf16OffsetToUtf8;\n this.utf8OffsetToUtf16 = utf8OffsetToUtf16;\n }\n static _utf8ByteLength(str) {\n let result = 0;\n for (let i = 0, len = str.length; i < len; i++) {\n const charCode = str.charCodeAt(i);\n let codepoint = charCode;\n let wasSurrogatePair = false;\n if (charCode >= 55296 && charCode <= 56319) {\n if (i + 1 < len) {\n const nextCharCode = str.charCodeAt(i + 1);\n if (nextCharCode >= 56320 && nextCharCode <= 57343) {\n codepoint = (charCode - 55296 << 10) + 65536 | nextCharCode - 56320;\n wasSurrogatePair = true;\n }\n }\n }\n if (codepoint <= 127)\n result += 1;\n else if (codepoint <= 2047)\n result += 2;\n else if (codepoint <= 65535)\n result += 3;\n else\n result += 4;\n if (wasSurrogatePair)\n i++;\n }\n return result;\n }\n createString(onigBinding2) {\n const result = onigBinding2.omalloc(this.utf8Length);\n onigBinding2.HEAPU8.set(this.utf8Value, result);\n return result;\n }\n}\nconst _OnigString = class _OnigString {\n constructor(str) {\n __publicField(this, \"id\", ++_OnigString.LAST_ID);\n __publicField(this, \"_onigBinding\");\n __publicField(this, \"content\");\n __publicField(this, \"utf16Length\");\n __publicField(this, \"utf8Length\");\n __publicField(this, \"utf16OffsetToUtf8\");\n __publicField(this, \"utf8OffsetToUtf16\");\n __publicField(this, \"ptr\");\n if (!onigBinding)\n throw new ShikiError(\"Must invoke loadWasm first.\");\n this._onigBinding = onigBinding;\n this.content = str;\n const utfString = new UtfString(str);\n this.utf16Length = utfString.utf16Length;\n this.utf8Length = utfString.utf8Length;\n this.utf16OffsetToUtf8 = utfString.utf16OffsetToUtf8;\n this.utf8OffsetToUtf16 = utfString.utf8OffsetToUtf16;\n if (this.utf8Length < 1e4 && !_OnigString._sharedPtrInUse) {\n if (!_OnigString._sharedPtr)\n _OnigString._sharedPtr = onigBinding.omalloc(1e4);\n _OnigString._sharedPtrInUse = true;\n onigBinding.HEAPU8.set(utfString.utf8Value, _OnigString._sharedPtr);\n this.ptr = _OnigString._sharedPtr;\n } else {\n this.ptr = utfString.createString(onigBinding);\n }\n }\n convertUtf8OffsetToUtf16(utf8Offset) {\n if (this.utf8OffsetToUtf16) {\n if (utf8Offset < 0)\n return 0;\n if (utf8Offset > this.utf8Length)\n return this.utf16Length;\n return this.utf8OffsetToUtf16[utf8Offset];\n }\n return utf8Offset;\n }\n convertUtf16OffsetToUtf8(utf16Offset) {\n if (this.utf16OffsetToUtf8) {\n if (utf16Offset < 0)\n return 0;\n if (utf16Offset > this.utf16Length)\n return this.utf8Length;\n return this.utf16OffsetToUtf8[utf16Offset];\n }\n return utf16Offset;\n }\n dispose() {\n if (this.ptr === _OnigString._sharedPtr)\n _OnigString._sharedPtrInUse = false;\n else\n this._onigBinding.ofree(this.ptr);\n }\n};\n__publicField(_OnigString, \"LAST_ID\", 0);\n__publicField(_OnigString, \"_sharedPtr\", 0);\n// a pointer to a string of 10000 bytes\n__publicField(_OnigString, \"_sharedPtrInUse\", false);\nlet OnigString = _OnigString;\nclass OnigScanner {\n constructor(patterns) {\n __publicField(this, \"_onigBinding\");\n __publicField(this, \"_ptr\");\n if (!onigBinding)\n throw new ShikiError(\"Must invoke loadWasm first.\");\n const strPtrsArr = [];\n const strLenArr = [];\n for (let i = 0, len = patterns.length; i < len; i++) {\n const utfString = new UtfString(patterns[i]);\n strPtrsArr[i] = utfString.createString(onigBinding);\n strLenArr[i] = utfString.utf8Length;\n }\n const strPtrsPtr = onigBinding.omalloc(4 * patterns.length);\n onigBinding.HEAPU32.set(strPtrsArr, strPtrsPtr / 4);\n const strLenPtr = onigBinding.omalloc(4 * patterns.length);\n onigBinding.HEAPU32.set(strLenArr, strLenPtr / 4);\n const scannerPtr = onigBinding.createOnigScanner(strPtrsPtr, strLenPtr, patterns.length);\n for (let i = 0, len = patterns.length; i < len; i++)\n onigBinding.ofree(strPtrsArr[i]);\n onigBinding.ofree(strLenPtr);\n onigBinding.ofree(strPtrsPtr);\n if (scannerPtr === 0)\n throwLastOnigError(onigBinding);\n this._onigBinding = onigBinding;\n this._ptr = scannerPtr;\n }\n dispose() {\n this._onigBinding.freeOnigScanner(this._ptr);\n }\n findNextMatchSync(string, startPosition, arg) {\n let options = 0 /* None */;\n if (typeof arg === \"number\") {\n options = arg;\n }\n if (typeof string === \"string\") {\n string = new OnigString(string);\n const result = this._findNextMatchSync(string, startPosition, false, options);\n string.dispose();\n return result;\n }\n return this._findNextMatchSync(string, startPosition, false, options);\n }\n _findNextMatchSync(string, startPosition, debugCall, options) {\n const onigBinding2 = this._onigBinding;\n const resultPtr = onigBinding2.findNextOnigScannerMatch(this._ptr, string.id, string.ptr, string.utf8Length, string.convertUtf16OffsetToUtf8(startPosition), options);\n if (resultPtr === 0) {\n return null;\n }\n const HEAPU32 = onigBinding2.HEAPU32;\n let offset = resultPtr / 4;\n const index = HEAPU32[offset++];\n const count = HEAPU32[offset++];\n const captureIndices = [];\n for (let i = 0; i < count; i++) {\n const beg = string.convertUtf8OffsetToUtf16(HEAPU32[offset++]);\n const end = string.convertUtf8OffsetToUtf16(HEAPU32[offset++]);\n captureIndices[i] = {\n start: beg,\n end,\n length: end - beg\n };\n }\n return {\n index,\n captureIndices\n };\n }\n}\nfunction isInstantiatorOptionsObject(dataOrOptions) {\n return typeof dataOrOptions.instantiator === \"function\";\n}\nfunction isInstantiatorModule(dataOrOptions) {\n return typeof dataOrOptions.default === \"function\";\n}\nfunction isDataOptionsObject(dataOrOptions) {\n return typeof dataOrOptions.data !== \"undefined\";\n}\nfunction isResponse(dataOrOptions) {\n return typeof Response !== \"undefined\" && dataOrOptions instanceof Response;\n}\nfunction isArrayBuffer(data) {\n return typeof ArrayBuffer !== \"undefined\" && (data instanceof ArrayBuffer || ArrayBuffer.isView(data)) || typeof Buffer !== \"undefined\" && Buffer.isBuffer?.(data) || typeof SharedArrayBuffer !== \"undefined\" && data instanceof SharedArrayBuffer || typeof Uint32Array !== \"undefined\" && data instanceof Uint32Array;\n}\nlet initPromise;\nfunction loadWasm(options) {\n if (initPromise)\n return initPromise;\n async function _load() {\n onigBinding = await main(async (info) => {\n let instance = options;\n instance = await instance;\n if (typeof instance === \"function\")\n instance = await instance(info);\n if (typeof instance === \"function\")\n instance = await instance(info);\n if (isInstantiatorOptionsObject(instance)) {\n instance = await instance.instantiator(info);\n } else if (isInstantiatorModule(instance)) {\n instance = await instance.default(info);\n } else {\n if (isDataOptionsObject(instance))\n instance = instance.data;\n if (isResponse(instance)) {\n if (typeof WebAssembly.instantiateStreaming === \"function\")\n instance = await _makeResponseStreamingLoader(instance)(info);\n else\n instance = await _makeResponseNonStreamingLoader(instance)(info);\n } else if (isArrayBuffer(instance)) {\n instance = await _makeArrayBufferLoader(instance)(info);\n } else if (instance instanceof WebAssembly.Module) {\n instance = await _makeArrayBufferLoader(instance)(info);\n } else if (\"default\" in instance && instance.default instanceof WebAssembly.Module) {\n instance = await _makeArrayBufferLoader(instance.default)(info);\n }\n }\n if (\"instance\" in instance)\n instance = instance.instance;\n if (\"exports\" in instance)\n instance = instance.exports;\n return instance;\n });\n }\n initPromise = _load();\n return initPromise;\n}\nfunction _makeArrayBufferLoader(data) {\n return (importObject) => WebAssembly.instantiate(data, importObject);\n}\nfunction _makeResponseStreamingLoader(data) {\n return (importObject) => WebAssembly.instantiateStreaming(data, importObject);\n}\nfunction _makeResponseNonStreamingLoader(data) {\n return async (importObject) => {\n const arrayBuffer = await data.arrayBuffer();\n return WebAssembly.instantiate(arrayBuffer, importObject);\n };\n}\n\nlet _defaultWasmLoader;\nfunction setDefaultWasmLoader(_loader) {\n _defaultWasmLoader = _loader;\n}\nfunction getDefaultWasmLoader() {\n return _defaultWasmLoader;\n}\nasync function createOnigurumaEngine(options) {\n if (options)\n await loadWasm(options);\n return {\n createScanner(patterns) {\n return new OnigScanner(patterns.map((p) => typeof p === \"string\" ? p : p.source));\n },\n createString(s) {\n return new OnigString(s);\n }\n };\n}\n\nexport { createOnigurumaEngine, getDefaultWasmLoader, loadWasm, setDefaultWasmLoader };\n"],"x_google_ignoreList":[0],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- var e = [Object.freeze(JSON.parse("{\"displayName\":\"Apex\",\"fileTypes\":[\"apex\",\"cls\",\"trigger\"],\"name\":\"apex\",\"patterns\":[{\"include\":\"#javadoc-comment\"},{\"include\":\"#comment\"},{\"include\":\"#directives\"},{\"include\":\"#declarations\"},{\"include\":\"#script-top-level\"}],\"repository\":{\"annotation-declaration\":{\"begin\":\"(@[_[:alpha:]]+)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.annotation.apex\"}},\"end\":\"(?=\\\\s(?!\\\\())|(?=\\\\s*$)|(?<=\\\\s*\\\\))\",\"patterns\":[{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.apex\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.apex\"}},\"patterns\":[{\"include\":\"#expression\"}]},{\"include\":\"#statement\"}]},\"argument-list\":{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.apex\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.apex\"}},\"patterns\":[{\"include\":\"#named-argument\"},{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"array-creation-expression\":{\"begin\":\"\\\\b(new)\\\\b\\\\s*(?<type_name>(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*)*)?\\\\s*(?=\\\\[)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.new.apex\"},\"2\":{\"patterns\":[{\"include\":\"#support-type\"},{\"include\":\"#type\"}]}},\"end\":\"(?<=])\",\"patterns\":[{\"include\":\"#bracketed-argument-list\"}]},\"block\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.apex\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.apex\"}},\"patterns\":[{\"include\":\"#statement\"}]},\"boolean-literal\":{\"patterns\":[{\"match\":\"(?<!\\\\.)\\\\btrue\\\\b\",\"name\":\"constant.language.boolean.true.apex\"},{\"match\":\"(?<!\\\\.)\\\\bfalse\\\\b\",\"name\":\"constant.language.boolean.false.apex\"}]},\"bracketed-argument-list\":{\"begin\":\"\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.squarebracket.open.apex\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.squarebracket.close.apex\"}},\"patterns\":[{\"include\":\"#soql-query-expression\"},{\"include\":\"#named-argument\"},{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"break-or-continue-statement\":{\"captures\":{\"1\":{\"name\":\"keyword.control.flow.break.apex\"},\"2\":{\"name\":\"keyword.control.flow.continue.apex\"}},\"match\":\"(?<!\\\\.)\\\\b(?:(break)|(continue))\\\\b\"},\"cast-expression\":{\"captures\":{\"1\":{\"name\":\"punctuation.parenthesis.open.apex\"},\"2\":{\"patterns\":[{\"include\":\"#support-type\"},{\"include\":\"#type\"}]},\"6\":{\"name\":\"punctuation.parenthesis.close.apex\"}},\"match\":\"(\\\\()\\\\s*(?<type_name>(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*)*)\\\\s*(\\\\))(?=\\\\s*@?[(_[:alnum:]])\"},\"catch-clause\":{\"begin\":\"(?<!\\\\.)\\\\b(catch)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.try.catch.apex\"}},\"end\":\"(?<=})\",\"patterns\":[{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.apex\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.apex\"}},\"patterns\":[{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#support-type\"},{\"include\":\"#type\"}]},\"5\":{\"name\":\"entity.name.variable.local.apex\"}},\"match\":\"(?<type_name>(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*)*)\\\\s*(?:(\\\\g<identifier>)\\\\b)?\"}]},{\"include\":\"#comment\"},{\"include\":\"#block\"}]},\"class-declaration\":{\"begin\":\"(?=\\\\bclass\\\\b)\",\"end\":\"(?<=})\",\"patterns\":[{\"begin\":\"\\\\b(class)\\\\b\\\\s+(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.class.apex\"},\"2\":{\"name\":\"entity.name.type.class.apex\"}},\"end\":\"(?=\\\\{)\",\"patterns\":[{\"include\":\"#javadoc-comment\"},{\"include\":\"#comment\"},{\"include\":\"#type-parameter-list\"},{\"include\":\"#extends-class\"},{\"include\":\"#implements-class\"}]},{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.apex\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.apex\"}},\"patterns\":[{\"include\":\"#class-or-trigger-members\"}]},{\"include\":\"#javadoc-comment\"},{\"include\":\"#comment\"}]},\"class-or-trigger-members\":{\"patterns\":[{\"include\":\"#javadoc-comment\"},{\"include\":\"#comment\"},{\"include\":\"#storage-modifier\"},{\"include\":\"#sharing-modifier\"},{\"include\":\"#type-declarations\"},{\"include\":\"#field-declaration\"},{\"include\":\"#property-declaration\"},{\"include\":\"#indexer-declaration\"},{\"include\":\"#variable-initializer\"},{\"include\":\"#constructor-declaration\"},{\"include\":\"#method-declaration\"},{\"include\":\"#initializer-block\"},{\"include\":\"#punctuation-semicolon\"}]},\"colon-expression\":{\"match\":\":\",\"name\":\"keyword.operator.conditional.colon.apex\"},\"comment\":{\"patterns\":[{\"begin\":\"/\\\\*(\\\\*)?\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.apex\"}},\"end\":\"\\\\*/\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.apex\"}},\"name\":\"comment.block.apex\"},{\"begin\":\"(^\\\\s+)?(?=//)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.whitespace.comment.leading.apex\"}},\"end\":\"(?=$)\",\"patterns\":[{\"begin\":\"(?<!/)///(?!/)\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.apex\"}},\"end\":\"(?=$)\",\"name\":\"comment.block.documentation.apex\",\"patterns\":[{\"include\":\"#xml-doc-comment\"}]},{\"begin\":\"(?<!/)//(?:(?!/)|(?=//))\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.apex\"}},\"end\":\"(?=$)\",\"name\":\"comment.line.double-slash.apex\"}]}]},\"conditional-operator\":{\"begin\":\"(?<!\\\\?)\\\\?(?!\\\\?|\\\\.(?!\\\\d)|\\\\[)\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.conditional.question-mark.apex\"}},\"end\":\":\",\"endCaptures\":{\"0\":{\"name\":\"keyword.operator.conditional.colon.apex\"}},\"patterns\":[{\"include\":\"#expression\"}]},\"constructor-declaration\":{\"begin\":\"(?=@?[_[:alpha:]][_[:alnum:]]*\\\\s*\\\\()\",\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.name.function.apex\"}},\"match\":\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\b\"},{\"begin\":\"(:)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.separator.colon.apex\"}},\"end\":\"(?=\\\\{|=>)\",\"patterns\":[{\"include\":\"#constructor-initializer\"}]},{\"include\":\"#parenthesized-parameter-list\"},{\"include\":\"#comment\"},{\"include\":\"#expression-body\"},{\"include\":\"#block\"}]},\"constructor-initializer\":{\"begin\":\"\\\\b(this)\\\\b\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.this.apex\"}},\"end\":\"(?<=\\\\))\",\"patterns\":[{\"include\":\"#argument-list\"}]},\"date-literal-with-params\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.query.date.apex\"}},\"match\":\"\\\\b(((?:LAST_N_DAY|NEXT_N_DAY|NEXT_N_WEEK|LAST_N_WEEK|NEXT_N_MONTH|LAST_N_MONTH|NEXT_N_QUARTER|LAST_N_QUARTER|NEXT_N_YEAR|LAST_N_YEAR|NEXT_N_FISCAL_QUARTER|LAST_N_FISCAL_QUARTER|NEXT_N_FISCAL_YEAR|LAST_N_FISCAL_YEAR)S)\\\\s*:\\\\d+)\\\\b\"},\"date-literals\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.query.date.apex\"}},\"match\":\"\\\\b(YESTERDAY|TODAY|TOMORROW|LAST_WEEK|THIS_WEEK|NEXT_WEEK|LAST_MONTH|THIS_MONTH|NEXT_MONTH|LAST_90_DAYS|NEXT_90_DAYS|THIS_QUARTER|LAST_QUARTER|NEXT_QUARTER|THIS_YEAR|LAST_YEAR|NEXT_YEAR|THIS_FISCAL_QUARTER|LAST_FISCAL_QUARTER|NEXT_FISCAL_QUARTER|THIS_FISCAL_YEAR|LAST_FISCAL_YEAR|NEXT_FISCAL_YEAR)\\\\b\\\\s*\"},\"declarations\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"include\":\"#punctuation-semicolon\"}]},\"directives\":{\"patterns\":[{\"include\":\"#punctuation-semicolon\"}]},\"dml-expression\":{\"begin\":\"\\\\b(delete|insert|undelete|update|upsert)\\\\b\\\\s+(?!new\\\\b)\",\"beginCaptures\":{\"1\":{\"name\":\"support.function.apex\"}},\"end\":\"(?<=;)\",\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#punctuation-semicolon\"}]},\"do-statement\":{\"begin\":\"(?<!\\\\.)\\\\b(do)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.loop.do.apex\"}},\"end\":\"(?=[;}])\",\"patterns\":[{\"include\":\"#statement\"}]},\"element-access-expression\":{\"begin\":\"(?:(\\\\??\\\\.)\\\\s*)?(?:(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*)?(?:(\\\\?)\\\\s*)?(?=\\\\[)\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#punctuation-accessor\"},{\"include\":\"#operator-safe-navigation\"}]},\"2\":{\"name\":\"variable.other.object.property.apex\"},\"3\":{\"name\":\"keyword.operator.null-conditional.apex\"}},\"end\":\"(?<=])(?!\\\\s*\\\\[)\",\"patterns\":[{\"include\":\"#bracketed-argument-list\"}]},\"else-part\":{\"begin\":\"(?<!\\\\.)\\\\b(else)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.conditional.else.apex\"}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"include\":\"#statement\"}]},\"enum-declaration\":{\"begin\":\"(?=\\\\benum\\\\b)\",\"end\":\"(?<=})\",\"patterns\":[{\"begin\":\"(?=enum)\",\"end\":\"(?=\\\\{)\",\"patterns\":[{\"include\":\"#javadoc-comment\"},{\"include\":\"#comment\"},{\"captures\":{\"1\":{\"name\":\"keyword.other.enum.apex\"},\"2\":{\"name\":\"entity.name.type.enum.apex\"}},\"match\":\"(enum)\\\\s+(@?[_[:alpha:]][_[:alnum:]]*)\"}]},{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.apex\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.apex\"}},\"patterns\":[{\"include\":\"#javadoc-comment\"},{\"include\":\"#comment\"},{\"include\":\"#punctuation-comma\"},{\"begin\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"beginCaptures\":{\"0\":{\"name\":\"entity.name.variable.enum-member.apex\"}},\"end\":\"(?=([,}]))\",\"patterns\":[{\"include\":\"#javadoc-comment\"},{\"include\":\"#comment\"},{\"include\":\"#variable-initializer\"}]}]},{\"include\":\"#javadoc-comment\"},{\"include\":\"#comment\"}]},\"expression\":{\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#dml-expression\"},{\"include\":\"#merge-expression\"},{\"include\":\"#support-expression\"},{\"include\":\"#throw-expression\"},{\"include\":\"#this-expression\"},{\"include\":\"#trigger-context-declaration\"},{\"include\":\"#conditional-operator\"},{\"include\":\"#expression-operators\"},{\"include\":\"#soql-query-expression\"},{\"include\":\"#object-creation-expression\"},{\"include\":\"#array-creation-expression\"},{\"include\":\"#invocation-expression\"},{\"include\":\"#member-access-expression\"},{\"include\":\"#element-access-expression\"},{\"include\":\"#cast-expression\"},{\"include\":\"#literal\"},{\"include\":\"#parenthesized-expression\"},{\"include\":\"#initializer-expression\"},{\"include\":\"#identifier\"}]},\"expression-body\":{\"begin\":\"=>\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.arrow.apex\"}},\"end\":\"(?=[),;}])\",\"patterns\":[{\"include\":\"#expression\"}]},\"expression-operators\":{\"patterns\":[{\"match\":\"[-%*+/]=\",\"name\":\"keyword.operator.assignment.compound.apex\"},{\"match\":\"(?:[\\\\&^]|<<|>>|\\\\|)=\",\"name\":\"keyword.operator.assignment.compound.bitwise.apex\"},{\"match\":\"<<|>>\",\"name\":\"keyword.operator.bitwise.shift.apex\"},{\"match\":\"[!=]=\",\"name\":\"keyword.operator.comparison.apex\"},{\"match\":\"<=|>=|[<>]\",\"name\":\"keyword.operator.relational.apex\"},{\"match\":\"!|&&|\\\\|\\\\|\",\"name\":\"keyword.operator.logical.apex\"},{\"match\":\"[\\\\&^|~]\",\"name\":\"keyword.operator.bitwise.apex\"},{\"match\":\"=\",\"name\":\"keyword.operator.assignment.apex\"},{\"match\":\"--\",\"name\":\"keyword.operator.decrement.apex\"},{\"match\":\"\\\\+\\\\+\",\"name\":\"keyword.operator.increment.apex\"},{\"match\":\"[-%*+/]\",\"name\":\"keyword.operator.arithmetic.apex\"}]},\"extends-class\":{\"begin\":\"(extends)\\\\b\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.extends.apex\"}},\"end\":\"(?=\\\\{|implements)\",\"patterns\":[{\"begin\":\"(?=[_[:alpha:]][_[:alnum:]]*\\\\s*\\\\.)\",\"end\":\"(?=\\\\{|implements)\",\"patterns\":[{\"include\":\"#support-type\"},{\"include\":\"#type\"}]},{\"captures\":{\"1\":{\"name\":\"entity.name.type.extends.apex\"}},\"match\":\"([_[:alpha:]][_[:alnum:]]*)\"}]},\"field-declaration\":{\"begin\":\"(?<type_name>(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*)*)\\\\s+(\\\\g<identifier>)\\\\s*(?!=[=>])(?=[,;=]|$)\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#support-type\"},{\"include\":\"#type\"}]},\"5\":{\"name\":\"entity.name.variable.field.apex\"}},\"end\":\"(?=;)\",\"patterns\":[{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.variable.field.apex\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#comment\"},{\"include\":\"#variable-initializer\"},{\"include\":\"#class-or-trigger-members\"}]},\"finally-clause\":{\"begin\":\"(?<!\\\\.)\\\\b(finally)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.try.finally.apex\"}},\"end\":\"(?<=})\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#block\"}]},\"for-apex-syntax\":{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#support-type\"},{\"include\":\"#type\"}]},\"2\":{\"name\":\"entity.name.variable.local.apex\"},\"3\":{\"name\":\"keyword.operator.iterator.colon.apex\"}},\"match\":\"([._[:alpha:]][._[:alnum:]]+)\\\\s+([._[:alpha:]][._[:alnum:]]*)\\\\s*(:)\"},\"for-statement\":{\"begin\":\"(?<!\\\\.)\\\\b(for)\\\\b\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.loop.for.apex\"}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.apex\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.apex\"}},\"patterns\":[{\"include\":\"#for-apex-syntax\"},{\"include\":\"#local-variable-declaration\"},{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#punctuation-semicolon\"},{\"include\":\"#colon-expression\"}]},{\"include\":\"#statement\"}]},\"from-clause\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.query.from.apex\"},\"2\":{\"name\":\"storage.type.apex\"}},\"match\":\"(FROM)\\\\b\\\\s*([._[:alnum:]]+\\\\b)?\"},\"goto-statement\":{\"begin\":\"(?<!\\\\.)\\\\b(goto)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.goto.apex\"}},\"end\":\"(?=;)\",\"patterns\":[{\"begin\":\"\\\\b(case)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.case.apex\"}},\"end\":\"(?=;)\",\"patterns\":[{\"include\":\"#expression\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.control.default.apex\"}},\"match\":\"\\\\b(default)\\\\b\"},{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.label.apex\"}]},\"identifier\":{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"variable.other.readwrite.apex\"},\"if-statement\":{\"begin\":\"(?<!\\\\.)\\\\b(if)\\\\b\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.conditional.if.apex\"}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.apex\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.apex\"}},\"patterns\":[{\"include\":\"#expression\"}]},{\"include\":\"#statement\"}]},\"implements-class\":{\"begin\":\"(implements)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.implements.apex\"}},\"end\":\"(?=\\\\{|extends)\",\"patterns\":[{\"begin\":\"(?=[_[:alpha:]][_[:alnum:]]*\\\\s*\\\\.)\",\"end\":\"(?=\\\\{|extends|,)\",\"patterns\":[{\"include\":\"#support-type\"},{\"include\":\"#type\"}]},{\"captures\":{\"1\":{\"name\":\"entity.name.type.implements.apex\"},\"2\":{\"name\":\"punctuation.separator.comma.apex\"}},\"match\":\"([_[:alpha:]][_[:alnum:]]*)\\\\b\\\\s*(,)?\"},{\"include\":\"#punctuation-comma\"}]},\"indexer-declaration\":{\"begin\":\"(?<return_type>(?<type_name>(?:ref\\\\s+)?(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*)*)\\\\s+)(?<interface_name>\\\\g<type_name>\\\\s*\\\\.\\\\s*)?(?<indexer_name>this)\\\\s*(?=\\\\[)\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type\"}]},\"6\":{\"patterns\":[{\"include\":\"#type\"},{\"include\":\"#punctuation-accessor\"}]},\"7\":{\"name\":\"keyword.other.this.apex\"}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#property-accessors\"},{\"include\":\"#expression-body\"},{\"include\":\"#variable-initializer\"}]},\"initializer-block\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.apex\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.apex\"}},\"patterns\":[{\"include\":\"#statement\"}]},\"initializer-expression\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.apex\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.apex\"}},\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"interface-declaration\":{\"begin\":\"(?=\\\\binterface\\\\b)\",\"end\":\"(?<=})\",\"patterns\":[{\"begin\":\"(interface)\\\\b\\\\s+(@?[_[:alpha:]][_[:alnum:]]*)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.interface.apex\"},\"2\":{\"name\":\"entity.name.type.interface.apex\"}},\"end\":\"(?=\\\\{)\",\"patterns\":[{\"include\":\"#javadoc-comment\"},{\"include\":\"#comment\"},{\"include\":\"#type-parameter-list\"},{\"include\":\"#extends-class\"}]},{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.apex\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.apex\"}},\"patterns\":[{\"include\":\"#interface-members\"}]},{\"include\":\"#javadoc-comment\"},{\"include\":\"#comment\"}]},\"interface-members\":{\"patterns\":[{\"include\":\"#javadoc-comment\"},{\"include\":\"#comment\"},{\"include\":\"#property-declaration\"},{\"include\":\"#indexer-declaration\"},{\"include\":\"#method-declaration\"},{\"include\":\"#punctuation-semicolon\"}]},\"invocation-expression\":{\"begin\":\"(?:(\\\\??\\\\.)\\\\s*)?(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(?<type_args>\\\\s*<([^<>]|\\\\g<type_args>)+>\\\\s*)?\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#punctuation-accessor\"},{\"include\":\"#operator-safe-navigation\"}]},\"2\":{\"name\":\"entity.name.function.apex\"},\"3\":{\"patterns\":[{\"include\":\"#type-arguments\"}]}},\"end\":\"(?<=\\\\))\",\"patterns\":[{\"include\":\"#argument-list\"}]},\"javadoc-comment\":{\"patterns\":[{\"begin\":\"^\\\\s*(/\\\\*\\\\*)(?!/)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.comment.apex\"}},\"end\":\"\\\\*/\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.apex\"}},\"name\":\"comment.block.javadoc.apex\",\"patterns\":[{\"match\":\"@(deprecated|author|return|see|serial|since|version|usage|name|link)\\\\b\",\"name\":\"keyword.other.documentation.javadoc.apex\"},{\"captures\":{\"1\":{\"name\":\"keyword.other.documentation.javadoc.apex\"},\"2\":{\"name\":\"entity.name.variable.parameter.apex\"}},\"match\":\"(@param)\\\\s+(\\\\S+)\"},{\"captures\":{\"1\":{\"name\":\"keyword.other.documentation.javadoc.apex\"},\"2\":{\"name\":\"entity.name.type.class.apex\"}},\"match\":\"(@(?:exception|throws))\\\\s+(\\\\S+)\"},{\"captures\":{\"1\":{\"name\":\"string.quoted.single.apex\"}},\"match\":\"(`([^`]+?)`)\"}]}]},\"literal\":{\"patterns\":[{\"include\":\"#boolean-literal\"},{\"include\":\"#null-literal\"},{\"include\":\"#numeric-literal\"},{\"include\":\"#string-literal\"}]},\"local-constant-declaration\":{\"begin\":\"\\\\b(?<const_keyword>const)\\\\b\\\\s*(?<type_name>(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*)*)\\\\s+(\\\\g<identifier>)\\\\s*(?=[,;=])\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.apex\"},\"2\":{\"patterns\":[{\"include\":\"#type\"}]},\"6\":{\"name\":\"entity.name.variable.local.apex\"}},\"end\":\"(?=;)\",\"patterns\":[{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.variable.local.apex\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#comment\"},{\"include\":\"#variable-initializer\"}]},\"local-declaration\":{\"patterns\":[{\"include\":\"#local-constant-declaration\"},{\"include\":\"#local-variable-declaration\"}]},\"local-variable-declaration\":{\"begin\":\"(?:(?:\\\\b(ref)\\\\s+)?\\\\b(var)\\\\b|(?<type_name>(?:ref\\\\s+)?(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*)*))\\\\s+(\\\\g<identifier>)\\\\s*(?=[),;=])\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.apex\"},\"2\":{\"name\":\"keyword.other.var.apex\"},\"3\":{\"patterns\":[{\"include\":\"#support-type\"},{\"include\":\"#type\"}]},\"7\":{\"name\":\"entity.name.variable.local.apex\"}},\"end\":\"(?=[);])\",\"patterns\":[{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.variable.local.apex\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#comment\"},{\"include\":\"#variable-initializer\"}]},\"member-access-expression\":{\"patterns\":[{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#punctuation-accessor\"},{\"include\":\"#operator-safe-navigation\"}]},\"2\":{\"name\":\"variable.other.object.property.apex\"}},\"match\":\"(\\\\??\\\\.)\\\\s*(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(?![(_[:alnum:]]|(\\\\?)?\\\\[|<)\"},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#punctuation-accessor\"},{\"include\":\"#operator-safe-navigation\"}]},\"2\":{\"name\":\"variable.other.object.apex\"},\"3\":{\"patterns\":[{\"include\":\"#type-arguments\"}]}},\"match\":\"(\\\\??\\\\.)?\\\\s*(@?[_[:alpha:]][_[:alnum:]]*)(?<type_params>\\\\s*<([^<>]|\\\\g<type_params>)+>\\\\s*)(?=(\\\\s*\\\\?)?\\\\s*\\\\.\\\\s*@?[_[:alpha:]][_[:alnum:]]*)\"},{\"captures\":{\"1\":{\"name\":\"variable.other.object.apex\"}},\"match\":\"(@?[_[:alpha:]][_[:alnum:]]*)(?=(\\\\s*\\\\?)?\\\\s*\\\\.\\\\s*@?[_[:alpha:]][_[:alnum:]]*)\"}]},\"merge-expression\":{\"begin\":\"(merge)\\\\b\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"support.function.apex\"}},\"end\":\"(?<=;)\",\"patterns\":[{\"include\":\"#object-creation-expression\"},{\"include\":\"#merge-type-statement\"},{\"include\":\"#expression\"},{\"include\":\"#punctuation-semicolon\"}]},\"merge-type-statement\":{\"captures\":{\"1\":{\"name\":\"variable.other.readwrite.apex\"},\"2\":{\"name\":\"variable.other.readwrite.apex\"},\"3\":{\"name\":\"punctuation.terminator.statement.apex\"}},\"match\":\"([_[:alpha:]]*)\\\\b\\\\s+([_[:alpha:]]*)\\\\b\\\\s*(;)\"},\"method-declaration\":{\"begin\":\"(?<return_type>(?<type_name>(?:ref\\\\s+)?(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*)*)\\\\s+)(?<interface_name>\\\\g<type_name>\\\\s*\\\\.\\\\s*)?(\\\\g<identifier>)\\\\s*(<([^<>]+)>)?\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#support-type\"},{\"include\":\"#type\"}]},\"6\":{\"patterns\":[{\"include\":\"#type\"},{\"include\":\"#punctuation-accessor\"}]},\"7\":{\"patterns\":[{\"include\":\"#support-type\"},{\"include\":\"#method-name-custom\"}]},\"8\":{\"patterns\":[{\"include\":\"#type-parameter-list\"}]}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#parenthesized-parameter-list\"},{\"include\":\"#expression-body\"},{\"include\":\"#block\"}]},\"method-name-custom\":{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.function.apex\"},\"named-argument\":{\"begin\":\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(:)\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.variable.parameter.apex\"},\"2\":{\"name\":\"punctuation.separator.colon.apex\"}},\"end\":\"(?=([]),]))\",\"patterns\":[{\"include\":\"#expression\"}]},\"null-literal\":{\"match\":\"(?<!\\\\.)\\\\bnull\\\\b\",\"name\":\"constant.language.null.apex\"},\"numeric-literal\":{\"patterns\":[{\"match\":\"\\\\b(\\\\d{4}-\\\\d{2}-\\\\d{2}T\\\\d{2}:\\\\d{2}:\\\\d{2}(\\\\.\\\\d{1,3})?([-+])\\\\d{2}:\\\\d{2})\\\\b\",\"name\":\"constant.numeric.datetime.apex\"},{\"match\":\"\\\\b(\\\\d{4}-\\\\d{2}-\\\\d{2}T\\\\d{2}:\\\\d{2}:\\\\d{2}(\\\\.\\\\d{1,3})?(Z)?)\\\\b\",\"name\":\"constant.numeric.datetime.apex\"},{\"match\":\"\\\\b(\\\\d{4}-\\\\d{2}-\\\\d{2})\\\\b\",\"name\":\"constant.numeric.date.apex\"},{\"match\":\"\\\\b0([Xx])[_\\\\h]+([LUlu]|UL|Ul|uL|ul|LU|Lu|lU|lu)?\\\\b\",\"name\":\"constant.numeric.hex.apex\"},{\"match\":\"\\\\b0([Bb])[01_]+([LUlu]|UL|Ul|uL|ul|LU|Lu|lU|lu)?\\\\b\",\"name\":\"constant.numeric.binary.apex\"},{\"match\":\"\\\\b([0-9_]+)?\\\\.[0-9_]+(([Ee])[0-9]+)?([DFMdfm])?\\\\b\",\"name\":\"constant.numeric.decimal.apex\"},{\"match\":\"\\\\b[0-9_]+([Ee])[0-9_]+([DFMdfm])?\\\\b\",\"name\":\"constant.numeric.decimal.apex\"},{\"match\":\"\\\\b[0-9_]+([DFMdfm])\\\\b\",\"name\":\"constant.numeric.decimal.apex\"},{\"match\":\"\\\\b[0-9_]+([LUlu]|UL|Ul|uL|ul|LU|Lu|lU|lu)?\\\\b\",\"name\":\"constant.numeric.decimal.apex\"}]},\"object-creation-expression\":{\"patterns\":[{\"include\":\"#object-creation-expression-with-parameters\"},{\"include\":\"#object-creation-expression-with-no-parameters\"},{\"include\":\"#punctuation-comma\"}]},\"object-creation-expression-with-no-parameters\":{\"captures\":{\"1\":{\"name\":\"support.function.apex\"},\"2\":{\"name\":\"keyword.control.new.apex\"},\"3\":{\"patterns\":[{\"include\":\"#support-type\"},{\"include\":\"#type\"}]}},\"match\":\"(delete|insert|undelete|update|upsert)?\\\\s*(new)\\\\s+(?<type_name>(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*)*)\\\\s*(?=\\\\{|$)\"},\"object-creation-expression-with-parameters\":{\"begin\":\"(delete|insert|undelete|update|upsert)?\\\\s*(new)\\\\s+(?<type_name>(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*)*)\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"support.function.apex\"},\"2\":{\"name\":\"keyword.control.new.apex\"},\"3\":{\"patterns\":[{\"include\":\"#support-type\"},{\"include\":\"#type\"}]}},\"end\":\"(?<=\\\\))\",\"patterns\":[{\"include\":\"#argument-list\"}]},\"operator-assignment\":{\"match\":\"(?<![!=])(=)(?!=)\",\"name\":\"keyword.operator.assignment.apex\"},\"operator-safe-navigation\":{\"match\":\"\\\\?\\\\.\",\"name\":\"keyword.operator.safe-navigation.apex\"},\"orderby-clause\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.query.orderby.apex\"}},\"match\":\"\\\\b(ORDER BY)\\\\b\\\\s*\",\"patterns\":[{\"include\":\"#ordering-direction\"},{\"include\":\"#ordering-nulls\"}]},\"ordering-direction\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.query.ascending.apex\"},\"2\":{\"name\":\"keyword.operator.query.descending.apex\"}},\"match\":\"\\\\b(?:(ASC)|(DESC))\\\\b\"},\"ordering-nulls\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.query.nullsfirst.apex\"},\"2\":{\"name\":\"keyword.operator.query.nullslast.apex\"}},\"match\":\"\\\\b(?:(NULLS FIRST)|(NULLS LAST))\\\\b\"},\"parameter\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.apex\"},\"2\":{\"patterns\":[{\"include\":\"#support-type\"},{\"include\":\"#type\"}]},\"6\":{\"name\":\"entity.name.variable.parameter.apex\"}},\"match\":\"(?:\\\\b(this|final)\\\\b\\\\s+)?(?<type_name>(?:ref\\\\s+)?(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*)*)\\\\s+(\\\\g<identifier>)\"},\"parenthesized-expression\":{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.apex\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.apex\"}},\"patterns\":[{\"include\":\"#expression\"}]},\"parenthesized-parameter-list\":{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.apex\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.apex\"}},\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#parameter\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#variable-initializer\"}]},\"property-accessors\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.apex\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.apex\"}},\"patterns\":[{\"match\":\"\\\\b(pr(?:ivate|otected))\\\\b\",\"name\":\"storage.modifier.apex\"},{\"match\":\"\\\\b(get)\\\\b\",\"name\":\"keyword.other.get.apex\"},{\"match\":\"\\\\b(set)\\\\b\",\"name\":\"keyword.other.set.apex\"},{\"include\":\"#comment\"},{\"include\":\"#expression-body\"},{\"include\":\"#block\"},{\"include\":\"#punctuation-semicolon\"}]},\"property-declaration\":{\"begin\":\"(?!.*\\\\b(?:class|interface|enum)\\\\b)\\\\s*(?<return_type>(?<type_name>(?:ref\\\\s+)?(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*)*)\\\\s+)(?<interface_name>\\\\g<type_name>\\\\s*\\\\.\\\\s*)?(?<property_name>\\\\g<identifier>)\\\\s*(?=\\\\{|=>|$)\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type\"}]},\"6\":{\"patterns\":[{\"include\":\"#type\"},{\"include\":\"#punctuation-accessor\"}]},\"7\":{\"name\":\"entity.name.variable.property.apex\"}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#property-accessors\"},{\"include\":\"#expression-body\"},{\"include\":\"#variable-initializer\"},{\"include\":\"#class-or-trigger-members\"}]},\"punctuation-accessor\":{\"match\":\"\\\\.\",\"name\":\"punctuation.accessor.apex\"},\"punctuation-comma\":{\"match\":\",\",\"name\":\"punctuation.separator.comma.apex\"},\"punctuation-semicolon\":{\"match\":\";\",\"name\":\"punctuation.terminator.statement.apex\"},\"query-operators\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.query.apex\"}},\"match\":\"\\\\b(ABOVE|AND|AT|FOR REFERENCE|FOR UPDATE|FOR VIEW|GROUP BY|HAVING|IN|LIKE|LIMIT|NOT IN|NOT|OFFSET|OR|TYPEOF|UPDATE TRACKING|UPDATE VIEWSTAT|WITH DATA CATEGORY|WITH)\\\\b\\\\s*\"},\"return-statement\":{\"begin\":\"(?<!\\\\.)\\\\b(return)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.flow.return.apex\"}},\"end\":\"(?=;)\",\"patterns\":[{\"include\":\"#expression\"}]},\"script-top-level\":{\"patterns\":[{\"include\":\"#method-declaration\"},{\"include\":\"#statement\"},{\"include\":\"#punctuation-semicolon\"}]},\"sharing-modifier\":{\"match\":\"(?<!\\\\.)\\\\b((?:with|without|inherited) sharing)\\\\b\",\"name\":\"sharing.modifier.apex\"},\"soql-colon-method-statement\":{\"begin\":\"(:?\\\\.)?([_[:alpha:]][_[:alnum:]]*)(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.accessor.apex\"},\"2\":{\"name\":\"entity.name.function.apex\"}},\"end\":\"(?<=\\\\))\",\"patterns\":[{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.apex\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.apex\"}},\"patterns\":[{\"include\":\"#expression\"}]},{\"include\":\"#statement\"}]},\"soql-colon-vars\":{\"begin\":\"(:)\\\\s*\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.conditional.colon.apex\"}},\"end\":\"(?![(_[:alnum:]]|(\\\\?)?\\\\[|<)\",\"patterns\":[{\"include\":\"#trigger-context-declaration\"},{\"captures\":{\"1\":{\"name\":\"variable.other.object.apex\"},\"2\":{\"patterns\":[{\"include\":\"#punctuation-accessor\"},{\"include\":\"#operator-safe-navigation\"}]}},\"match\":\"([_[:alpha:]][_[:alnum:]]*)(\\\\??\\\\.)\"},{\"include\":\"#soql-colon-method-statement\"},{\"match\":\"[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.variable.local.apex\"}]},\"soql-functions\":{\"begin\":\"\\\\b(AVG|CALENDAR_MONTH|CALENDAR_QUARTER|CALENDAR_YEAR|convertCurrency|convertTimezone|COUNT|COUNT_DISTINCT|DAY_IN_MONTH|DAY_IN_WEEK|DAY_IN_YEAR|DAY_ONLY|toLabel|INCLUDES|EXCLUDES|FISCAL_MONTH|FISCAL_QUARTER|FISCAL_YEAR|FORMAT|GROUPING|GROUP BY CUBE|GROUP BY ROLLUP|HOUR_IN_DAY|MAX|MIN|SUM|WEEK_IN_MONTH|WEEK_IN_YEAR)\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"support.function.query.apex\"},\"2\":{\"name\":\"punctuation.parenthesis.open.apex\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.apex\"}},\"patterns\":[{\"include\":\"#literal\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#soql-functions\"},{\"match\":\"[._[:alpha:]][._[:alnum:]]*\",\"name\":\"keyword.query.field.apex\"}]},\"soql-group-clauses\":{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.apex\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.apex\"}},\"patterns\":[{\"include\":\"#soql-query-expression\"},{\"include\":\"#soql-colon-vars\"},{\"include\":\"#soql-group-clauses\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#operator-assignment\"},{\"include\":\"#literal\"},{\"include\":\"#query-operators\"},{\"include\":\"#date-literals\"},{\"include\":\"#date-literal-with-params\"},{\"include\":\"#using-scope\"},{\"match\":\"[._[:alpha:]][._[:alnum:]]*\",\"name\":\"keyword.query.field.apex\"}]},\"soql-query-body\":{\"patterns\":[{\"include\":\"#trigger-context-declaration\"},{\"include\":\"#soql-colon-vars\"},{\"include\":\"#soql-functions\"},{\"include\":\"#from-clause\"},{\"include\":\"#where-clause\"},{\"include\":\"#query-operators\"},{\"include\":\"#date-literals\"},{\"include\":\"#date-literal-with-params\"},{\"include\":\"#using-scope\"},{\"include\":\"#soql-group-clauses\"},{\"include\":\"#orderby-clause\"},{\"include\":\"#ordering-direction\"},{\"include\":\"#ordering-nulls\"}]},\"soql-query-expression\":{\"begin\":\"\\\\b(SELECT)\\\\b\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.query.select.apex\"}},\"end\":\"(?=;)|(?=])|(?=\\\\))\",\"patterns\":[{\"include\":\"#soql-query-body\"},{\"include\":\"#comment\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#operator-assignment\"},{\"include\":\"#parenthesized-expression\"},{\"include\":\"#expression-operators\"},{\"include\":\"#literal\"},{\"captures\":{\"1\":{\"name\":\"keyword.query.field.apex\"},\"2\":{\"name\":\"punctuation.separator.comma.apex\"}},\"match\":\"([._[:alpha:]][._[:alnum:]]*)\\\\s*(,)?\"}]},\"statement\":{\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#while-statement\"},{\"include\":\"#do-statement\"},{\"include\":\"#for-statement\"},{\"include\":\"#switch-statement\"},{\"include\":\"#when-else-statement\"},{\"include\":\"#when-sobject-statement\"},{\"include\":\"#when-statement\"},{\"include\":\"#when-multiple-statement\"},{\"include\":\"#if-statement\"},{\"include\":\"#else-part\"},{\"include\":\"#goto-statement\"},{\"include\":\"#return-statement\"},{\"include\":\"#break-or-continue-statement\"},{\"include\":\"#throw-statement\"},{\"include\":\"#try-statement\"},{\"include\":\"#soql-query-expression\"},{\"include\":\"#local-declaration\"},{\"include\":\"#block\"},{\"include\":\"#expression\"},{\"include\":\"#punctuation-semicolon\"}]},\"storage-modifier\":{\"match\":\"(?<!\\\\.)\\\\b(new|public|protected|private|abstract|virtual|override|global|static|final|transient)\\\\b\",\"name\":\"storage.modifier.apex\"},\"string-character-escape\":{\"match\":\"\\\\\\\\.\",\"name\":\"constant.character.escape.apex\"},\"string-literal\":{\"begin\":\"'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.apex\"}},\"end\":\"(')|([^\\\\n\\\\\\\\])$\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.apex\"},\"2\":{\"name\":\"invalid.illegal.newline.apex\"}},\"name\":\"string.quoted.single.apex\",\"patterns\":[{\"include\":\"#string-character-escape\"}]},\"support-arguments\":{\"begin\":\"<\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.typeparameters.begin.apex\"}},\"end\":\">\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.typeparameters.end.apex\"}},\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#support-type\"},{\"include\":\"#punctuation-comma\"}]},\"support-class\":{\"captures\":{\"1\":{\"name\":\"support.class.apex\"}},\"match\":\"\\\\b(ApexPages|Database|DMLException|Exception|PageReference|Savepoint|SchedulableContext|Schema|SObject|System|Test)\\\\b\"},\"support-expression\":{\"begin\":\"(ApexPages|Database|DMLException|Exception|PageReference|Savepoint|SchedulableContext|Schema|SObject|System|Test)(?=[.\\\\s])\",\"beginCaptures\":{\"1\":{\"name\":\"support.class.apex\"}},\"end\":\"(?<=\\\\)|$)|(?=})|(?=;)|(?=\\\\)|(?=]))|(?=,)\",\"patterns\":[{\"include\":\"#support-type\"},{\"captures\":{\"1\":{\"name\":\"punctuation.accessor.apex\"},\"2\":{\"name\":\"support.function.apex\"}},\"match\":\"(\\\\.)(\\\\p{alpha}*)(?=\\\\()\"},{\"captures\":{\"1\":{\"name\":\"punctuation.accessor.apex\"},\"2\":{\"name\":\"support.type.apex\"}},\"match\":\"(\\\\.)(\\\\p{alpha}+)\"},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.apex\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.apex\"}},\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},{\"include\":\"#comment\"},{\"include\":\"#statement\"}]},\"support-functions\":{\"captures\":{\"1\":{\"name\":\"support.function.apex\"}},\"match\":\"\\\\b(delete|execute|finish|insert|start|undelete|update|upsert)\\\\b\"},\"support-name\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.accessor.apex\"},\"2\":{\"name\":\"support.function.apex\"}},\"match\":\"(\\\\.)\\\\s*(\\\\p{alpha}*)(?=\\\\()\"},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.apex\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.apex\"}},\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},{\"captures\":{\"1\":{\"name\":\"punctuation.accessor.apex\"},\"2\":{\"name\":\"support.type.apex\"}},\"match\":\"(\\\\.)\\\\s*([_[:alpha:]]*)\"}]},\"support-type\":{\"name\":\"support.apex\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#support-class\"},{\"include\":\"#support-functions\"},{\"include\":\"#support-name\"}]},\"switch-statement\":{\"begin\":\"(switch)\\\\b\\\\s+(on)\\\\b\\\\s+(.*)(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.switch.apex\"},\"2\":{\"name\":\"keyword.control.switch.on.apex\"},\"3\":{\"patterns\":[{\"include\":\"#statement\"},{\"include\":\"#parenthesized-expression\"}]},\"4\":{\"name\":\"punctuation.curlybrace.open.apex\"}},\"end\":\"(})\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.apex\"}},\"patterns\":[{\"include\":\"#when-string\"},{\"include\":\"#when-else-statement\"},{\"include\":\"#when-sobject-statement\"},{\"include\":\"#when-statement\"},{\"include\":\"#when-multiple-statement\"},{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#punctuation-semicolon\"}]},\"this-expression\":{\"captures\":{\"1\":{\"name\":\"keyword.other.this.apex\"}},\"match\":\"\\\\b(this)\\\\b\"},\"throw-expression\":{\"captures\":{\"1\":{\"name\":\"keyword.control.flow.throw.apex\"}},\"match\":\"(?<!\\\\.)\\\\b(throw)\\\\b\"},\"throw-statement\":{\"begin\":\"(?<!\\\\.)\\\\b(throw)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.flow.throw.apex\"}},\"end\":\"(?=;)\",\"patterns\":[{\"include\":\"#expression\"}]},\"trigger-context-declaration\":{\"begin\":\"\\\\b(Trigger)\\\\b(\\\\.)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"support.class.trigger.apex\"},\"2\":{\"name\":\"punctuation.accessor.apex\"}},\"end\":\"(?=})|(?=;)|(?=\\\\)|(?=]))\",\"patterns\":[{\"match\":\"\\\\b(isExecuting|isInsert|isUpdate|isDelete|isBefore|isAfter|isUndelete|new|newMap|old|oldMap|size)\\\\b\",\"name\":\"support.type.trigger.apex\"},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#punctuation-accessor\"},{\"include\":\"#operator-safe-navigation\"}]},\"2\":{\"name\":\"support.function.trigger.apex\"}},\"match\":\"(\\\\??\\\\.)(\\\\p{alpha}+)(?=\\\\()\"},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.apex\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.apex\"}},\"patterns\":[{\"include\":\"#trigger-type-statement\"},{\"include\":\"#javadoc-comment\"},{\"include\":\"#comment\"},{\"include\":\"#expression\"}]},{\"include\":\"#expression\"}]},\"trigger-declaration\":{\"begin\":\"(?=\\\\btrigger\\\\b)\",\"end\":\"(?<=})\",\"patterns\":[{\"begin\":\"\\\\b(trigger)\\\\b\\\\s+(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\b(on)\\\\b\\\\s+([_[:alpha:]][_[:alnum:]]*)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.trigger.apex\"},\"2\":{\"name\":\"entity.name.type.trigger.apex\"},\"3\":{\"name\":\"keyword.operator.trigger.on.apex\"},\"4\":{\"name\":\"storage.type.apex\"}},\"end\":\"(?=\\\\{)\",\"patterns\":[{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.apex\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.apex\"}},\"patterns\":[{\"include\":\"#trigger-type-statement\"},{\"include\":\"#trigger-operator-statement\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#expression\"}]},{\"include\":\"#javadoc-comment\"},{\"include\":\"#comment\"},{\"include\":\"#type-parameter-list\"}]},{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.apex\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.apex\"}},\"patterns\":[{\"include\":\"#statement\"},{\"include\":\"#class-or-trigger-members\"}]},{\"include\":\"#javadoc-comment\"},{\"include\":\"#comment\"}]},\"trigger-operator-statement\":{\"match\":\"\\\\b(insert|update|delete|merge|upsert|undelete)\\\\b\",\"name\":\"keyword.operator.trigger.apex\"},\"trigger-type-statement\":{\"captures\":{\"1\":{\"name\":\"keyword.control.trigger.before.apex\"},\"2\":{\"name\":\"keyword.control.trigger.after.apex\"}},\"match\":\"\\\\b(?:(before)|(after))\\\\b\"},\"try-block\":{\"begin\":\"(?<!\\\\.)\\\\b(try)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.try.apex\"}},\"end\":\"(?<=})\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#block\"}]},\"try-statement\":{\"patterns\":[{\"include\":\"#try-block\"},{\"include\":\"#catch-clause\"},{\"include\":\"#finally-clause\"}]},\"type\":{\"name\":\"meta.type.apex\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#type-builtin\"},{\"include\":\"#type-name\"},{\"include\":\"#type-arguments\"},{\"include\":\"#type-array-suffix\"},{\"include\":\"#type-nullable-suffix\"}]},\"type-arguments\":{\"begin\":\"<\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.typeparameters.begin.apex\"}},\"end\":\">\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.typeparameters.end.apex\"}},\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#support-type\"},{\"include\":\"#type\"},{\"include\":\"#punctuation-comma\"}]},\"type-array-suffix\":{\"begin\":\"\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.squarebracket.open.apex\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.squarebracket.close.apex\"}},\"patterns\":[{\"include\":\"#punctuation-comma\"}]},\"type-builtin\":{\"captures\":{\"1\":{\"name\":\"keyword.type.apex\"}},\"match\":\"\\\\b(Blob|Boolean|byte|Date|Datetime|Decimal|Double|Id|ID|Integer|Long|Object|String|Time|void)\\\\b\"},\"type-declarations\":{\"patterns\":[{\"include\":\"#javadoc-comment\"},{\"include\":\"#comment\"},{\"include\":\"#annotation-declaration\"},{\"include\":\"#storage-modifier\"},{\"include\":\"#sharing-modifier\"},{\"include\":\"#class-declaration\"},{\"include\":\"#enum-declaration\"},{\"include\":\"#interface-declaration\"},{\"include\":\"#trigger-declaration\"},{\"include\":\"#punctuation-semicolon\"}]},\"type-name\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"storage.type.apex\"},\"2\":{\"name\":\"punctuation.accessor.apex\"}},\"match\":\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(\\\\.)\"},{\"captures\":{\"1\":{\"name\":\"punctuation.accessor.apex\"},\"2\":{\"name\":\"storage.type.apex\"}},\"match\":\"(\\\\.)\\\\s*(@?[_[:alpha:]][_[:alnum:]]*)\"},{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"storage.type.apex\"}]},\"type-nullable-suffix\":{\"captures\":{\"0\":{\"name\":\"punctuation.separator.question-mark.apex\"}},\"match\":\"\\\\?\"},\"type-parameter-list\":{\"begin\":\"<\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.typeparameters.begin.apex\"}},\"end\":\">\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.typeparameters.end.apex\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.name.type.type-parameter.apex\"}},\"match\":\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\b\"},{\"include\":\"#comment\"},{\"include\":\"#punctuation-comma\"}]},\"using-scope\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.query.using.apex\"}},\"match\":\"((USING SCOPE)\\\\b\\\\s*(Delegated|Everything|Mine|My_Territory|My_Team_Territory|Team))\\\\b\\\\s*\"},\"variable-initializer\":{\"begin\":\"(?<![!=])(=)(?![=>])\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.assignment.apex\"}},\"end\":\"(?=[]),;}])\",\"patterns\":[{\"include\":\"#expression\"}]},\"when-else-statement\":{\"begin\":\"(when)\\\\b\\\\s+(else)\\\\b\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.switch.when.apex\"},\"2\":{\"name\":\"keyword.control.switch.else.apex\"}},\"end\":\"(?=})|(?=when\\\\b)\",\"patterns\":[{\"include\":\"#block\"},{\"include\":\"#expression\"}]},\"when-multiple-statement\":{\"begin\":\"(when)\\\\b\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.switch.when.apex\"}},\"end\":\"(?=})|(?=when\\\\b)\",\"patterns\":[{\"include\":\"#block\"},{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"when-sobject-statement\":{\"begin\":\"(when)\\\\b\\\\s+([_[:alnum:]]+)\\\\s+([_[:alnum:]]+)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.switch.when.apex\"},\"2\":{\"name\":\"storage.type.apex\"},\"3\":{\"name\":\"entity.name.variable.local.apex\"}},\"end\":\"(?=})|(?=when\\\\b)\",\"patterns\":[{\"include\":\"#block\"},{\"include\":\"#expression\"}]},\"when-statement\":{\"begin\":\"(when)\\\\b\\\\s+([-_[:alnum:]]+)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.switch.when.apex\"},\"2\":{\"patterns\":[{\"include\":\"#expression\"}]}},\"end\":\"(?=})|(?=when\\\\b)\",\"patterns\":[{\"include\":\"#block\"},{\"include\":\"#expression\"}]},\"when-string\":{\"begin\":\"(when)\\\\b\\\\s*('[^\\\\n']*')(\\\\s*(,)\\\\s*('[^\\\\n']*'))*\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.switch.when.apex\"},\"2\":{\"patterns\":[{\"include\":\"#string-literal\"}]},\"4\":{\"patterns\":[{\"include\":\"#punctuation-comma\"}]},\"5\":{\"patterns\":[{\"include\":\"#string-literal\"}]}},\"end\":\"(?=})|(?=when\\\\b)\",\"patterns\":[{\"include\":\"#block\"},{\"include\":\"#expression\"}]},\"where-clause\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.query.where.apex\"}},\"match\":\"\\\\b(WHERE)\\\\b\\\\s*\"},\"while-statement\":{\"begin\":\"(?<!\\\\.)\\\\b(while)\\\\b\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.loop.while.apex\"}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.apex\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.apex\"}},\"patterns\":[{\"include\":\"#expression\"}]},{\"include\":\"#statement\"}]},\"xml-attribute\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.other.attribute-name.apex\"},\"2\":{\"name\":\"entity.other.attribute-name.namespace.apex\"},\"3\":{\"name\":\"punctuation.separator.colon.apex\"},\"4\":{\"name\":\"entity.other.attribute-name.localname.apex\"},\"5\":{\"name\":\"punctuation.separator.equals.apex\"}},\"match\":\"(?:^|\\\\s+)((?:([-_[:alnum:]]+)(:))?([-_[:alnum:]]+))(=)\"},{\"include\":\"#xml-string\"}]},\"xml-cdata\":{\"begin\":\"<!\\\\[CDATA\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.apex\"}},\"end\":\"]]>\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.apex\"}},\"name\":\"string.unquoted.cdata.apex\"},\"xml-character-entity\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.definition.constant.apex\"},\"3\":{\"name\":\"punctuation.definition.constant.apex\"}},\"match\":\"(&)([:_[:alpha:]][-.:_[:alnum:]]*|#\\\\d+|#x\\\\h+)(;)\",\"name\":\"constant.character.entity.apex\"},{\"match\":\"&\",\"name\":\"invalid.illegal.bad-ampersand.apex\"}]},\"xml-comment\":{\"begin\":\"<!--\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.apex\"}},\"end\":\"-->\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.apex\"}},\"name\":\"comment.block.apex\"},\"xml-doc-comment\":{\"patterns\":[{\"include\":\"#xml-comment\"},{\"include\":\"#xml-character-entity\"},{\"include\":\"#xml-cdata\"},{\"include\":\"#xml-tag\"}]},\"xml-string\":{\"patterns\":[{\"begin\":\"'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.apex\"}},\"end\":\"'\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.apex\"}},\"name\":\"string.quoted.single.apex\",\"patterns\":[{\"include\":\"#xml-character-entity\"}]},{\"begin\":\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.stringdoublequote.begin.apex\"}},\"end\":\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.stringdoublequote.end.apex\"}},\"name\":\"string.quoted.double.apex\",\"patterns\":[{\"include\":\"#xml-character-entity\"}]}]},\"xml-tag\":{\"begin\":\"(</?)((?:([-_[:alnum:]]+)(:))?([-_[:alnum:]]+))\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.tag.apex\"},\"2\":{\"name\":\"entity.name.tag.apex\"},\"3\":{\"name\":\"entity.name.tag.namespace.apex\"},\"4\":{\"name\":\"punctuation.separator.colon.apex\"},\"5\":{\"name\":\"entity.name.tag.localname.apex\"}},\"end\":\"(/?>)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.tag.apex\"}},\"name\":\"meta.tag.apex\",\"patterns\":[{\"include\":\"#xml-attribute\"}]}},\"scopeName\":\"source.apex\"}"))];
1
+ var e = [Object.freeze(JSON.parse("{\"displayName\":\"Apex\",\"fileTypes\":[\"apex\",\"cls\",\"trigger\"],\"name\":\"apex\",\"patterns\":[{\"include\":\"#javadoc-comment\"},{\"include\":\"#comment\"},{\"include\":\"#directives\"},{\"include\":\"#declarations\"},{\"include\":\"#script-top-level\"}],\"repository\":{\"annotation-declaration\":{\"begin\":\"(@[_[:alpha:]]+)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.annotation.apex\"}},\"end\":\"(?=\\\\s(?!\\\\())|(?=\\\\s*$)|(?<=\\\\s*\\\\))\",\"patterns\":[{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.apex\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.apex\"}},\"patterns\":[{\"include\":\"#expression\"}]},{\"include\":\"#statement\"}]},\"argument-list\":{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.apex\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.apex\"}},\"patterns\":[{\"include\":\"#named-argument\"},{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"array-creation-expression\":{\"begin\":\"\\\\b(new)\\\\b\\\\s*(?<type_name>(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*)*)?\\\\s*(?=\\\\[)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.new.apex\"},\"2\":{\"patterns\":[{\"include\":\"#support-type\"},{\"include\":\"#type\"}]}},\"end\":\"(?<=])\",\"patterns\":[{\"include\":\"#bracketed-argument-list\"}]},\"block\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.apex\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.apex\"}},\"patterns\":[{\"include\":\"#statement\"}]},\"boolean-literal\":{\"patterns\":[{\"match\":\"(?<!\\\\.)\\\\btrue\\\\b\",\"name\":\"constant.language.boolean.true.apex\"},{\"match\":\"(?<!\\\\.)\\\\bfalse\\\\b\",\"name\":\"constant.language.boolean.false.apex\"}]},\"bracketed-argument-list\":{\"begin\":\"\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.squarebracket.open.apex\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.squarebracket.close.apex\"}},\"patterns\":[{\"include\":\"#soql-query-expression\"},{\"include\":\"#named-argument\"},{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"break-or-continue-statement\":{\"captures\":{\"1\":{\"name\":\"keyword.control.flow.break.apex\"},\"2\":{\"name\":\"keyword.control.flow.continue.apex\"}},\"match\":\"(?<!\\\\.)\\\\b(?:(break)|(continue))\\\\b\"},\"cast-expression\":{\"captures\":{\"1\":{\"name\":\"punctuation.parenthesis.open.apex\"},\"2\":{\"patterns\":[{\"include\":\"#support-type\"},{\"include\":\"#type\"}]},\"6\":{\"name\":\"punctuation.parenthesis.close.apex\"}},\"match\":\"(\\\\()\\\\s*(?<type_name>(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*)*)\\\\s*(\\\\))(?=\\\\s*@?[(_[:alnum:]])\"},\"catch-clause\":{\"begin\":\"(?<!\\\\.)\\\\b(catch)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.try.catch.apex\"}},\"end\":\"(?<=})\",\"patterns\":[{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.apex\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.apex\"}},\"patterns\":[{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#support-type\"},{\"include\":\"#type\"}]},\"5\":{\"name\":\"entity.name.variable.local.apex\"}},\"match\":\"(?<type_name>(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*)*)\\\\s*(?:(\\\\g<identifier>)\\\\b)?\"}]},{\"include\":\"#comment\"},{\"include\":\"#block\"}]},\"class-declaration\":{\"begin\":\"(?=\\\\bclass\\\\b)\",\"end\":\"(?<=})\",\"patterns\":[{\"begin\":\"\\\\b(class)\\\\b\\\\s+(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.class.apex\"},\"2\":{\"name\":\"entity.name.type.class.apex\"}},\"end\":\"(?=\\\\{)\",\"patterns\":[{\"include\":\"#javadoc-comment\"},{\"include\":\"#comment\"},{\"include\":\"#type-parameter-list\"},{\"include\":\"#extends-class\"},{\"include\":\"#implements-class\"}]},{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.apex\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.apex\"}},\"patterns\":[{\"include\":\"#class-or-trigger-members\"}]},{\"include\":\"#javadoc-comment\"},{\"include\":\"#comment\"}]},\"class-or-trigger-members\":{\"patterns\":[{\"include\":\"#javadoc-comment\"},{\"include\":\"#comment\"},{\"include\":\"#storage-modifier\"},{\"include\":\"#sharing-modifier\"},{\"include\":\"#type-declarations\"},{\"include\":\"#field-declaration\"},{\"include\":\"#property-declaration\"},{\"include\":\"#indexer-declaration\"},{\"include\":\"#variable-initializer\"},{\"include\":\"#constructor-declaration\"},{\"include\":\"#method-declaration\"},{\"include\":\"#initializer-block\"},{\"include\":\"#punctuation-semicolon\"}]},\"colon-expression\":{\"match\":\":\",\"name\":\"keyword.operator.conditional.colon.apex\"},\"comment\":{\"patterns\":[{\"begin\":\"/\\\\*(\\\\*)?\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.apex\"}},\"end\":\"\\\\*/\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.apex\"}},\"name\":\"comment.block.apex\"},{\"begin\":\"(^\\\\s+)?(?=//)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.whitespace.comment.leading.apex\"}},\"end\":\"(?=$)\",\"patterns\":[{\"begin\":\"(?<!/)///(?!/)\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.apex\"}},\"end\":\"(?=$)\",\"name\":\"comment.block.documentation.apex\",\"patterns\":[{\"include\":\"#xml-doc-comment\"}]},{\"begin\":\"(?<!/)//(?:(?!/)|(?=//))\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.apex\"}},\"end\":\"(?=$)\",\"name\":\"comment.line.double-slash.apex\"}]}]},\"conditional-operator\":{\"begin\":\"(?<!\\\\?)\\\\?(?!\\\\?|\\\\.(?!\\\\d)|\\\\[)\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.conditional.question-mark.apex\"}},\"end\":\":\",\"endCaptures\":{\"0\":{\"name\":\"keyword.operator.conditional.colon.apex\"}},\"patterns\":[{\"include\":\"#expression\"}]},\"constructor-declaration\":{\"begin\":\"(?=@?[_[:alpha:]][_[:alnum:]]*\\\\s*\\\\()\",\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.name.function.apex\"}},\"match\":\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\b\"},{\"begin\":\"(:)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.separator.colon.apex\"}},\"end\":\"(?=\\\\{|=>)\",\"patterns\":[{\"include\":\"#constructor-initializer\"}]},{\"include\":\"#parenthesized-parameter-list\"},{\"include\":\"#comment\"},{\"include\":\"#expression-body\"},{\"include\":\"#block\"}]},\"constructor-initializer\":{\"begin\":\"\\\\b(this)\\\\b\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.this.apex\"}},\"end\":\"(?<=\\\\))\",\"patterns\":[{\"include\":\"#argument-list\"}]},\"date-literal-with-params\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.query.date.apex\"}},\"match\":\"\\\\b(((?:LAST_N_DAY|NEXT_N_DAY|NEXT_N_WEEK|LAST_N_WEEK|NEXT_N_MONTH|LAST_N_MONTH|NEXT_N_QUARTER|LAST_N_QUARTER|NEXT_N_YEAR|LAST_N_YEAR|NEXT_N_FISCAL_QUARTER|LAST_N_FISCAL_QUARTER|NEXT_N_FISCAL_YEAR|LAST_N_FISCAL_YEAR)S)\\\\s*:\\\\d+)\\\\b\"},\"date-literals\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.query.date.apex\"}},\"match\":\"\\\\b(YESTERDAY|TODAY|TOMORROW|LAST_WEEK|THIS_WEEK|NEXT_WEEK|LAST_MONTH|THIS_MONTH|NEXT_MONTH|LAST_90_DAYS|NEXT_90_DAYS|THIS_QUARTER|LAST_QUARTER|NEXT_QUARTER|THIS_YEAR|LAST_YEAR|NEXT_YEAR|THIS_FISCAL_QUARTER|LAST_FISCAL_QUARTER|NEXT_FISCAL_QUARTER|THIS_FISCAL_YEAR|LAST_FISCAL_YEAR|NEXT_FISCAL_YEAR)\\\\b\\\\s*\"},\"declarations\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"include\":\"#punctuation-semicolon\"}]},\"directives\":{\"patterns\":[{\"include\":\"#punctuation-semicolon\"}]},\"dml-expression\":{\"begin\":\"\\\\b(delete|insert|undelete|update|upsert)\\\\b\\\\s+(?!new\\\\b)\",\"beginCaptures\":{\"1\":{\"name\":\"support.function.apex\"}},\"end\":\"(?<=;)\",\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#punctuation-semicolon\"}]},\"do-statement\":{\"begin\":\"(?<!\\\\.)\\\\b(do)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.loop.do.apex\"}},\"end\":\"(?=[;}])\",\"patterns\":[{\"include\":\"#statement\"}]},\"element-access-expression\":{\"begin\":\"(?:(\\\\??\\\\.)\\\\s*)?(?:(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*)?(?:(\\\\?)\\\\s*)?(?=\\\\[)\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#punctuation-accessor\"},{\"include\":\"#operator-safe-navigation\"}]},\"2\":{\"name\":\"variable.other.object.property.apex\"},\"3\":{\"name\":\"keyword.operator.null-conditional.apex\"}},\"end\":\"(?<=])(?!\\\\s*\\\\[)\",\"patterns\":[{\"include\":\"#bracketed-argument-list\"}]},\"else-part\":{\"begin\":\"(?<!\\\\.)\\\\b(else)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.conditional.else.apex\"}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"include\":\"#statement\"}]},\"enum-declaration\":{\"begin\":\"(?=\\\\benum\\\\b)\",\"end\":\"(?<=})\",\"patterns\":[{\"begin\":\"(?=enum)\",\"end\":\"(?=\\\\{)\",\"patterns\":[{\"include\":\"#javadoc-comment\"},{\"include\":\"#comment\"},{\"captures\":{\"1\":{\"name\":\"keyword.other.enum.apex\"},\"2\":{\"name\":\"entity.name.type.enum.apex\"}},\"match\":\"(enum)\\\\s+(@?[_[:alpha:]][_[:alnum:]]*)\"}]},{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.apex\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.apex\"}},\"patterns\":[{\"include\":\"#javadoc-comment\"},{\"include\":\"#comment\"},{\"include\":\"#punctuation-comma\"},{\"begin\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"beginCaptures\":{\"0\":{\"name\":\"entity.name.variable.enum-member.apex\"}},\"end\":\"(?=([,}]))\",\"patterns\":[{\"include\":\"#javadoc-comment\"},{\"include\":\"#comment\"},{\"include\":\"#variable-initializer\"}]}]},{\"include\":\"#javadoc-comment\"},{\"include\":\"#comment\"}]},\"expression\":{\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#dml-expression\"},{\"include\":\"#merge-expression\"},{\"include\":\"#support-expression\"},{\"include\":\"#throw-expression\"},{\"include\":\"#this-expression\"},{\"include\":\"#trigger-context-declaration\"},{\"include\":\"#conditional-operator\"},{\"include\":\"#expression-operators\"},{\"include\":\"#soql-query-expression\"},{\"include\":\"#object-creation-expression\"},{\"include\":\"#array-creation-expression\"},{\"include\":\"#invocation-expression\"},{\"include\":\"#member-access-expression\"},{\"include\":\"#element-access-expression\"},{\"include\":\"#cast-expression\"},{\"include\":\"#literal\"},{\"include\":\"#parenthesized-expression\"},{\"include\":\"#initializer-expression\"},{\"include\":\"#identifier\"}]},\"expression-body\":{\"begin\":\"=>\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.arrow.apex\"}},\"end\":\"(?=[),;}])\",\"patterns\":[{\"include\":\"#expression\"}]},\"expression-operators\":{\"patterns\":[{\"match\":\"[-%*+/]=\",\"name\":\"keyword.operator.assignment.compound.apex\"},{\"match\":\"(?:[\\\\&^]|<<|>>|\\\\|)=\",\"name\":\"keyword.operator.assignment.compound.bitwise.apex\"},{\"match\":\"<<|>>\",\"name\":\"keyword.operator.bitwise.shift.apex\"},{\"match\":\"[!=]=\",\"name\":\"keyword.operator.comparison.apex\"},{\"match\":\"<=|>=|[<>]\",\"name\":\"keyword.operator.relational.apex\"},{\"match\":\"!|&&|\\\\|\\\\|\",\"name\":\"keyword.operator.logical.apex\"},{\"match\":\"[\\\\&^|~]\",\"name\":\"keyword.operator.bitwise.apex\"},{\"match\":\"=\",\"name\":\"keyword.operator.assignment.apex\"},{\"match\":\"--\",\"name\":\"keyword.operator.decrement.apex\"},{\"match\":\"\\\\+\\\\+\",\"name\":\"keyword.operator.increment.apex\"},{\"match\":\"[-%*+/]\",\"name\":\"keyword.operator.arithmetic.apex\"}]},\"extends-class\":{\"begin\":\"(extends)\\\\b\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.extends.apex\"}},\"end\":\"(?=\\\\{|implements)\",\"patterns\":[{\"begin\":\"(?=[_[:alpha:]][_[:alnum:]]*\\\\s*\\\\.)\",\"end\":\"(?=\\\\{|implements)\",\"patterns\":[{\"include\":\"#support-type\"},{\"include\":\"#type\"}]},{\"captures\":{\"1\":{\"name\":\"entity.name.type.extends.apex\"}},\"match\":\"([_[:alpha:]][_[:alnum:]]*)\"}]},\"field-declaration\":{\"begin\":\"(?<type_name>(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*)*)\\\\s+(\\\\g<identifier>)\\\\s*(?!=[=>])(?=[,;=]|$)\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#support-type\"},{\"include\":\"#type\"}]},\"5\":{\"name\":\"entity.name.variable.field.apex\"}},\"end\":\"(?=;)\",\"patterns\":[{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.variable.field.apex\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#comment\"},{\"include\":\"#variable-initializer\"},{\"include\":\"#class-or-trigger-members\"}]},\"finally-clause\":{\"begin\":\"(?<!\\\\.)\\\\b(finally)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.try.finally.apex\"}},\"end\":\"(?<=})\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#block\"}]},\"for-apex-syntax\":{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#support-type\"},{\"include\":\"#type\"}]},\"2\":{\"name\":\"entity.name.variable.local.apex\"},\"3\":{\"name\":\"keyword.operator.iterator.colon.apex\"}},\"match\":\"([._[:alpha:]][._[:alnum:]]+)\\\\s+([._[:alpha:]][._[:alnum:]]*)\\\\s*(:)\"},\"for-statement\":{\"begin\":\"(?<!\\\\.)\\\\b(for)\\\\b\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.loop.for.apex\"}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.apex\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.apex\"}},\"patterns\":[{\"include\":\"#for-apex-syntax\"},{\"include\":\"#local-variable-declaration\"},{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#punctuation-semicolon\"},{\"include\":\"#colon-expression\"}]},{\"include\":\"#statement\"}]},\"from-clause\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.query.from.apex\"},\"2\":{\"name\":\"storage.type.apex\"}},\"match\":\"(FROM)\\\\b\\\\s*([._[:alnum:]]+\\\\b)?\"},\"goto-statement\":{\"begin\":\"(?<!\\\\.)\\\\b(goto)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.goto.apex\"}},\"end\":\"(?=;)\",\"patterns\":[{\"begin\":\"\\\\b(case)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.case.apex\"}},\"end\":\"(?=;)\",\"patterns\":[{\"include\":\"#expression\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.control.default.apex\"}},\"match\":\"\\\\b(default)\\\\b\"},{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.label.apex\"}]},\"identifier\":{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"variable.other.readwrite.apex\"},\"if-statement\":{\"begin\":\"(?<!\\\\.)\\\\b(if)\\\\b\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.conditional.if.apex\"}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.apex\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.apex\"}},\"patterns\":[{\"include\":\"#expression\"}]},{\"include\":\"#statement\"}]},\"implements-class\":{\"begin\":\"(implements)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.implements.apex\"}},\"end\":\"(?=\\\\{|extends)\",\"patterns\":[{\"begin\":\"(?=[_[:alpha:]][_[:alnum:]]*\\\\s*\\\\.)\",\"end\":\"(?=\\\\{|extends|,)\",\"patterns\":[{\"include\":\"#support-type\"},{\"include\":\"#type\"}]},{\"captures\":{\"1\":{\"name\":\"entity.name.type.implements.apex\"},\"2\":{\"name\":\"punctuation.separator.comma.apex\"}},\"match\":\"([_[:alpha:]][_[:alnum:]]*)\\\\b\\\\s*(,)?\"},{\"include\":\"#punctuation-comma\"}]},\"indexer-declaration\":{\"begin\":\"(?<return_type>(?<type_name>(?:ref\\\\s+)?(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*)*)\\\\s+)(?<interface_name>\\\\g<type_name>\\\\s*\\\\.\\\\s*)?(?<indexer_name>this)\\\\s*(?=\\\\[)\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type\"}]},\"6\":{\"patterns\":[{\"include\":\"#type\"},{\"include\":\"#punctuation-accessor\"}]},\"7\":{\"name\":\"keyword.other.this.apex\"}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#property-accessors\"},{\"include\":\"#expression-body\"},{\"include\":\"#variable-initializer\"}]},\"initializer-block\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.apex\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.apex\"}},\"patterns\":[{\"include\":\"#statement\"}]},\"initializer-expression\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.apex\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.apex\"}},\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"interface-declaration\":{\"begin\":\"(?=\\\\binterface\\\\b)\",\"end\":\"(?<=})\",\"patterns\":[{\"begin\":\"(interface)\\\\b\\\\s+(@?[_[:alpha:]][_[:alnum:]]*)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.interface.apex\"},\"2\":{\"name\":\"entity.name.type.interface.apex\"}},\"end\":\"(?=\\\\{)\",\"patterns\":[{\"include\":\"#javadoc-comment\"},{\"include\":\"#comment\"},{\"include\":\"#type-parameter-list\"},{\"include\":\"#extends-class\"}]},{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.apex\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.apex\"}},\"patterns\":[{\"include\":\"#interface-members\"}]},{\"include\":\"#javadoc-comment\"},{\"include\":\"#comment\"}]},\"interface-members\":{\"patterns\":[{\"include\":\"#javadoc-comment\"},{\"include\":\"#comment\"},{\"include\":\"#property-declaration\"},{\"include\":\"#indexer-declaration\"},{\"include\":\"#method-declaration\"},{\"include\":\"#punctuation-semicolon\"}]},\"invocation-expression\":{\"begin\":\"(?:(\\\\??\\\\.)\\\\s*)?(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(?<type_args>\\\\s*<([^<>]|\\\\g<type_args>)+>\\\\s*)?\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#punctuation-accessor\"},{\"include\":\"#operator-safe-navigation\"}]},\"2\":{\"name\":\"entity.name.function.apex\"},\"3\":{\"patterns\":[{\"include\":\"#type-arguments\"}]}},\"end\":\"(?<=\\\\))\",\"patterns\":[{\"include\":\"#argument-list\"}]},\"javadoc-comment\":{\"patterns\":[{\"begin\":\"^\\\\s*(/\\\\*\\\\*)(?!/)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.comment.apex\"}},\"end\":\"\\\\*/\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.apex\"}},\"name\":\"comment.block.javadoc.apex\",\"patterns\":[{\"match\":\"@(deprecated|author|return|see|serial|since|version|usage|name|link)\\\\b\",\"name\":\"keyword.other.documentation.javadoc.apex\"},{\"captures\":{\"1\":{\"name\":\"keyword.other.documentation.javadoc.apex\"},\"2\":{\"name\":\"entity.name.variable.parameter.apex\"}},\"match\":\"(@param)\\\\s+(\\\\S+)\"},{\"captures\":{\"1\":{\"name\":\"keyword.other.documentation.javadoc.apex\"},\"2\":{\"name\":\"entity.name.type.class.apex\"}},\"match\":\"(@(?:exception|throws))\\\\s+(\\\\S+)\"},{\"captures\":{\"1\":{\"name\":\"string.quoted.single.apex\"}},\"match\":\"(`([^`]+?)`)\"}]}]},\"literal\":{\"patterns\":[{\"include\":\"#boolean-literal\"},{\"include\":\"#null-literal\"},{\"include\":\"#numeric-literal\"},{\"include\":\"#multiline-string-literal\"},{\"include\":\"#string-literal\"}]},\"local-constant-declaration\":{\"begin\":\"\\\\b(?<const_keyword>const)\\\\b\\\\s*(?<type_name>(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*)*)\\\\s+(\\\\g<identifier>)\\\\s*(?=[,;=])\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.apex\"},\"2\":{\"patterns\":[{\"include\":\"#type\"}]},\"6\":{\"name\":\"entity.name.variable.local.apex\"}},\"end\":\"(?=;)\",\"patterns\":[{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.variable.local.apex\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#comment\"},{\"include\":\"#variable-initializer\"}]},\"local-declaration\":{\"patterns\":[{\"include\":\"#local-constant-declaration\"},{\"include\":\"#local-variable-declaration\"}]},\"local-variable-declaration\":{\"begin\":\"(?:(?:\\\\b(ref)\\\\s+)?\\\\b(var)\\\\b|(?<type_name>(?:ref\\\\s+)?(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*)*))\\\\s+(\\\\g<identifier>)\\\\s*(?=[),;=])\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.apex\"},\"2\":{\"name\":\"keyword.other.var.apex\"},\"3\":{\"patterns\":[{\"include\":\"#support-type\"},{\"include\":\"#type\"}]},\"7\":{\"name\":\"entity.name.variable.local.apex\"}},\"end\":\"(?=[);])\",\"patterns\":[{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.variable.local.apex\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#comment\"},{\"include\":\"#variable-initializer\"}]},\"member-access-expression\":{\"patterns\":[{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#punctuation-accessor\"},{\"include\":\"#operator-safe-navigation\"}]},\"2\":{\"name\":\"variable.other.object.property.apex\"}},\"match\":\"(\\\\??\\\\.)\\\\s*(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(?![(_[:alnum:]]|(\\\\?)?\\\\[|<)\"},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#punctuation-accessor\"},{\"include\":\"#operator-safe-navigation\"}]},\"2\":{\"name\":\"variable.other.object.apex\"},\"3\":{\"patterns\":[{\"include\":\"#type-arguments\"}]}},\"match\":\"(\\\\??\\\\.)?\\\\s*(@?[_[:alpha:]][_[:alnum:]]*)(?<type_params>\\\\s*<([^<>]|\\\\g<type_params>)+>\\\\s*)(?=(\\\\s*\\\\?)?\\\\s*\\\\.\\\\s*@?[_[:alpha:]][_[:alnum:]]*)\"},{\"captures\":{\"1\":{\"name\":\"variable.other.object.apex\"}},\"match\":\"(@?[_[:alpha:]][_[:alnum:]]*)(?=(\\\\s*\\\\?)?\\\\s*\\\\.\\\\s*@?[_[:alpha:]][_[:alnum:]]*)\"}]},\"merge-expression\":{\"begin\":\"(merge)\\\\b\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"support.function.apex\"}},\"end\":\"(?<=;)\",\"patterns\":[{\"include\":\"#object-creation-expression\"},{\"include\":\"#merge-type-statement\"},{\"include\":\"#expression\"},{\"include\":\"#punctuation-semicolon\"}]},\"merge-type-statement\":{\"captures\":{\"1\":{\"name\":\"variable.other.readwrite.apex\"},\"2\":{\"name\":\"variable.other.readwrite.apex\"},\"3\":{\"name\":\"punctuation.terminator.statement.apex\"}},\"match\":\"([_[:alpha:]]*)\\\\b\\\\s+([_[:alpha:]]*)\\\\b\\\\s*(;)\"},\"method-declaration\":{\"begin\":\"(?<return_type>(?<type_name>(?:ref\\\\s+)?(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*)*)\\\\s+)(?<interface_name>\\\\g<type_name>\\\\s*\\\\.\\\\s*)?(\\\\g<identifier>)\\\\s*(<([^<>]+)>)?\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#support-type\"},{\"include\":\"#type\"}]},\"6\":{\"patterns\":[{\"include\":\"#type\"},{\"include\":\"#punctuation-accessor\"}]},\"7\":{\"patterns\":[{\"include\":\"#support-type\"},{\"include\":\"#method-name-custom\"}]},\"8\":{\"patterns\":[{\"include\":\"#type-parameter-list\"}]}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#parenthesized-parameter-list\"},{\"include\":\"#expression-body\"},{\"include\":\"#block\"}]},\"method-name-custom\":{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.function.apex\"},\"multiline-string-literal\":{\"begin\":\"'''\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.apex\"}},\"end\":\"'''\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.apex\"}},\"name\":\"string.quoted.single.multiline.apex\",\"patterns\":[{\"include\":\"#string-character-escape\"},{\"include\":\"#string-template-expression\"}]},\"named-argument\":{\"begin\":\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(:)\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.variable.parameter.apex\"},\"2\":{\"name\":\"punctuation.separator.colon.apex\"}},\"end\":\"(?=([]),]))\",\"patterns\":[{\"include\":\"#expression\"}]},\"null-literal\":{\"match\":\"(?<!\\\\.)\\\\bnull\\\\b\",\"name\":\"constant.language.null.apex\"},\"numeric-literal\":{\"patterns\":[{\"match\":\"\\\\b(\\\\d{4}-\\\\d{2}-\\\\d{2}T\\\\d{2}:\\\\d{2}:\\\\d{2}(\\\\.\\\\d{1,3})?([-+])\\\\d{2}:\\\\d{2})\\\\b\",\"name\":\"constant.numeric.datetime.apex\"},{\"match\":\"\\\\b(\\\\d{4}-\\\\d{2}-\\\\d{2}T\\\\d{2}:\\\\d{2}:\\\\d{2}(\\\\.\\\\d{1,3})?(Z)?)\\\\b\",\"name\":\"constant.numeric.datetime.apex\"},{\"match\":\"\\\\b(\\\\d{4}-\\\\d{2}-\\\\d{2})\\\\b\",\"name\":\"constant.numeric.date.apex\"},{\"match\":\"\\\\b0([Xx])[_\\\\h]+([LUlu]|UL|Ul|uL|ul|LU|Lu|lU|lu)?\\\\b\",\"name\":\"constant.numeric.hex.apex\"},{\"match\":\"\\\\b0([Bb])[01_]+([LUlu]|UL|Ul|uL|ul|LU|Lu|lU|lu)?\\\\b\",\"name\":\"constant.numeric.binary.apex\"},{\"match\":\"\\\\b([0-9_]+)?\\\\.[0-9_]+(([Ee])[0-9]+)?([DFMdfm])?\\\\b\",\"name\":\"constant.numeric.decimal.apex\"},{\"match\":\"\\\\b[0-9_]+([Ee])[0-9_]+([DFMdfm])?\\\\b\",\"name\":\"constant.numeric.decimal.apex\"},{\"match\":\"\\\\b[0-9_]+([DFMdfm])\\\\b\",\"name\":\"constant.numeric.decimal.apex\"},{\"match\":\"\\\\b[0-9_]+([LUlu]|UL|Ul|uL|ul|LU|Lu|lU|lu)?\\\\b\",\"name\":\"constant.numeric.decimal.apex\"}]},\"object-creation-expression\":{\"patterns\":[{\"include\":\"#object-creation-expression-with-parameters\"},{\"include\":\"#object-creation-expression-with-no-parameters\"},{\"include\":\"#punctuation-comma\"}]},\"object-creation-expression-with-no-parameters\":{\"captures\":{\"1\":{\"name\":\"support.function.apex\"},\"2\":{\"name\":\"keyword.control.new.apex\"},\"3\":{\"patterns\":[{\"include\":\"#support-type\"},{\"include\":\"#type\"}]}},\"match\":\"(delete|insert|undelete|update|upsert)?\\\\s*(new)\\\\s+(?<type_name>(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*)*)\\\\s*(?=\\\\{|$)\"},\"object-creation-expression-with-parameters\":{\"begin\":\"(delete|insert|undelete|update|upsert)?\\\\s*(new)\\\\s+(?<type_name>(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*)*)\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"support.function.apex\"},\"2\":{\"name\":\"keyword.control.new.apex\"},\"3\":{\"patterns\":[{\"include\":\"#support-type\"},{\"include\":\"#type\"}]}},\"end\":\"(?<=\\\\))\",\"patterns\":[{\"include\":\"#argument-list\"}]},\"operator-assignment\":{\"match\":\"(?<![!=])(=)(?!=)\",\"name\":\"keyword.operator.assignment.apex\"},\"operator-safe-navigation\":{\"match\":\"\\\\?\\\\.\",\"name\":\"keyword.operator.safe-navigation.apex\"},\"orderby-clause\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.query.orderby.apex\"}},\"match\":\"\\\\b(ORDER BY)\\\\b\\\\s*\",\"patterns\":[{\"include\":\"#ordering-direction\"},{\"include\":\"#ordering-nulls\"}]},\"ordering-direction\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.query.ascending.apex\"},\"2\":{\"name\":\"keyword.operator.query.descending.apex\"}},\"match\":\"\\\\b(?:(ASC)|(DESC))\\\\b\"},\"ordering-nulls\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.query.nullsfirst.apex\"},\"2\":{\"name\":\"keyword.operator.query.nullslast.apex\"}},\"match\":\"\\\\b(?:(NULLS FIRST)|(NULLS LAST))\\\\b\"},\"parameter\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.apex\"},\"2\":{\"patterns\":[{\"include\":\"#support-type\"},{\"include\":\"#type\"}]},\"6\":{\"name\":\"entity.name.variable.parameter.apex\"}},\"match\":\"(?:\\\\b(this|final)\\\\b\\\\s+)?(?<type_name>(?:ref\\\\s+)?(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*)*)\\\\s+(\\\\g<identifier>)\"},\"parenthesized-expression\":{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.apex\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.apex\"}},\"patterns\":[{\"include\":\"#expression\"}]},\"parenthesized-parameter-list\":{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.apex\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.apex\"}},\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#parameter\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#variable-initializer\"}]},\"property-accessors\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.apex\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.apex\"}},\"patterns\":[{\"match\":\"\\\\b(pr(?:ivate|otected))\\\\b\",\"name\":\"storage.modifier.apex\"},{\"match\":\"\\\\b(get)\\\\b\",\"name\":\"keyword.other.get.apex\"},{\"match\":\"\\\\b(set)\\\\b\",\"name\":\"keyword.other.set.apex\"},{\"include\":\"#comment\"},{\"include\":\"#expression-body\"},{\"include\":\"#block\"},{\"include\":\"#punctuation-semicolon\"}]},\"property-declaration\":{\"begin\":\"(?!.*\\\\b(?:class|interface|enum)\\\\b)\\\\s*(?<return_type>(?<type_name>(?:ref\\\\s+)?(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*)*)\\\\s+)(?<interface_name>\\\\g<type_name>\\\\s*\\\\.\\\\s*)?(?<property_name>\\\\g<identifier>)\\\\s*(?=\\\\{|=>|$)\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type\"}]},\"6\":{\"patterns\":[{\"include\":\"#type\"},{\"include\":\"#punctuation-accessor\"}]},\"7\":{\"name\":\"entity.name.variable.property.apex\"}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#property-accessors\"},{\"include\":\"#expression-body\"},{\"include\":\"#variable-initializer\"},{\"include\":\"#class-or-trigger-members\"}]},\"punctuation-accessor\":{\"match\":\"\\\\.\",\"name\":\"punctuation.accessor.apex\"},\"punctuation-comma\":{\"match\":\",\",\"name\":\"punctuation.separator.comma.apex\"},\"punctuation-semicolon\":{\"match\":\";\",\"name\":\"punctuation.terminator.statement.apex\"},\"query-operators\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.query.apex\"}},\"match\":\"\\\\b(ABOVE|AND|AT|FOR REFERENCE|FOR UPDATE|FOR VIEW|GROUP BY|HAVING|IN|LIKE|LIMIT|NOT IN|NOT|OFFSET|OR|TYPEOF|UPDATE TRACKING|UPDATE VIEWSTAT|WITH DATA CATEGORY|WITH)\\\\b\\\\s*\"},\"return-statement\":{\"begin\":\"(?<!\\\\.)\\\\b(return)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.flow.return.apex\"}},\"end\":\"(?=;)\",\"patterns\":[{\"include\":\"#expression\"}]},\"script-top-level\":{\"patterns\":[{\"include\":\"#method-declaration\"},{\"include\":\"#statement\"},{\"include\":\"#punctuation-semicolon\"}]},\"sharing-modifier\":{\"match\":\"(?<!\\\\.)\\\\b((?:with|without|inherited) sharing)\\\\b\",\"name\":\"sharing.modifier.apex\"},\"soql-colon-method-statement\":{\"begin\":\"(:?\\\\.)?([_[:alpha:]][_[:alnum:]]*)(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.accessor.apex\"},\"2\":{\"name\":\"entity.name.function.apex\"}},\"end\":\"(?<=\\\\))\",\"patterns\":[{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.apex\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.apex\"}},\"patterns\":[{\"include\":\"#expression\"}]},{\"include\":\"#statement\"}]},\"soql-colon-vars\":{\"begin\":\"(:)\\\\s*\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.conditional.colon.apex\"}},\"end\":\"(?![(_[:alnum:]]|(\\\\?)?\\\\[|<)\",\"patterns\":[{\"include\":\"#trigger-context-declaration\"},{\"captures\":{\"1\":{\"name\":\"variable.other.object.apex\"},\"2\":{\"patterns\":[{\"include\":\"#punctuation-accessor\"},{\"include\":\"#operator-safe-navigation\"}]}},\"match\":\"([_[:alpha:]][_[:alnum:]]*)(\\\\??\\\\.)\"},{\"include\":\"#soql-colon-method-statement\"},{\"match\":\"[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.variable.local.apex\"}]},\"soql-functions\":{\"begin\":\"\\\\b(AVG|CALENDAR_MONTH|CALENDAR_QUARTER|CALENDAR_YEAR|convertCurrency|convertTimezone|COUNT|COUNT_DISTINCT|DAY_IN_MONTH|DAY_IN_WEEK|DAY_IN_YEAR|DAY_ONLY|toLabel|INCLUDES|EXCLUDES|FISCAL_MONTH|FISCAL_QUARTER|FISCAL_YEAR|FORMAT|GROUPING|GROUP BY CUBE|GROUP BY ROLLUP|HOUR_IN_DAY|MAX|MIN|SUM|WEEK_IN_MONTH|WEEK_IN_YEAR)\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"support.function.query.apex\"},\"2\":{\"name\":\"punctuation.parenthesis.open.apex\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.apex\"}},\"patterns\":[{\"include\":\"#literal\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#soql-functions\"},{\"match\":\"[._[:alpha:]][._[:alnum:]]*\",\"name\":\"keyword.query.field.apex\"}]},\"soql-group-clauses\":{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.apex\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.apex\"}},\"patterns\":[{\"include\":\"#soql-query-expression\"},{\"include\":\"#soql-colon-vars\"},{\"include\":\"#soql-group-clauses\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#operator-assignment\"},{\"include\":\"#literal\"},{\"include\":\"#query-operators\"},{\"include\":\"#date-literals\"},{\"include\":\"#date-literal-with-params\"},{\"include\":\"#using-scope\"},{\"match\":\"[._[:alpha:]][._[:alnum:]]*\",\"name\":\"keyword.query.field.apex\"}]},\"soql-query-body\":{\"patterns\":[{\"include\":\"#trigger-context-declaration\"},{\"include\":\"#soql-colon-vars\"},{\"include\":\"#soql-functions\"},{\"include\":\"#from-clause\"},{\"include\":\"#where-clause\"},{\"include\":\"#query-operators\"},{\"include\":\"#date-literals\"},{\"include\":\"#date-literal-with-params\"},{\"include\":\"#using-scope\"},{\"include\":\"#soql-group-clauses\"},{\"include\":\"#orderby-clause\"},{\"include\":\"#ordering-direction\"},{\"include\":\"#ordering-nulls\"}]},\"soql-query-expression\":{\"begin\":\"\\\\b(SELECT)\\\\b\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.query.select.apex\"}},\"end\":\"(?=;)|(?=])|(?=\\\\))\",\"patterns\":[{\"include\":\"#soql-query-body\"},{\"include\":\"#comment\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#operator-assignment\"},{\"include\":\"#parenthesized-expression\"},{\"include\":\"#expression-operators\"},{\"include\":\"#literal\"},{\"captures\":{\"1\":{\"name\":\"keyword.query.field.apex\"},\"2\":{\"name\":\"punctuation.separator.comma.apex\"}},\"match\":\"([._[:alpha:]][._[:alnum:]]*)\\\\s*(,)?\"}]},\"statement\":{\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#while-statement\"},{\"include\":\"#do-statement\"},{\"include\":\"#for-statement\"},{\"include\":\"#switch-statement\"},{\"include\":\"#when-else-statement\"},{\"include\":\"#when-sobject-statement\"},{\"include\":\"#when-statement\"},{\"include\":\"#when-multiple-statement\"},{\"include\":\"#if-statement\"},{\"include\":\"#else-part\"},{\"include\":\"#goto-statement\"},{\"include\":\"#return-statement\"},{\"include\":\"#break-or-continue-statement\"},{\"include\":\"#throw-statement\"},{\"include\":\"#try-statement\"},{\"include\":\"#soql-query-expression\"},{\"include\":\"#local-declaration\"},{\"include\":\"#block\"},{\"include\":\"#expression\"},{\"include\":\"#punctuation-semicolon\"}]},\"storage-modifier\":{\"match\":\"(?<!\\\\.)\\\\b(new|public|protected|private|abstract|virtual|override|global|static|final|transient)\\\\b\",\"name\":\"storage.modifier.apex\"},\"string-character-escape\":{\"match\":\"\\\\\\\\.\",\"name\":\"constant.character.escape.apex\"},\"string-literal\":{\"begin\":\"'(?!'')\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.apex\"}},\"end\":\"(')|([^\\\\n\\\\\\\\])$\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.apex\"},\"2\":{\"name\":\"invalid.illegal.newline.apex\"}},\"name\":\"string.quoted.single.apex\",\"patterns\":[{\"include\":\"#string-character-escape\"},{\"include\":\"#string-template-expression\"}]},\"string-template-expression\":{\"begin\":\"\\\\$\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.template-expression.begin.apex\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.template-expression.end.apex\"}},\"name\":\"meta.template-expression.apex\",\"patterns\":[{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"variable.other.readwrite.apex\"}]},\"support-arguments\":{\"begin\":\"<\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.typeparameters.begin.apex\"}},\"end\":\">\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.typeparameters.end.apex\"}},\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#support-type\"},{\"include\":\"#punctuation-comma\"}]},\"support-class\":{\"captures\":{\"1\":{\"name\":\"support.class.apex\"}},\"match\":\"\\\\b(ApexPages|Database|DMLException|Exception|PageReference|Savepoint|SchedulableContext|Schema|SObject|System|Test)\\\\b\"},\"support-expression\":{\"begin\":\"(ApexPages|Database|DMLException|Exception|PageReference|Savepoint|SchedulableContext|Schema|SObject|System|Test)(?=[.\\\\s])\",\"beginCaptures\":{\"1\":{\"name\":\"support.class.apex\"}},\"end\":\"(?<=\\\\)|$)|(?=})|(?=;)|(?=\\\\)|(?=]))|(?=,)\",\"patterns\":[{\"include\":\"#support-type\"},{\"captures\":{\"1\":{\"name\":\"punctuation.accessor.apex\"},\"2\":{\"name\":\"support.function.apex\"}},\"match\":\"(\\\\.)(\\\\p{alpha}*)(?=\\\\()\"},{\"captures\":{\"1\":{\"name\":\"punctuation.accessor.apex\"},\"2\":{\"name\":\"support.type.apex\"}},\"match\":\"(\\\\.)(\\\\p{alpha}+)\"},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.apex\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.apex\"}},\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},{\"include\":\"#comment\"},{\"include\":\"#statement\"}]},\"support-functions\":{\"captures\":{\"1\":{\"name\":\"support.function.apex\"}},\"match\":\"\\\\b(delete|execute|finish|insert|start|undelete|update|upsert)\\\\b\"},\"support-name\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.accessor.apex\"},\"2\":{\"name\":\"support.function.apex\"}},\"match\":\"(\\\\.)\\\\s*(\\\\p{alpha}*)(?=\\\\()\"},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.apex\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.apex\"}},\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},{\"captures\":{\"1\":{\"name\":\"punctuation.accessor.apex\"},\"2\":{\"name\":\"support.type.apex\"}},\"match\":\"(\\\\.)\\\\s*([_[:alpha:]]*)\"}]},\"support-type\":{\"name\":\"support.apex\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#support-class\"},{\"include\":\"#support-functions\"},{\"include\":\"#support-name\"}]},\"switch-statement\":{\"begin\":\"(switch)\\\\b\\\\s+(on)\\\\b\\\\s+(.*)(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.switch.apex\"},\"2\":{\"name\":\"keyword.control.switch.on.apex\"},\"3\":{\"patterns\":[{\"include\":\"#statement\"},{\"include\":\"#parenthesized-expression\"}]},\"4\":{\"name\":\"punctuation.curlybrace.open.apex\"}},\"end\":\"(})\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.apex\"}},\"patterns\":[{\"include\":\"#when-string\"},{\"include\":\"#when-else-statement\"},{\"include\":\"#when-sobject-statement\"},{\"include\":\"#when-statement\"},{\"include\":\"#when-multiple-statement\"},{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#punctuation-semicolon\"}]},\"this-expression\":{\"captures\":{\"1\":{\"name\":\"keyword.other.this.apex\"}},\"match\":\"\\\\b(this)\\\\b\"},\"throw-expression\":{\"captures\":{\"1\":{\"name\":\"keyword.control.flow.throw.apex\"}},\"match\":\"(?<!\\\\.)\\\\b(throw)\\\\b\"},\"throw-statement\":{\"begin\":\"(?<!\\\\.)\\\\b(throw)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.flow.throw.apex\"}},\"end\":\"(?=;)\",\"patterns\":[{\"include\":\"#expression\"}]},\"trigger-context-declaration\":{\"begin\":\"\\\\b(Trigger)\\\\b(\\\\.)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"support.class.trigger.apex\"},\"2\":{\"name\":\"punctuation.accessor.apex\"}},\"end\":\"(?=})|(?=;)|(?=\\\\)|(?=]))\",\"patterns\":[{\"match\":\"\\\\b(isExecuting|isInsert|isUpdate|isDelete|isBefore|isAfter|isUndelete|new|newMap|old|oldMap|size)\\\\b\",\"name\":\"support.type.trigger.apex\"},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#punctuation-accessor\"},{\"include\":\"#operator-safe-navigation\"}]},\"2\":{\"name\":\"support.function.trigger.apex\"}},\"match\":\"(\\\\??\\\\.)(\\\\p{alpha}+)(?=\\\\()\"},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.apex\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.apex\"}},\"patterns\":[{\"include\":\"#trigger-type-statement\"},{\"include\":\"#javadoc-comment\"},{\"include\":\"#comment\"},{\"include\":\"#expression\"}]},{\"include\":\"#expression\"}]},\"trigger-declaration\":{\"begin\":\"(?=\\\\btrigger\\\\b)\",\"end\":\"(?<=})\",\"patterns\":[{\"begin\":\"\\\\b(trigger)\\\\b\\\\s+(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\b(on)\\\\b\\\\s+([_[:alpha:]][_[:alnum:]]*)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.trigger.apex\"},\"2\":{\"name\":\"entity.name.type.trigger.apex\"},\"3\":{\"name\":\"keyword.operator.trigger.on.apex\"},\"4\":{\"name\":\"storage.type.apex\"}},\"end\":\"(?=\\\\{)\",\"patterns\":[{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.apex\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.apex\"}},\"patterns\":[{\"include\":\"#trigger-type-statement\"},{\"include\":\"#trigger-operator-statement\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#expression\"}]},{\"include\":\"#javadoc-comment\"},{\"include\":\"#comment\"},{\"include\":\"#type-parameter-list\"}]},{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.apex\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.apex\"}},\"patterns\":[{\"include\":\"#statement\"},{\"include\":\"#class-or-trigger-members\"}]},{\"include\":\"#javadoc-comment\"},{\"include\":\"#comment\"}]},\"trigger-operator-statement\":{\"match\":\"\\\\b(insert|update|delete|merge|upsert|undelete)\\\\b\",\"name\":\"keyword.operator.trigger.apex\"},\"trigger-type-statement\":{\"captures\":{\"1\":{\"name\":\"keyword.control.trigger.before.apex\"},\"2\":{\"name\":\"keyword.control.trigger.after.apex\"}},\"match\":\"\\\\b(?:(before)|(after))\\\\b\"},\"try-block\":{\"begin\":\"(?<!\\\\.)\\\\b(try)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.try.apex\"}},\"end\":\"(?<=})\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#block\"}]},\"try-statement\":{\"patterns\":[{\"include\":\"#try-block\"},{\"include\":\"#catch-clause\"},{\"include\":\"#finally-clause\"}]},\"type\":{\"name\":\"meta.type.apex\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#type-builtin\"},{\"include\":\"#type-name\"},{\"include\":\"#type-arguments\"},{\"include\":\"#type-array-suffix\"},{\"include\":\"#type-nullable-suffix\"}]},\"type-arguments\":{\"begin\":\"<\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.typeparameters.begin.apex\"}},\"end\":\">\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.typeparameters.end.apex\"}},\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#support-type\"},{\"include\":\"#type\"},{\"include\":\"#punctuation-comma\"}]},\"type-array-suffix\":{\"begin\":\"\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.squarebracket.open.apex\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.squarebracket.close.apex\"}},\"patterns\":[{\"include\":\"#punctuation-comma\"}]},\"type-builtin\":{\"captures\":{\"1\":{\"name\":\"keyword.type.apex\"}},\"match\":\"\\\\b(Blob|Boolean|byte|Date|Datetime|Decimal|Double|Id|ID|Integer|Long|Object|String|Time|void)\\\\b\"},\"type-declarations\":{\"patterns\":[{\"include\":\"#javadoc-comment\"},{\"include\":\"#comment\"},{\"include\":\"#annotation-declaration\"},{\"include\":\"#storage-modifier\"},{\"include\":\"#sharing-modifier\"},{\"include\":\"#class-declaration\"},{\"include\":\"#enum-declaration\"},{\"include\":\"#interface-declaration\"},{\"include\":\"#trigger-declaration\"},{\"include\":\"#punctuation-semicolon\"}]},\"type-name\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"storage.type.apex\"},\"2\":{\"name\":\"punctuation.accessor.apex\"}},\"match\":\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(\\\\.)\"},{\"captures\":{\"1\":{\"name\":\"punctuation.accessor.apex\"},\"2\":{\"name\":\"storage.type.apex\"}},\"match\":\"(\\\\.)\\\\s*(@?[_[:alpha:]][_[:alnum:]]*)\"},{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"storage.type.apex\"}]},\"type-nullable-suffix\":{\"captures\":{\"0\":{\"name\":\"punctuation.separator.question-mark.apex\"}},\"match\":\"\\\\?\"},\"type-parameter-list\":{\"begin\":\"<\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.typeparameters.begin.apex\"}},\"end\":\">\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.typeparameters.end.apex\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.name.type.type-parameter.apex\"}},\"match\":\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\b\"},{\"include\":\"#comment\"},{\"include\":\"#punctuation-comma\"}]},\"using-scope\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.query.using.apex\"}},\"match\":\"((USING SCOPE)\\\\b\\\\s*(Delegated|Everything|Mine|My_Territory|My_Team_Territory|Team))\\\\b\\\\s*\"},\"variable-initializer\":{\"begin\":\"(?<![!=])(=)(?![=>])\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.assignment.apex\"}},\"end\":\"(?=[]),;}])\",\"patterns\":[{\"include\":\"#expression\"}]},\"when-else-statement\":{\"begin\":\"(when)\\\\b\\\\s+(else)\\\\b\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.switch.when.apex\"},\"2\":{\"name\":\"keyword.control.switch.else.apex\"}},\"end\":\"(?=})|(?=when\\\\b)\",\"patterns\":[{\"include\":\"#block\"},{\"include\":\"#expression\"}]},\"when-multiple-statement\":{\"begin\":\"(when)\\\\b\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.switch.when.apex\"}},\"end\":\"(?=})|(?=when\\\\b)\",\"patterns\":[{\"include\":\"#block\"},{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"when-sobject-statement\":{\"begin\":\"(when)\\\\b\\\\s+([_[:alnum:]]+)\\\\s+([_[:alnum:]]+)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.switch.when.apex\"},\"2\":{\"name\":\"storage.type.apex\"},\"3\":{\"name\":\"entity.name.variable.local.apex\"}},\"end\":\"(?=})|(?=when\\\\b)\",\"patterns\":[{\"include\":\"#block\"},{\"include\":\"#expression\"}]},\"when-statement\":{\"begin\":\"(when)\\\\b\\\\s+([-_[:alnum:]]+)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.switch.when.apex\"},\"2\":{\"patterns\":[{\"include\":\"#expression\"}]}},\"end\":\"(?=})|(?=when\\\\b)\",\"patterns\":[{\"include\":\"#block\"},{\"include\":\"#expression\"}]},\"when-string\":{\"begin\":\"(when)\\\\b\\\\s*('[^\\\\n']*')(\\\\s*(,)\\\\s*('[^\\\\n']*'))*\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.switch.when.apex\"},\"2\":{\"patterns\":[{\"include\":\"#string-literal\"}]},\"4\":{\"patterns\":[{\"include\":\"#punctuation-comma\"}]},\"5\":{\"patterns\":[{\"include\":\"#string-literal\"}]}},\"end\":\"(?=})|(?=when\\\\b)\",\"patterns\":[{\"include\":\"#block\"},{\"include\":\"#expression\"}]},\"where-clause\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.query.where.apex\"}},\"match\":\"\\\\b(WHERE)\\\\b\\\\s*\"},\"while-statement\":{\"begin\":\"(?<!\\\\.)\\\\b(while)\\\\b\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.loop.while.apex\"}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.apex\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.apex\"}},\"patterns\":[{\"include\":\"#expression\"}]},{\"include\":\"#statement\"}]},\"xml-attribute\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.other.attribute-name.apex\"},\"2\":{\"name\":\"entity.other.attribute-name.namespace.apex\"},\"3\":{\"name\":\"punctuation.separator.colon.apex\"},\"4\":{\"name\":\"entity.other.attribute-name.localname.apex\"},\"5\":{\"name\":\"punctuation.separator.equals.apex\"}},\"match\":\"(?:^|\\\\s+)((?:([-_[:alnum:]]+)(:))?([-_[:alnum:]]+))(=)\"},{\"include\":\"#xml-string\"}]},\"xml-cdata\":{\"begin\":\"<!\\\\[CDATA\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.apex\"}},\"end\":\"]]>\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.apex\"}},\"name\":\"string.unquoted.cdata.apex\"},\"xml-character-entity\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.definition.constant.apex\"},\"3\":{\"name\":\"punctuation.definition.constant.apex\"}},\"match\":\"(&)([:_[:alpha:]][-.:_[:alnum:]]*|#\\\\d+|#x\\\\h+)(;)\",\"name\":\"constant.character.entity.apex\"},{\"match\":\"&\",\"name\":\"invalid.illegal.bad-ampersand.apex\"}]},\"xml-comment\":{\"begin\":\"<!--\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.apex\"}},\"end\":\"-->\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.apex\"}},\"name\":\"comment.block.apex\"},\"xml-doc-comment\":{\"patterns\":[{\"include\":\"#xml-comment\"},{\"include\":\"#xml-character-entity\"},{\"include\":\"#xml-cdata\"},{\"include\":\"#xml-tag\"}]},\"xml-string\":{\"patterns\":[{\"begin\":\"'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.apex\"}},\"end\":\"'\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.apex\"}},\"name\":\"string.quoted.single.apex\",\"patterns\":[{\"include\":\"#xml-character-entity\"}]},{\"begin\":\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.stringdoublequote.begin.apex\"}},\"end\":\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.stringdoublequote.end.apex\"}},\"name\":\"string.quoted.double.apex\",\"patterns\":[{\"include\":\"#xml-character-entity\"}]}]},\"xml-tag\":{\"begin\":\"(</?)((?:([-_[:alnum:]]+)(:))?([-_[:alnum:]]+))\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.tag.apex\"},\"2\":{\"name\":\"entity.name.tag.apex\"},\"3\":{\"name\":\"entity.name.tag.namespace.apex\"},\"4\":{\"name\":\"punctuation.separator.colon.apex\"},\"5\":{\"name\":\"entity.name.tag.localname.apex\"}},\"end\":\"(/?>)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.tag.apex\"}},\"name\":\"meta.tag.apex\",\"patterns\":[{\"include\":\"#xml-attribute\"}]}},\"scopeName\":\"source.apex\"}"))];
2
2
  //#endregion
3
3
  export { e as default };
4
4