github-linguist 7.28.0 → 7.29.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (71) hide show
  1. checksums.yaml +4 -4
  2. data/grammars/etc.json +1 -1
  3. data/grammars/inline.edgeql.json +1 -1
  4. data/grammars/inline.graphql.json +1 -1
  5. data/grammars/inline.graphql.markdown.codeblock.json +1 -0
  6. data/grammars/inline.graphql.rb.json +1 -0
  7. data/grammars/inline.hbs.json +1 -1
  8. data/grammars/markdown.commonlisp.codeblock.json +1 -0
  9. data/grammars/markdown.glimmer.codeblock.json +1 -0
  10. data/grammars/markdown.move.codeblock.json +1 -1
  11. data/grammars/source.8xp.json +1 -0
  12. data/grammars/source.abl.json +1 -1
  13. data/grammars/source.amxxpawn.json +1 -0
  14. data/grammars/source.astro.json +1 -1
  15. data/grammars/source.bb.json +1 -0
  16. data/grammars/source.bh.json +1 -0
  17. data/grammars/source.brs.json +1 -1
  18. data/grammars/source.cobol.json +1 -1
  19. data/grammars/source.commonlisp.json +1 -0
  20. data/grammars/source.cs.json +1 -1
  21. data/grammars/source.csound.json +1 -1
  22. data/grammars/source.dart.json +1 -1
  23. data/grammars/source.did.json +1 -1
  24. data/grammars/source.elvish-transcript.json +1 -1
  25. data/grammars/source.fsharp.json +1 -1
  26. data/grammars/source.gdscript.json +1 -1
  27. data/grammars/source.gjs.json +1 -1
  28. data/grammars/source.gts.json +1 -1
  29. data/grammars/source.hcl.json +1 -1
  30. data/grammars/source.hcl.terraform.json +1 -1
  31. data/grammars/source.ice.json +1 -1
  32. data/grammars/source.julia.json +1 -1
  33. data/grammars/source.lean4.json +1 -1
  34. data/grammars/source.lua.json +1 -1
  35. data/grammars/source.matlab.json +1 -1
  36. data/grammars/source.mdx.json +1 -1
  37. data/grammars/source.mojo.json +1 -0
  38. data/grammars/source.nasal.json +1 -1
  39. data/grammars/source.nushell.json +1 -1
  40. data/grammars/source.p4.json +1 -1
  41. data/grammars/source.pip-requirements.json +1 -0
  42. data/grammars/source.praat.json +1 -1
  43. data/grammars/source.rascal.json +1 -1
  44. data/grammars/source.rescript.json +1 -1
  45. data/grammars/source.roc.json +1 -0
  46. data/grammars/source.rust.json +1 -1
  47. data/grammars/source.scala.json +1 -1
  48. data/grammars/source.slice.json +1 -1
  49. data/grammars/source.slint.json +1 -0
  50. data/grammars/source.sourcepawn.json +1 -1
  51. data/grammars/source.swift.json +1 -1
  52. data/grammars/source.toit.json +1 -1
  53. data/grammars/source.ts.json +1 -1
  54. data/grammars/source.tsx.json +1 -1
  55. data/grammars/source.vba.json +1 -1
  56. data/grammars/sp-jsdoc.injection.json +1 -0
  57. data/grammars/text.html.edge.json +1 -0
  58. data/grammars/text.html.ember-handlebars.json +1 -1
  59. data/grammars/text.md.json +1 -1
  60. data/grammars/text.srt.json +1 -1
  61. data/grammars/text.valve-cfg.json +1 -0
  62. data/grammars/text.valve-kv.json +1 -0
  63. data/grammars/version +1 -1
  64. data/lib/linguist/VERSION +1 -1
  65. data/lib/linguist/generated.rb +23 -1
  66. data/lib/linguist/heuristics.yml +17 -2
  67. data/lib/linguist/languages.json +1 -1
  68. data/lib/linguist/languages.yml +90 -8
  69. data/lib/linguist/samples.json +1 -1
  70. metadata +20 -4
  71. data/grammars/markdown.graphql.codeblock.json +0 -1
@@ -1 +1 @@
1
- {"name":"Slice","scopeName":"source.slice","patterns":[{"include":"#slice"}],"repository":{"attribute":{"patterns":[{"include":"#attribute.file"},{"include":"#attribute.local"}]},"attribute.directive":{"begin":"[\\w]+(?:(::)\\w+)*","end":"(?=\\])|$","patterns":[{"include":"#comment"},{"name":"meta.attribute.arguments.slice","begin":"\\(","end":"(?=\\])|$","patterns":[{"include":"#comment"},{"include":"#string-literal"},{"name":"variable.other.constant.attribute.slice","match":"\\b\\w+\\b"},{"name":"punctuation.separator.comma.slice","match":","},{"begin":"\\)","end":"(?=\\])|$","patterns":[{"include":"#comment"},{"include":"#error"}],"beginCaptures":{"0":{"name":"punctuation.parenthesis.close.attribute.slice"}}},{"include":"#error"}],"beginCaptures":{"0":{"name":"punctuation.parenthesis.open.attribute.slice"}}},{"include":"#error"}],"beginCaptures":{"0":{"name":"entity.name.function.attribute.slice"},"1":{"name":"punctuation.separator.double-colon.slice"}}},"attribute.file":{"name":"meta.attribute.file.slice","begin":"\\[\\[","end":"(\\]\\])|$","patterns":[{"include":"#comment"},{"include":"#attribute.directive"},{"include":"#error"}],"beginCaptures":{"0":{"name":"punctuation.double-bracket.open.attribute.slice"}},"endCaptures":{"1":{"name":"punctuation.double-bracket.close.attribute.slice"}}},"attribute.local":{"name":"meta.attribute.local.slice","begin":"\\[","end":"(\\]|$)","patterns":[{"include":"#comment"},{"include":"#attribute.directive"},{"include":"#error"}],"beginCaptures":{"0":{"name":"punctuation.bracket.open.attribute.slice"}},"endCaptures":{"1":{"name":"punctuation.bracket.close.attribute.slice"}}},"class":{"name":"meta.class.slice","begin":"(?\u003c!\\\\)\\bclass\\b","end":"}","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=})","patterns":[{"include":"#standard"},{"include":"#id-value"},{"include":"#field-container-inheritance"},{"include":"#field-container"},{"include":"#error"}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.identifier"}]}}},{"include":"#field-container"},{"include":"#error"}],"beginCaptures":{"0":{"name":"storage.type.class.slice"}},"endCaptures":{"0":{"name":"punctuation.brace.close.slice"}}},"comment":{"patterns":[{"include":"#doc-comment.line"},{"include":"#comment.line"},{"include":"#comment.block"}]},"comment.block":{"name":"comment.block.slice","contentName":"text.slice","begin":"\\/\\*","end":"\\*\\/","beginCaptures":{"0":{"name":"punctuation.definition.comment.block.begin.slice"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.block.end.slice"}}},"comment.line":{"name":"comment.line.double-slash.slice","contentName":"text.slice","begin":"\\/\\/","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment.line.double-slash.begin.slice"}}},"compilation-mode":{"name":"meta.mode.slice","begin":"(?\u003c!\\\\)\\bmode\\b","end":"$","patterns":[{"include":"#standard"},{"begin":"=","end":"$","patterns":[{"include":"#standard"},{"begin":"\\\\?(\\w+)","end":"$","patterns":[{"include":"#standard"}],"beginCaptures":{"1":{"patterns":[{"name":"variable.other.constant.mode.slice","match":"Slice1|Slice2"},{"include":"#error"}]}}},{"include":"#error"}],"beginCaptures":{"0":{"name":"keyword.operator.assignment.slice"}}},{"include":"#error"}],"beginCaptures":{"0":{"name":"keyword.other.mode.slice"}}},"custom-type":{"name":"meta.custom.slice","begin":"(?\u003c!\\\\)\\bcustom\\b","end":"$","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"$","patterns":[{"include":"#standard"}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.identifier"}]}}},{"include":"#error"}],"beginCaptures":{"0":{"name":"storage.type.custom.slice"}}},"doc-comment.line":{"name":"comment.line.documentation.slice","begin":"\\/\\/\\/","end":"$","patterns":[{"include":"#documentation.param-tag"},{"include":"#documentation.returns-tag"},{"include":"#documentation.throws-tag"},{"include":"#documentation.see-tag"},{"include":"#documentation.text"}],"beginCaptures":{"0":{"name":"punctuation.definition.comment.line.documentation.begin.slice"}}},"documentation.identifier":{"patterns":[{"name":"variable.link.slice","match":"(?:\\b|(::))(?:[a-zA-Z_]\\w*(::)?)+\\b","captures":{"1":{"name":"punctuation.separator.double-colon.slice"},"2":{"name":"punctuation.separator.double-colon.slice"}}},{"include":"#error"}]},"documentation.identifier-with-section":{"begin":"\\b\\w+\\b","end":"$","patterns":[{"include":"#documentation.section"},{"include":"#error"}],"beginCaptures":{"0":{"patterns":[{"include":"#documentation.identifier"}]}}},"documentation.inline-tags":{"begin":"{(?=\\s*@)","end":"}","patterns":[{"include":"#documentation.link-tag"},{"include":"#error"}],"beginCaptures":{"0":{"name":"punctuation.brace.open.documentation.slice"}},"endCaptures":{"0":{"name":"punctuation.brace.close.documentation.slice"}}},"documentation.link-tag":{"name":"meta.documentation.link.slice","begin":"(@)link\\b","end":"(?=})","patterns":[{"begin":"(?:\\b|::)(?:\\w+(?:::)?)+\\b","end":"(?=})","patterns":[{"include":"#error"}],"beginCaptures":{"0":{"patterns":[{"include":"#documentation.identifier"}]}}},{"include":"#error"}],"beginCaptures":{"0":{"name":"keyword.other.documentation.link.slice"},"1":{"name":"punctuation.definition.annotation.documentation.slice"}}},"documentation.param-tag":{"name":"meta.documentation.param.slice","begin":"(@)param\\b","end":"$","patterns":[{"include":"#documentation.identifier-with-section"},{"include":"#error"}],"beginCaptures":{"0":{"name":"keyword.other.documentation.param.slice"},"1":{"name":"punctuation.definition.annotation.documentation.slice"}}},"documentation.returns-tag":{"name":"meta.documentation.returns.slice","begin":"(@)returns\\b","end":"$","patterns":[{"include":"#documentation.identifier-with-section"},{"include":"#documentation.section"},{"include":"#error"}],"beginCaptures":{"0":{"name":"keyword.other.documentation.returns.slice"},"1":{"name":"punctuation.definition.annotation.documentation.slice"}}},"documentation.section":{"begin":":","end":"$","patterns":[{"include":"#documentation.text"}],"beginCaptures":{"0":{"name":"punctuation.separator.colon.documentation.slice"}}},"documentation.see-tag":{"name":"meta.documentation.see.slice","begin":"(@)see\\b","end":"$","patterns":[{"begin":"(?:\\b|::)(?:\\w+(?:::)?)+\\b","end":"$","patterns":[{"include":"#error"}],"beginCaptures":{"0":{"patterns":[{"include":"#documentation.identifier"}]}}},{"include":"#error"}],"beginCaptures":{"0":{"name":"keyword.other.documentation.see.slice"},"1":{"name":"punctuation.definition.annotation.documentation.slice"}}},"documentation.text":{"begin":"(?=\\S)","end":"$","patterns":[{"include":"#documentation.inline-tags"},{"name":"text.slice","match":"."}]},"documentation.throws-tag":{"name":"meta.documentation.throws.slice","begin":"(@)throws\\b","end":"$","patterns":[{"begin":"(?:\\b|::)(?:\\w+(?:::)?)+\\b","end":"$","patterns":[{"include":"#documentation.section"},{"include":"#error"}],"beginCaptures":{"0":{"patterns":[{"include":"#documentation.identifier"}]}}},{"include":"#error"}],"beginCaptures":{"0":{"name":"keyword.other.documentation.throws.slice"},"1":{"name":"punctuation.definition.annotation.documentation.slice"}}},"enum":{"name":"meta.enum.slice","begin":"(?\u003c!\\\\)\\benum\\b","end":"}","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=})","patterns":[{"include":"#standard"},{"begin":":","end":"(?=})","patterns":[{"include":"#standard"},{"include":"#enumerator-container"},{"include":"#type.identifier"},{"include":"#error"}],"beginCaptures":{"0":{"name":"punctuation.separator.colon.slice"}}},{"include":"#enumerator-container"},{"include":"#error"}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.identifier"}]}}},{"include":"#enumerator-container"},{"include":"#error"}],"beginCaptures":{"0":{"name":"storage.type.enum.slice"}},"endCaptures":{"0":{"name":"punctuation.brace.close.slice"}}},"enumerator":{"name":"meta.enumerator.slice","begin":"\\\\?\\w+","end":"(?=[,}])|$","patterns":[{"include":"#standard"},{"begin":"\\(","end":"\\)","patterns":[{"include":"#tag"},{"include":"#field"},{"name":"punctuation.separator.comma.slice","match":","},{"include":"#slice"}],"beginCaptures":{"0":{"name":"punctuation.parenthesis.open.slice"}},"endCaptures":{"0":{"name":"punctuation.parenthesis.close.slice"}}},{"include":"#enumerator-value"}],"beginCaptures":{"0":{"name":"variable.other.constant.enum.slice","patterns":[{"include":"#field.identifier"}]}}},"enumerator-container":{"begin":"{","end":"(?=})","patterns":[{"include":"#enumerator"},{"name":"punctuation.separator.comma.slice","match":","},{"include":"#slice"}],"beginCaptures":{"0":{"name":"punctuation.brace.open.slice"}}},"enumerator-value":{"begin":"=","end":"(?=[,}])|$","patterns":[{"include":"#standard"},{"begin":"(?=-|\\b)[\\w-]+\\b","end":"(?=[,}])|$","patterns":[{"include":"#standard"}],"beginCaptures":{"0":{"patterns":[{"include":"#integer-literal"}]}}},{"include":"#error"}],"beginCaptures":{"0":{"name":"keyword.operator.assignment.slice"}}},"error":{"name":"invalid","match":"\\S"},"exception":{"name":"meta.exception.slice","begin":"(?\u003c!\\\\)\\bexception\\b","end":"}","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=})","patterns":[{"include":"#standard"},{"include":"#field-container-inheritance"},{"include":"#field-container"},{"include":"#error"}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.identifier"}]}}},{"include":"#field-container"},{"include":"#error"}],"beginCaptures":{"0":{"name":"storage.type.exception.slice"}},"endCaptures":{"0":{"name":"punctuation.brace.close.slice"}}},"field":{"name":"meta.field.slice","begin":"\\\\?\\w+","end":"(?=[,}\\)])|$","patterns":[{"include":"#standard"},{"begin":":","end":"(?=[,}\\)])|$","patterns":[{"include":"#standard"},{"include":"#type.identifier"},{"include":"#error"}],"beginCaptures":{"0":{"name":"punctuation.separator.colon.slice"}}},{"include":"#error"}],"beginCaptures":{"0":{"name":"entity.name.variable.slice","patterns":[{"include":"#field.identifier"}]}}},"field-container":{"begin":"{","end":"(?=})","patterns":[{"include":"#tag"},{"include":"#field"},{"name":"punctuation.separator.comma.slice","match":","},{"include":"#slice"}],"beginCaptures":{"0":{"name":"punctuation.brace.open.slice"}}},"field-container-inheritance":{"begin":":","end":"(?=})","patterns":[{"include":"#standard"},{"include":"#field-container"},{"include":"#type.identifier"},{"include":"#error"}],"beginCaptures":{"0":{"name":"punctuation.separator.colon.slice"}}},"field.identifier":{"patterns":[{"match":"(\\\\?)\\b([a-zA-Z_]\\w*)\\b","captures":{"1":{"name":"punctuation.definition.identifier.escape.slice"},"2":{"patterns":[{"include":"#reserved-identifiers"}]}}},{"include":"#error"}]},"id-value":{"begin":"\\(","end":"\\)","patterns":[{"include":"#standard"},{"begin":"[^\\s\\)]+","end":"(?=\\))","patterns":[{"include":"#standard"},{"include":"#error"}],"beginCaptures":{"0":{"patterns":[{"include":"#integer-literal"}]}}},{"include":"#error"}],"beginCaptures":{"0":{"name":"punctuation.parenthesis.open.slice"}},"endCaptures":{"0":{"name":"punctuation.parenthesis.close.slice"}}},"integer-literal":{"patterns":[{"name":"constant.numeric.bin.slice","match":"(-)?\\b(0b)(?:[0-1_]+)\\b","captures":{"1":{"name":"punctuation.definition.numeric.negative.slice"},"2":{"name":"punctuation.definition.numeric.bin.slice"}}},{"name":"constant.numeric.dec.slice","match":"(-)?\\b(?:[\\d_]+)\\b","captures":{"1":{"name":"punctuation.definition.numeric.negative.slice"}}},{"name":"constant.numeric.hex.slice","match":"(-)?\\b(0x)(?:[\\da-fA-F_]+)\\b","captures":{"1":{"name":"punctuation.definition.numeric.negative.slice"},"2":{"name":"punctuation.definition.numeric.hex.slice"}}},{"include":"#error"}]},"interface":{"name":"meta.interface.slice","begin":"(?\u003c!\\\\)\\binterface\\b","end":"}","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=})","patterns":[{"include":"#standard"},{"begin":":","end":"(?=})","patterns":[{"include":"#standard"},{"include":"#operation-container"},{"name":"punctuation.separator.comma.slice","match":","},{"include":"#type.identifier"},{"include":"#error"}],"beginCaptures":{"0":{"name":"punctuation.separator.colon.slice"}}},{"include":"#operation-container"},{"include":"#error"}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.identifier"}]}}},{"include":"#operation-container"},{"include":"#error"}],"beginCaptures":{"0":{"name":"storage.type.interface.slice"}},"endCaptures":{"0":{"name":"punctuation.brace.close.slice"}}},"modifier-keywords":{"match":"(?\u003c!\\\\)\\b(?:(compact)|(idempotent)|(stream)|(tag\\([-\\w]+\\))|(throws)|(unchecked))(\\b|(?\u003c=\\W))","captures":{"1":{"name":"storage.modifier.compact.slice"},"2":{"name":"storage.modifier.idempotent.slice"},"3":{"name":"storage.modifier.stream.slice"},"4":{"name":"meta.tag.slice","patterns":[{"include":"#tag"}]},"5":{"name":"storage.modifier.throws.slice"},"6":{"name":"storage.modifier.unchecked.slice"}}},"module-declaration":{"name":"meta.module.slice","begin":"(?\u003c!\\\\)\\bmodule\\b","end":"$","patterns":[{"include":"#standard"},{"begin":"(?=\\b|\\\\)[\\\\\\w:]+(?\u003c=\\b|\\W)","end":"$","patterns":[{"include":"#standard"}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.identifier"}]}}},{"include":"#error"}],"beginCaptures":{"0":{"name":"keyword.other.module.slice"}}},"operation-container":{"begin":"{","end":"(?=})","patterns":[{"include":"#tag"},{"name":"storage.modifier.stream.slice","match":"\\bstream\\b"},{"contentName":"meta.exception-list.slice","begin":"\\b(throws)\\b\\s*(\\()","end":"\\)","patterns":[{"include":"#standard"},{"name":"punctuation.separator.comma.slice","match":","},{"include":"#storage.identifier"},{"include":"#slice"}],"beginCaptures":{"1":{"name":"storage.modifier.throws.slice"},"2":{"name":"punctuation.parenthesis.open.slice"}},"endCaptures":{"0":{"name":"punctuation.parenthesis.close.slice"}}},{"name":"storage.modifier.throws.slice","match":"\\bthrows\\b"},{"name":"punctuation.definition.returns.slice","match":"-\u003e"},{"name":"punctuation.separator.comma.slice","match":","},{"name":"meta.parameter-list.slice","begin":"\\(","end":"\\)","patterns":[{"include":"#tag"},{"include":"#parameter"},{"name":"punctuation.separator.comma.slice","match":","},{"include":"#slice"}],"beginCaptures":{"0":{"name":"punctuation.parenthesis.open.slice"}},"endCaptures":{"0":{"name":"punctuation.parenthesis.close.slice"}}},{"match":"\\\\?\\w+(?=\\s*\\()","captures":{"0":{"name":"entity.name.function.slice","patterns":[{"include":"#field.identifier"}]}}},{"include":"#slice"}],"beginCaptures":{"0":{"name":"punctuation.brace.open.slice"}}},"parameter":{"name":"meta.parameter.slice","begin":"\\\\?\\w+","end":"(?=[,\\)])|$","patterns":[{"include":"#standard"},{"begin":":","end":"(?=[,\\)])|$","patterns":[{"include":"#standard"},{"name":"storage.modifier.stream.slice","match":"\\bstream\\b"},{"include":"#type.identifier"},{"include":"#error"}],"beginCaptures":{"0":{"name":"punctuation.separator.colon.slice"}}},{"include":"#error"}],"beginCaptures":{"0":{"name":"entity.name.variable.slice","patterns":[{"include":"#field.identifier"}]}}},"preprocessor":{"patterns":[{"include":"#preprocessor.define"},{"include":"#preprocessor.undef"},{"include":"#preprocessor.if"},{"include":"#preprocessor.elif"},{"include":"#preprocessor.else"},{"include":"#preprocessor.endif"},{"include":"#preprocessor.unknown"},{"include":"#preprocessor.unknown"}]},"preprocessor.define":{"name":"meta.preprocessor.define.slice","begin":"^\\s*((#)\\s*define)\\b","end":"$","patterns":[{"include":"#comment.line"},{"include":"#preprocessor.single-identifier"},{"include":"#error"}],"beginCaptures":{"1":{"name":"keyword.control.preprocessor.undef.slice"},"2":{"name":"punctuation.definition.preprocessor.slice"}}},"preprocessor.elif":{"name":"meta.preprocessor.elif.slice","begin":"^\\s*((#)\\s*elif)\\b","end":"$","patterns":[{"include":"#preprocessor.expression"}],"beginCaptures":{"1":{"name":"keyword.control.preprocessor.elif.slice"},"2":{"name":"punctuation.definition.preprocessor.slice"}}},"preprocessor.else":{"name":"meta.preprocessor.else.slice","begin":"^\\s*((#)\\s*else)\\b","end":"$","patterns":[{"include":"#comment.line"},{"include":"#error"}],"beginCaptures":{"1":{"name":"keyword.control.preprocessor.else.slice"},"2":{"name":"punctuation.definition.preprocessor.slice"}}},"preprocessor.endif":{"name":"meta.preprocessor.endif.slice","begin":"^\\s*((#)\\s*endif)\\b","end":"$","patterns":[{"include":"#comment.line"},{"include":"#error"}],"beginCaptures":{"1":{"name":"keyword.control.preprocessor.endif.slice"},"2":{"name":"punctuation.definition.preprocessor.slice"}}},"preprocessor.expression":{"patterns":[{"include":"#comment.line"},{"match":"(!)|(\u0026\u0026)|(\\|\\|)|(\\()|(\\))","captures":{"1":{"name":"keyword.operator.logical.not.slice"},"2":{"name":"keyword.operator.logical.and.slice"},"3":{"name":"keyword.operator.logical.or.slice"},"4":{"name":"punctuation.parenthesis.open.slice"},"5":{"name":"punctuation.parenthesis.close.slice"}}},{"include":"#preprocessor.identifier"},{"include":"#error"}]},"preprocessor.identifier":{"patterns":[{"name":"constant.other.symbol.preprocessor.slice","match":"\\b[a-zA-Z_]\\w*\\b"},{"include":"#error"}]},"preprocessor.if":{"name":"meta.preprocessor.if.slice","begin":"^\\s*((#)\\s*if)\\b","end":"$","patterns":[{"include":"#preprocessor.expression"}],"beginCaptures":{"1":{"name":"keyword.control.preprocessor.if.slice"},"2":{"name":"punctuation.definition.preprocessor.slice"}}},"preprocessor.single-identifier":{"begin":"\\b\\w+\\b","end":"$","patterns":[{"include":"#comment.line"},{"include":"#error"}],"beginCaptures":{"0":{"patterns":[{"include":"#preprocessor.identifier"}]}}},"preprocessor.undef":{"name":"meta.preprocessor.undef.slice","begin":"^\\s*((#)\\s*undef)\\b","end":"$","patterns":[{"include":"#comment.line"},{"include":"#preprocessor.single-identifier"},{"include":"#error"}],"beginCaptures":{"1":{"name":"keyword.control.preprocessor.undef.slice"},"2":{"name":"punctuation.definition.preprocessor.slice"}}},"preprocessor.unknown":{"name":"meta.preprocessor.unknown.slice","begin":"^\\s*((#)\\s*\\w*)\\b","end":"$","patterns":[{"include":"#comment.line"},{"include":"#error"}],"beginCaptures":{"1":{"name":"invalid.illegal.slice"},"2":{"name":"punctuation.definition.preprocessor.slice"}}},"reserved-identifiers":{"name":"invalid.illegal.identifier.slice","match":"(?\u003c!\\\\)\\b(?:module|struct|exception|class|interface|enum|custom|typealias|Sequence|Dictionary|bool|int8|uint8|int16|uint16|int32|uint32|varint32|varuint32|int64|uint64|varint62|varuint62|float32|float64|string|AnyClass|compact|idempotent|mode|stream|tag|throws|unchecked)\\b"},"slice":{"patterns":[{"include":"#standard"},{"include":"#compilation-mode"},{"include":"#module-declaration"},{"include":"#struct"},{"include":"#class"},{"include":"#exception"},{"include":"#enum"},{"include":"#interface"},{"include":"#custom-type"},{"include":"#type-alias"},{"include":"#modifier-keywords"},{"include":"#type.identifier"}]},"standard":{"patterns":[{"include":"#comment"},{"include":"#preprocessor"},{"include":"#attribute"}]},"storage.identifier":{"patterns":[{"name":"entity.name.class.slice","match":"(?:\\b|(::)|(?=\\\\))(?:(\\\\?)([a-zA-Z_]\\w*)(::)?)+\\b","captures":{"1":{"name":"punctuation.separator.double-colon.slice"},"2":{"name":"punctuation.definition.identifier.escape.slice"},"3":{"patterns":[{"include":"#reserved-identifiers"}]},"4":{"name":"punctuation.separator.double-colon.slice"}}},{"include":"#error"}]},"string-literal":{"name":"string.quoted.double.slice","begin":"\"","end":"(\")|$","patterns":[{"name":"constant.character.escape.slice","match":"\\\\."}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.slice"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.slice"}}},"struct":{"name":"meta.struct.slice","begin":"(?\u003c!\\\\)\\bstruct\\b","end":"}","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=})","patterns":[{"include":"#standard"},{"include":"#field-container"},{"include":"#error"}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.identifier"}]}}},{"include":"#field-container"},{"include":"#error"}],"beginCaptures":{"0":{"name":"storage.type.struct.slice"}},"endCaptures":{"0":{"name":"punctuation.brace.close.slice"}}},"tag":{"begin":"\\b(tag)\\s*(?=\\()","end":"(?\u003c=\\))","patterns":[{"include":"#id-value"}],"beginCaptures":{"1":{"name":"storage.modifier.tag.slice"}}},"type-alias":{"name":"meta.typealias.slice","begin":"(?\u003c!\\\\)\\btypealias\\b","end":"$","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"$","patterns":[{"include":"#standard"},{"begin":"=","end":"$","patterns":[{"include":"#standard"},{"include":"#type.identifier"},{"include":"#error"}],"beginCaptures":{"0":{"name":"keyword.operator.assignment.slice"}}},{"include":"#error"}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.identifier"}]}}},{"include":"#error"}],"beginCaptures":{"0":{"name":"storage.type.alias.slice"}}},"type-keywords":{"match":"(?\u003c!\\\\)\\b(?:(bool)|(int8)|(uint8)|(int16)|(uint16)|(int32)|(uint32)|(varint32)|(varuint32)|(int64)|(uint64)|(varint62)|(varuint62)|(float32)|(float64)|(string)|(AnyClass)|(Sequence)|(Dictionary))\\b","captures":{"1":{"name":"storage.type.bool.slice"},"10":{"name":"storage.type.int64.slice"},"11":{"name":"storage.type.uint64.slice"},"12":{"name":"storage.type.varint62.slice"},"13":{"name":"storage.type.varuint62.slice"},"14":{"name":"storage.type.float32.slice"},"15":{"name":"storage.type.float64.slice"},"16":{"name":"storage.type.string.slice"},"17":{"name":"storage.type.AnyClass.slice"},"18":{"name":"storage.type.sequence.slice"},"19":{"name":"storage.type.dictionary.slice"},"2":{"name":"storage.type.int8.slice"},"3":{"name":"storage.type.uint8.slice"},"4":{"name":"storage.type.int16.slice"},"5":{"name":"storage.type.uint16.slice"},"6":{"name":"storage.type.int32.slice"},"7":{"name":"storage.type.uint32.slice"},"8":{"name":"storage.type.varint32.slice"},"9":{"name":"storage.type.varuint32.slice"}}},"type-name":{"patterns":[{"include":"#type-keywords"},{"include":"#storage.identifier"}]},"type.identifier":{"patterns":[{"name":"meta.generic.parameters.slice","begin":"(?=\\b|\\W)([\\\\\\w:]+)\\s*(\\\u003c)","end":"(\\\u003e)\\s*(\\?)?","patterns":[{"include":"#standard"},{"name":"punctuation.separator.comma.slice","match":","},{"include":"#type.identifier"},{"include":"#error"}],"beginCaptures":{"1":{"patterns":[{"include":"#type-name"}]},"2":{"name":"punctuation.angle.open.slice"}},"endCaptures":{"1":{"name":"punctuation.angle.close.slice"},"2":{"name":"punctuation.definition.optional.slice"}}},{"match":"(?=\\b|\\W)([\\\\\\w:]+)\\s*(\\?)?(?\u003c=\\b|\\W)","captures":{"1":{"patterns":[{"include":"#type-name"}]},"2":{"name":"punctuation.definition.optional.slice"}}}]}}}
1
+ {"name":"Slice","scopeName":"source.slice","patterns":[{"include":"#slice"}],"repository":{"attribute":{"patterns":[{"include":"#attribute.file"},{"include":"#attribute.local"}]},"attribute.directive":{"begin":"[\\w]+(?:(::)\\w+)*","end":"(?=\\])|$","patterns":[{"include":"#comment"},{"name":"meta.attribute.arguments.slice","begin":"\\(","end":"(?=\\])|$","patterns":[{"include":"#comment"},{"include":"#string-literal"},{"name":"variable.other.constant.attribute.slice","match":"\\b\\w+\\b"},{"name":"punctuation.separator.comma.slice","match":","},{"begin":"\\)","end":"(?=\\])|$","patterns":[{"include":"#comment"},{"include":"#error"}],"beginCaptures":{"0":{"name":"punctuation.parenthesis.close.attribute.slice"}}},{"include":"#error"}],"beginCaptures":{"0":{"name":"punctuation.parenthesis.open.attribute.slice"}}},{"include":"#error"}],"beginCaptures":{"0":{"name":"entity.name.function.attribute.slice"},"1":{"name":"punctuation.separator.double-colon.slice"}}},"attribute.file":{"name":"meta.attribute.file.slice","begin":"\\[\\[","end":"(\\]\\])|$","patterns":[{"include":"#comment"},{"include":"#attribute.directive"},{"include":"#error"}],"beginCaptures":{"0":{"name":"punctuation.double-bracket.open.attribute.slice"}},"endCaptures":{"1":{"name":"punctuation.double-bracket.close.attribute.slice"}}},"attribute.local":{"name":"meta.attribute.local.slice","begin":"\\[","end":"(\\]|$)","patterns":[{"include":"#comment"},{"include":"#attribute.directive"},{"include":"#error"}],"beginCaptures":{"0":{"name":"punctuation.bracket.open.attribute.slice"}},"endCaptures":{"1":{"name":"punctuation.bracket.close.attribute.slice"}}},"class":{"name":"meta.class.slice","begin":"(?\u003c!\\\\)\\bclass\\b","end":"}","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=})","patterns":[{"include":"#standard"},{"include":"#id-value"},{"include":"#field-container-inheritance"},{"include":"#field-container"},{"include":"#error"}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.identifier"}]}}},{"include":"#field-container"},{"include":"#error"}],"beginCaptures":{"0":{"name":"storage.type.class.slice"}},"endCaptures":{"0":{"name":"punctuation.brace.close.slice"}}},"comment":{"patterns":[{"include":"#doc-comment.line"},{"include":"#comment.line"},{"include":"#comment.block"}]},"comment.block":{"name":"comment.block.slice","contentName":"text.slice","begin":"\\/\\*","end":"\\*\\/","beginCaptures":{"0":{"name":"punctuation.definition.comment.block.begin.slice"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.block.end.slice"}}},"comment.line":{"name":"comment.line.double-slash.slice","contentName":"text.slice","begin":"\\/\\/","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment.line.double-slash.begin.slice"}}},"compilation-mode":{"name":"meta.mode.slice","begin":"(?\u003c!\\\\)\\bmode\\b","end":"$","patterns":[{"include":"#standard"},{"begin":"=","end":"$","patterns":[{"include":"#standard"},{"begin":"\\\\?(\\w+)","end":"$","patterns":[{"include":"#standard"}],"beginCaptures":{"1":{"patterns":[{"name":"variable.other.constant.mode.slice","match":"Slice1|Slice2"},{"include":"#error"}]}}},{"include":"#error"}],"beginCaptures":{"0":{"name":"keyword.operator.assignment.slice"}}},{"include":"#error"}],"beginCaptures":{"0":{"name":"keyword.other.mode.slice"}}},"custom-type":{"name":"meta.custom.slice","begin":"(?\u003c!\\\\)\\bcustom\\b","end":"$","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"$","patterns":[{"include":"#standard"}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.identifier"}]}}},{"include":"#error"}],"beginCaptures":{"0":{"name":"storage.type.custom.slice"}}},"doc-comment.line":{"name":"comment.line.documentation.slice","begin":"\\/\\/\\/","end":"$","patterns":[{"include":"#documentation.param-tag"},{"include":"#documentation.returns-tag"},{"include":"#documentation.throws-tag"},{"include":"#documentation.see-tag"},{"include":"#documentation.text"}],"beginCaptures":{"0":{"name":"punctuation.definition.comment.line.documentation.begin.slice"}}},"documentation.identifier":{"patterns":[{"name":"variable.link.slice","match":"(?:\\b|(::))(?:[a-zA-Z_]\\w*(::)?)+\\b","captures":{"1":{"name":"punctuation.separator.double-colon.slice"},"2":{"name":"punctuation.separator.double-colon.slice"}}},{"include":"#error"}]},"documentation.identifier-with-section":{"begin":"\\b\\w+\\b","end":"$","patterns":[{"include":"#documentation.section"},{"include":"#error"}],"beginCaptures":{"0":{"patterns":[{"include":"#documentation.identifier"}]}}},"documentation.inline-tags":{"begin":"{(?=\\s*@)","end":"}","patterns":[{"include":"#documentation.link-tag"},{"include":"#error"}],"beginCaptures":{"0":{"name":"punctuation.brace.open.documentation.slice"}},"endCaptures":{"0":{"name":"punctuation.brace.close.documentation.slice"}}},"documentation.link-tag":{"name":"meta.documentation.link.slice","begin":"(@)link\\b","end":"(?=})","patterns":[{"begin":"(?:\\b|::)(?:\\w+(?:::)?)+\\b","end":"(?=})","patterns":[{"include":"#error"}],"beginCaptures":{"0":{"patterns":[{"include":"#documentation.identifier"}]}}},{"include":"#error"}],"beginCaptures":{"0":{"name":"keyword.other.documentation.link.slice"},"1":{"name":"punctuation.definition.annotation.documentation.slice"}}},"documentation.param-tag":{"name":"meta.documentation.param.slice","begin":"(@)param\\b","end":"$","patterns":[{"include":"#documentation.identifier-with-section"},{"include":"#error"}],"beginCaptures":{"0":{"name":"keyword.other.documentation.param.slice"},"1":{"name":"punctuation.definition.annotation.documentation.slice"}}},"documentation.returns-tag":{"name":"meta.documentation.returns.slice","begin":"(@)returns\\b","end":"$","patterns":[{"include":"#documentation.identifier-with-section"},{"include":"#documentation.section"},{"include":"#error"}],"beginCaptures":{"0":{"name":"keyword.other.documentation.returns.slice"},"1":{"name":"punctuation.definition.annotation.documentation.slice"}}},"documentation.section":{"begin":":","end":"$","patterns":[{"include":"#documentation.text"}],"beginCaptures":{"0":{"name":"punctuation.separator.colon.documentation.slice"}}},"documentation.see-tag":{"name":"meta.documentation.see.slice","begin":"(@)see\\b","end":"$","patterns":[{"begin":"(?:\\b|::)(?:\\w+(?:::)?)+\\b","end":"$","patterns":[{"include":"#error"}],"beginCaptures":{"0":{"patterns":[{"include":"#documentation.identifier"}]}}},{"include":"#error"}],"beginCaptures":{"0":{"name":"keyword.other.documentation.see.slice"},"1":{"name":"punctuation.definition.annotation.documentation.slice"}}},"documentation.text":{"begin":"(?=\\S)","end":"$","patterns":[{"include":"#documentation.inline-tags"},{"name":"text.slice","match":"."}]},"documentation.throws-tag":{"name":"meta.documentation.throws.slice","begin":"(@)throws\\b","end":"$","patterns":[{"begin":"(?:\\b|::)(?:\\w+(?:::)?)+\\b","end":"$","patterns":[{"include":"#documentation.section"},{"include":"#error"}],"beginCaptures":{"0":{"patterns":[{"include":"#documentation.identifier"}]}}},{"include":"#error"}],"beginCaptures":{"0":{"name":"keyword.other.documentation.throws.slice"},"1":{"name":"punctuation.definition.annotation.documentation.slice"}}},"enum":{"name":"meta.enum.slice","begin":"(?\u003c!\\\\)\\benum\\b","end":"}","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=})","patterns":[{"include":"#standard"},{"begin":":","end":"(?=})","patterns":[{"include":"#standard"},{"include":"#enumerator-container"},{"include":"#type.identifier"},{"include":"#error"}],"beginCaptures":{"0":{"name":"punctuation.separator.colon.slice"}}},{"include":"#enumerator-container"},{"include":"#error"}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.identifier"}]}}},{"include":"#enumerator-container"},{"include":"#error"}],"beginCaptures":{"0":{"name":"storage.type.enum.slice"}},"endCaptures":{"0":{"name":"punctuation.brace.close.slice"}}},"enumerator":{"name":"meta.enumerator.slice","begin":"\\\\?\\w+","end":"(?=[,}])|$","patterns":[{"include":"#standard"},{"begin":"\\(","end":"\\)","patterns":[{"include":"#tag"},{"include":"#field"},{"name":"punctuation.separator.comma.slice","match":","},{"include":"#slice"}],"beginCaptures":{"0":{"name":"punctuation.parenthesis.open.slice"}},"endCaptures":{"0":{"name":"punctuation.parenthesis.close.slice"}}},{"include":"#enumerator-value"}],"beginCaptures":{"0":{"name":"variable.other.constant.enum.slice","patterns":[{"include":"#field.identifier"}]}}},"enumerator-container":{"begin":"{","end":"(?=})","patterns":[{"include":"#enumerator"},{"name":"punctuation.separator.comma.slice","match":","},{"include":"#slice"}],"beginCaptures":{"0":{"name":"punctuation.brace.open.slice"}}},"enumerator-value":{"begin":"=","end":"(?=[,}])|$","patterns":[{"include":"#standard"},{"begin":"(?=-|\\b)[\\w-]+\\b","end":"(?=[,}])|$","patterns":[{"include":"#standard"}],"beginCaptures":{"0":{"patterns":[{"include":"#integer-literal"}]}}},{"include":"#error"}],"beginCaptures":{"0":{"name":"keyword.operator.assignment.slice"}}},"error":{"name":"invalid","match":"\\S"},"exception":{"name":"meta.exception.slice","begin":"(?\u003c!\\\\)\\bexception\\b","end":"}","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=})","patterns":[{"include":"#standard"},{"include":"#field-container-inheritance"},{"include":"#field-container"},{"include":"#error"}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.identifier"}]}}},{"include":"#field-container"},{"include":"#error"}],"beginCaptures":{"0":{"name":"storage.type.exception.slice"}},"endCaptures":{"0":{"name":"punctuation.brace.close.slice"}}},"field":{"name":"meta.field.slice","begin":"\\\\?\\w+","end":"(?=[,}\\)])|$","patterns":[{"include":"#standard"},{"begin":":","end":"(?=[,}\\)])|$","patterns":[{"include":"#standard"},{"include":"#type.identifier"},{"include":"#error"}],"beginCaptures":{"0":{"name":"punctuation.separator.colon.slice"}}},{"include":"#error"}],"beginCaptures":{"0":{"name":"entity.name.variable.slice","patterns":[{"include":"#field.identifier"}]}}},"field-container":{"begin":"{","end":"(?=})","patterns":[{"include":"#tag"},{"include":"#field"},{"name":"punctuation.separator.comma.slice","match":","},{"include":"#slice"}],"beginCaptures":{"0":{"name":"punctuation.brace.open.slice"}}},"field-container-inheritance":{"begin":":","end":"(?=})","patterns":[{"include":"#standard"},{"include":"#field-container"},{"include":"#type.identifier"},{"include":"#error"}],"beginCaptures":{"0":{"name":"punctuation.separator.colon.slice"}}},"field.identifier":{"patterns":[{"match":"(\\\\?)\\b([a-zA-Z_]\\w*)\\b","captures":{"1":{"name":"punctuation.definition.identifier.escape.slice"},"2":{"patterns":[{"include":"#reserved-identifiers"}]}}},{"include":"#error"}]},"id-value":{"begin":"\\(","end":"\\)","patterns":[{"include":"#standard"},{"begin":"[^\\s\\)]+","end":"(?=\\))","patterns":[{"include":"#standard"},{"include":"#error"}],"beginCaptures":{"0":{"patterns":[{"include":"#integer-literal"}]}}},{"include":"#error"}],"beginCaptures":{"0":{"name":"punctuation.parenthesis.open.slice"}},"endCaptures":{"0":{"name":"punctuation.parenthesis.close.slice"}}},"integer-literal":{"patterns":[{"name":"constant.numeric.bin.slice","match":"(-)?\\b(0b)(?:[0-1_]+)\\b","captures":{"1":{"name":"punctuation.definition.numeric.negative.slice"},"2":{"name":"punctuation.definition.numeric.bin.slice"}}},{"name":"constant.numeric.dec.slice","match":"(-)?\\b(?:[\\d_]+)\\b","captures":{"1":{"name":"punctuation.definition.numeric.negative.slice"}}},{"name":"constant.numeric.hex.slice","match":"(-)?\\b(0x)(?:[\\da-fA-F_]+)\\b","captures":{"1":{"name":"punctuation.definition.numeric.negative.slice"},"2":{"name":"punctuation.definition.numeric.hex.slice"}}},{"include":"#error"}]},"interface":{"name":"meta.interface.slice","begin":"(?\u003c!\\\\)\\binterface\\b","end":"}","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=})","patterns":[{"include":"#standard"},{"begin":":","end":"(?=})","patterns":[{"include":"#standard"},{"include":"#operation-container"},{"name":"punctuation.separator.comma.slice","match":","},{"include":"#type.identifier"},{"include":"#error"}],"beginCaptures":{"0":{"name":"punctuation.separator.colon.slice"}}},{"include":"#operation-container"},{"include":"#error"}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.identifier"}]}}},{"include":"#operation-container"},{"include":"#error"}],"beginCaptures":{"0":{"name":"storage.type.interface.slice"}},"endCaptures":{"0":{"name":"punctuation.brace.close.slice"}}},"modifier-keywords":{"match":"(?\u003c!\\\\)\\b(?:(compact)|(idempotent)|(stream)|(tag\\([-\\w]+\\))|(throws)|(unchecked))(\\b|(?\u003c=\\W))","captures":{"1":{"name":"storage.modifier.compact.slice"},"2":{"name":"storage.modifier.idempotent.slice"},"3":{"name":"storage.modifier.stream.slice"},"4":{"name":"meta.tag.slice","patterns":[{"include":"#tag"}]},"5":{"name":"storage.modifier.throws.slice"},"6":{"name":"storage.modifier.unchecked.slice"}}},"module-declaration":{"name":"meta.module.slice","begin":"(?\u003c!\\\\)\\bmodule\\b","end":"$","patterns":[{"include":"#standard"},{"begin":"(?=\\b|\\\\)[\\\\\\w:]+(?\u003c=\\b|\\W)","end":"$","patterns":[{"include":"#standard"}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.identifier"}]}}},{"include":"#error"}],"beginCaptures":{"0":{"name":"keyword.other.module.slice"}}},"operation-container":{"begin":"{","end":"(?=})","patterns":[{"include":"#tag"},{"name":"storage.modifier.stream.slice","match":"\\bstream\\b"},{"contentName":"meta.exception-list.slice","begin":"\\b(throws)\\b\\s*(\\()","end":"\\)","patterns":[{"include":"#standard"},{"name":"punctuation.separator.comma.slice","match":","},{"include":"#storage.identifier"},{"include":"#slice"}],"beginCaptures":{"1":{"name":"storage.modifier.throws.slice"},"2":{"name":"punctuation.parenthesis.open.slice"}},"endCaptures":{"0":{"name":"punctuation.parenthesis.close.slice"}}},{"name":"storage.modifier.throws.slice","match":"\\bthrows\\b"},{"name":"punctuation.definition.returns.slice","match":"-\u003e"},{"name":"punctuation.separator.comma.slice","match":","},{"name":"meta.parameter-list.slice","begin":"\\(","end":"\\)","patterns":[{"include":"#tag"},{"include":"#parameter"},{"name":"punctuation.separator.comma.slice","match":","},{"include":"#slice"}],"beginCaptures":{"0":{"name":"punctuation.parenthesis.open.slice"}},"endCaptures":{"0":{"name":"punctuation.parenthesis.close.slice"}}},{"match":"\\\\?\\w+(?=\\s*\\()","captures":{"0":{"name":"entity.name.function.slice","patterns":[{"include":"#field.identifier"}]}}},{"include":"#slice"}],"beginCaptures":{"0":{"name":"punctuation.brace.open.slice"}}},"parameter":{"name":"meta.parameter.slice","begin":"\\\\?\\w+","end":"(?=[,\\)])|$","patterns":[{"include":"#standard"},{"begin":":","end":"(?=[,\\)])|$","patterns":[{"include":"#standard"},{"name":"storage.modifier.stream.slice","match":"\\bstream\\b"},{"include":"#type.identifier"},{"include":"#error"}],"beginCaptures":{"0":{"name":"punctuation.separator.colon.slice"}}},{"include":"#error"}],"beginCaptures":{"0":{"name":"entity.name.variable.slice","patterns":[{"include":"#field.identifier"}]}}},"preprocessor":{"patterns":[{"include":"#preprocessor.define"},{"include":"#preprocessor.undef"},{"include":"#preprocessor.if"},{"include":"#preprocessor.elif"},{"include":"#preprocessor.else"},{"include":"#preprocessor.endif"},{"include":"#preprocessor.unknown"},{"include":"#preprocessor.unknown"}]},"preprocessor.define":{"name":"meta.preprocessor.define.slice","begin":"^\\s*((#)\\s*define)\\b","end":"$","patterns":[{"include":"#comment.line"},{"include":"#preprocessor.single-identifier"},{"include":"#error"}],"beginCaptures":{"1":{"name":"keyword.control.preprocessor.undef.slice"},"2":{"name":"punctuation.definition.preprocessor.slice"}}},"preprocessor.elif":{"name":"meta.preprocessor.elif.slice","begin":"^\\s*((#)\\s*elif)\\b","end":"$","patterns":[{"include":"#preprocessor.expression"}],"beginCaptures":{"1":{"name":"keyword.control.preprocessor.elif.slice"},"2":{"name":"punctuation.definition.preprocessor.slice"}}},"preprocessor.else":{"name":"meta.preprocessor.else.slice","begin":"^\\s*((#)\\s*else)\\b","end":"$","patterns":[{"include":"#comment.line"},{"include":"#error"}],"beginCaptures":{"1":{"name":"keyword.control.preprocessor.else.slice"},"2":{"name":"punctuation.definition.preprocessor.slice"}}},"preprocessor.endif":{"name":"meta.preprocessor.endif.slice","begin":"^\\s*((#)\\s*endif)\\b","end":"$","patterns":[{"include":"#comment.line"},{"include":"#error"}],"beginCaptures":{"1":{"name":"keyword.control.preprocessor.endif.slice"},"2":{"name":"punctuation.definition.preprocessor.slice"}}},"preprocessor.expression":{"patterns":[{"include":"#comment.line"},{"match":"(!)|(\u0026\u0026)|(\\|\\|)|(\\()|(\\))","captures":{"1":{"name":"keyword.operator.logical.not.slice"},"2":{"name":"keyword.operator.logical.and.slice"},"3":{"name":"keyword.operator.logical.or.slice"},"4":{"name":"punctuation.parenthesis.open.slice"},"5":{"name":"punctuation.parenthesis.close.slice"}}},{"include":"#preprocessor.identifier"},{"include":"#error"}]},"preprocessor.identifier":{"patterns":[{"name":"constant.other.symbol.preprocessor.slice","match":"\\b[a-zA-Z_]\\w*\\b"},{"include":"#error"}]},"preprocessor.if":{"name":"meta.preprocessor.if.slice","begin":"^\\s*((#)\\s*if)\\b","end":"$","patterns":[{"include":"#preprocessor.expression"}],"beginCaptures":{"1":{"name":"keyword.control.preprocessor.if.slice"},"2":{"name":"punctuation.definition.preprocessor.slice"}}},"preprocessor.single-identifier":{"begin":"\\b\\w+\\b","end":"$","patterns":[{"include":"#comment.line"},{"include":"#error"}],"beginCaptures":{"0":{"patterns":[{"include":"#preprocessor.identifier"}]}}},"preprocessor.undef":{"name":"meta.preprocessor.undef.slice","begin":"^\\s*((#)\\s*undef)\\b","end":"$","patterns":[{"include":"#comment.line"},{"include":"#preprocessor.single-identifier"},{"include":"#error"}],"beginCaptures":{"1":{"name":"keyword.control.preprocessor.undef.slice"},"2":{"name":"punctuation.definition.preprocessor.slice"}}},"preprocessor.unknown":{"name":"meta.preprocessor.unknown.slice","begin":"^\\s*((#)\\s*\\w*)\\b","end":"$","patterns":[{"include":"#comment.line"},{"include":"#error"}],"beginCaptures":{"1":{"name":"invalid.illegal.slice"},"2":{"name":"punctuation.definition.preprocessor.slice"}}},"reserved-identifiers":{"name":"invalid.illegal.identifier.slice","match":"(?\u003c!\\\\)\\b(?:module|struct|exception|class|interface|enum|custom|typealias|Sequence|Dictionary|Result|bool|int8|uint8|int16|uint16|int32|uint32|varint32|varuint32|int64|uint64|varint62|varuint62|float32|float64|string|AnyClass|compact|idempotent|mode|stream|tag|throws|unchecked)\\b"},"slice":{"patterns":[{"include":"#standard"},{"include":"#compilation-mode"},{"include":"#module-declaration"},{"include":"#struct"},{"include":"#class"},{"include":"#exception"},{"include":"#enum"},{"include":"#interface"},{"include":"#custom-type"},{"include":"#type-alias"},{"include":"#modifier-keywords"},{"include":"#type.identifier"}]},"standard":{"patterns":[{"include":"#comment"},{"include":"#preprocessor"},{"include":"#attribute"}]},"storage.identifier":{"patterns":[{"name":"entity.name.class.slice","match":"(?:\\b|(::)|(?=\\\\))(?:(\\\\?)([a-zA-Z_]\\w*)(::)?)+\\b","captures":{"1":{"name":"punctuation.separator.double-colon.slice"},"2":{"name":"punctuation.definition.identifier.escape.slice"},"3":{"patterns":[{"include":"#reserved-identifiers"}]},"4":{"name":"punctuation.separator.double-colon.slice"}}},{"include":"#error"}]},"string-literal":{"name":"string.quoted.double.slice","begin":"\"","end":"(\")|$","patterns":[{"name":"constant.character.escape.slice","match":"\\\\."}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.slice"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.slice"}}},"struct":{"name":"meta.struct.slice","begin":"(?\u003c!\\\\)\\bstruct\\b","end":"}","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"(?=})","patterns":[{"include":"#standard"},{"include":"#field-container"},{"include":"#error"}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.identifier"}]}}},{"include":"#field-container"},{"include":"#error"}],"beginCaptures":{"0":{"name":"storage.type.struct.slice"}},"endCaptures":{"0":{"name":"punctuation.brace.close.slice"}}},"tag":{"begin":"\\b(tag)\\s*(?=\\()","end":"(?\u003c=\\))","patterns":[{"include":"#id-value"}],"beginCaptures":{"1":{"name":"storage.modifier.tag.slice"}}},"type-alias":{"name":"meta.typealias.slice","begin":"(?\u003c!\\\\)\\btypealias\\b","end":"$","patterns":[{"include":"#standard"},{"begin":"\\\\?\\b\\w+\\b","end":"$","patterns":[{"include":"#standard"},{"begin":"=","end":"$","patterns":[{"include":"#standard"},{"include":"#type.identifier"},{"include":"#error"}],"beginCaptures":{"0":{"name":"keyword.operator.assignment.slice"}}},{"include":"#error"}],"beginCaptures":{"0":{"patterns":[{"include":"#storage.identifier"}]}}},{"include":"#error"}],"beginCaptures":{"0":{"name":"storage.type.alias.slice"}}},"type-keywords":{"match":"(?\u003c!\\\\)\\b(?:(bool)|(int8)|(uint8)|(int16)|(uint16)|(int32)|(uint32)|(varint32)|(varuint32)|(int64)|(uint64)|(varint62)|(varuint62)|(float32)|(float64)|(string)|(AnyClass)|(Sequence)|(Dictionary)|(Result))\\b","captures":{"1":{"name":"storage.type.bool.slice"},"10":{"name":"storage.type.int64.slice"},"11":{"name":"storage.type.uint64.slice"},"12":{"name":"storage.type.varint62.slice"},"13":{"name":"storage.type.varuint62.slice"},"14":{"name":"storage.type.float32.slice"},"15":{"name":"storage.type.float64.slice"},"16":{"name":"storage.type.string.slice"},"17":{"name":"storage.type.AnyClass.slice"},"18":{"name":"storage.type.sequence.slice"},"19":{"name":"storage.type.dictionary.slice"},"2":{"name":"storage.type.int8.slice"},"20":{"name":"storage.type.result.slice"},"3":{"name":"storage.type.uint8.slice"},"4":{"name":"storage.type.int16.slice"},"5":{"name":"storage.type.uint16.slice"},"6":{"name":"storage.type.int32.slice"},"7":{"name":"storage.type.uint32.slice"},"8":{"name":"storage.type.varint32.slice"},"9":{"name":"storage.type.varuint32.slice"}}},"type-name":{"patterns":[{"include":"#type-keywords"},{"include":"#storage.identifier"}]},"type.identifier":{"patterns":[{"name":"meta.generic.parameters.slice","begin":"(?=\\b|\\W)([\\\\\\w:]+)\\s*(\\\u003c)","end":"(\\\u003e)\\s*(\\?)?","patterns":[{"include":"#standard"},{"name":"punctuation.separator.comma.slice","match":","},{"include":"#type.identifier"},{"include":"#error"}],"beginCaptures":{"1":{"patterns":[{"include":"#type-name"}]},"2":{"name":"punctuation.angle.open.slice"}},"endCaptures":{"1":{"name":"punctuation.angle.close.slice"},"2":{"name":"punctuation.definition.optional.slice"}}},{"match":"(?=\\b|\\W)([\\\\\\w:]+)\\s*(\\?)?(?\u003c=\\b|\\W)","captures":{"1":{"patterns":[{"include":"#type-name"}]},"2":{"name":"punctuation.definition.optional.slice"}}}]}}}
@@ -0,0 +1 @@
1
+ {"name":"slint","scopeName":"source.slint","patterns":[{"include":"#document"}],"repository":{"block-comments":{"patterns":[{"name":"comment.block","begin":"/\\*","end":"\\*/","patterns":[{"include":"#block-comments"}]}]},"document":{"patterns":[{"include":"#general"},{"name":"keyword","match":"(?\u003c!-)\\b(from|export)\\b(?!-)"},{"name":"keyword.other","match":"(?\u003c!-)\\b(animate|states|transitions|private|public|pure|function|in|out|in-out)\\b(?!-)"},{"name":"keyword.control","match":"(?\u003c!-)\\b(if|for|return)\\b(?!-)"},{"name":"variable.language","match":"(?\u003c!-)\\b(root|parent|this|self)\\b(?!-)"},{"match":"(?\u003c!-)\\b(import)\\s*\\{\\s*(([a-zA-Z_][a-zA-Z0-9_-]*)(\\s*,\\s*([a-zA-Z_][a-zA-Z0-9_-]*))*)\\s*\\}","captures":{"1":{"name":"keyword.other"},"3":{"name":"entity.name.type"},"5":{"name":"entity.name.type"}}},{"match":"(?\u003c!-)\\b([a-zA-Z_][a-zA-Z0-9_-]*)\\s*:","captures":{"1":{"name":"variable.parameter"}}},{"match":"(?\u003c!-)\\b([a-zA-Z_][a-zA-Z0-9_-]*)\\s*\\(.*\\)\\s*=\u003e","captures":{"1":{"name":"entity.name.function"}}},{"match":"(?\u003c!-)\\b(callback)\\s+([a-zA-Z_][a-zA-Z0-9_-]*)\\s*","captures":{"1":{"name":"entity.name.function"},"2":{"name":"entity.name.type"}}},{"begin":"(?\u003c!-)\\b(struct)\\s+([a-zA-Z_][a-zA-Z0-9_-]*)\\s*\\{","end":"\\}","patterns":[{"match":"([a-zA-Z_][a-zA-Z0-9_-]*)\\s*:\\s*([a-zA-Z_][a-zA-Z0-9_-]*)\\s*,?","captures":{"1":{"name":"variable.parameter"},"2":{"name":"entity.name.type"}}}],"beginCaptures":{"1":{"name":"storage.type"},"2":{"name":"entity.name.type"}}},{"begin":"(?\u003c!-)\\b(global)\\s+([a-zA-Z_][a-zA-Z0-9_-]*)\\s*\\{","end":"\\}","patterns":[{"include":"#property"}],"beginCaptures":{"1":{"name":"storage.type"},"2":{"name":"entity.name.type"}}},{"begin":"(?\u003c!-)\\b(enum)\\s+([a-zA-Z_][a-zA-Z0-9_-]*)\\s*\\{","end":"\\}","patterns":[{"name":"entity.name.type","match":"([a-zA-Z_][a-zA-Z0-9_-]*)\\s*,?"}],"beginCaptures":{"1":{"name":"storage.type"},"2":{"name":"entity.name.type"}}},{"match":"(?\u003c!-)\\b(component|inherits)\\s+([a-zA-Z_][a-zA-Z0-9_-]*)","captures":{"1":{"name":"storage.type"},"2":{"name":"entity.name.type"}}},{"match":"([a-zA-Z_][a-zA-Z0-9_-])*\\s*(:=)\\s*([a-zA-Z_][a-zA-Z0-9_-]*)","captures":{"1":{"name":"variable.parameter"},"2":{"name":"keyword.operator"},"3":{"name":"entity.name.type"}}},{"name":"support.constant","match":"(?\u003c!-)\\b(blue|red|green|yellow|red|black|linear|ease-in-quad|ease-out-quad|ease-in-out-quad|ease|ease-in|ease-out|ease-in-out|ease-in-quart|ease-out-quart|ease-in-out-quart|ease-in-quint|ease-out-quint|ease-in-out-quint|ease-in-expo|ease-out-expo|ease-in-out-expo|ease-in-sine|ease-out-sine|ease-in-out-sine|ease-in-back|ease-out-back|ease-in-out-back|ease-in-circ|ease-out-circ|ease-in-out-circ|ease-in-elastic|ease-out-elastic|ease-in-out-elastic|ease-in-bounce|ease-out-bounce|ease-in-out-bounce|cubic-bezier)\\b(?!-)"},{"include":"#property"}]},"general":{"patterns":[{"include":"#block-comments"},{"name":"comment.line","match":"//.*$"},{"name":"string.quoted.double","begin":"\"","end":"\"","patterns":[{"name":"constant.character.escape.untitled","match":"\\\\(n|\\\\|u\\{\\d+\\}|\\{[^\\}]+\\})"}]},{"name":"constant.other","match":"#([a-fA-F0-9]){3,8}"},{"name":"constant.numeric","match":"\\b\\d+(\\.\\d*)?(%|px|phx|pt|in|mm|cm|ms|s|deg|rad|turn)?\\b"}]},"property":{"patterns":[{"begin":"\\b(property)\\b","end":"(;|:|\u003c=\u003e)","patterns":[{"match":"\u003c([a-zA-Z_][a-zA-Z0-9_-]*)\u003e","captures":{"1":{"name":"entity.name.type"}}},{"name":"variable.parameter","match":"[a-zA-Z_][a-zA-Z0-9_-]*"},{"name":"keyword.operator","match":"\\b(\u003c=\u003e|:)\\b"}],"beginCaptures":{"1":{"name":"keyword.other"}}}]}}}
@@ -1 +1 @@
1
- {"name":"SourcePawn","scopeName":"source.sourcepawn","patterns":[{"include":"#keywords"},{"include":"#strings"},{"include":"#comments"},{"include":"#builtIns"},{"name":"meta.include.sourcepawn","match":"(\\#include|\\#tryinclude)\\s([\u003c\"](.+)[\u003e\"])","captures":{"1":{"name":"keyword.other.sourcepawn"},"2":{"name":"string.sourcepawn"}}},{"name":"meta.define.sourcepawn","match":"(\\#define)\\s(\\w+)","captures":{"1":{"name":"keyword.other.sourcepawn"},"2":{"name":"support.constant.core.sourcepawn"}}},{"name":"keyword.other.sourcepawn","match":"#(if|else|endif|emit|pragma|deprecated|undef|endinput|endscript|assert|define|error|warning|file)"},{"name":"support.type.core.sourcepawn","match":"\\b(?:bool|char|const|float|int|void|any)\\b"},{"match":"\\b([A-Za-z_][A-Za-z0-9_]*)\\s*\\(","captures":{"1":{"name":"entity.name.function.sourcepawn"}}},{"name":"meta.brackets.sourcepawn","match":"\\b\\[.+]\\b"},{"name":"constant.numeric.float.sourcepawn","match":"\\b[0-9]+\\.[0-9]+\\b"},{"name":"constant.numeric.integer.sourcepawn","match":"\\b[0-9]+\\b"},{"name":"constant.numeric.sourcepawn","match":"\\b0b[0-1]+\\b"},{"name":"constant.numeric.sourcepawn","match":"\\b0o[0-7]+\\b"},{"name":"constant.numeric.sourcepawn","match":"\\b0x[0-9a-fA-F]+\\b"},{"name":"constant.language.boolean.sourcepawn","match":"\\b(?:true|false)\\b"}],"repository":{"builtIns":{"patterns":[{"include":"#constants"},{"name":"support.type.core.sourcepawn","match":"\\b(?:Action|AmbientSHook|NormalSHook|Timer|AdminId|GroupId|AdminFlag|OverrideType|OverrideRule|AdminCachePart|AdmAccessMode|CookieAccess|CookieMenu|CookieMenuAction|CookieMenuHandler|AuthIdType|NetFlow|QueryCookie|Extension|SharedPlugin|ReplySource|CommandListener|ConCmd|SrvCmd|ConVarBounds|ConVar_Bounds|ConVarQueryResult|ConVarChanged|ConVarQueryFinished|Identity|ImmunityType|PluginInfo|PluginStatus|CSRoundEndReason|CSWeaponID|EventHook|DataPackPos|DBBindType|DBPriority|DBResult|PropFieldType|PropType|MoveType|RenderFx|RenderMode|EventHookMode|FileTimeMode|FileType|PathType|ExecType|ParamType|ClientRangeType|DialogType|EngineVersion|FindMapResult|KvDataTypes|MapChange|NominateResult|MenuAction|MenuSource|SQLConnectCallback|SQLQueryCallback|SQLTCallback|SQLTxnFailure|SQLTxnSuccess|GameLogHook|EntityOutput|MenuStyle|SDKHookCB|MenuHandler|VoteHandler|MultiTargetFilter|PlVers|RegexError|SDKHookType|UseType|SDKCallType|SDKFuncConfSource|TEHook|SortFunc1D|SortFunc2D|SortFuncADTArray|SDKLibrary|TraceEntityFilter|SDKPassMethod|SDKType|RoundState|RayType|ListenOverride|SortOrder|SortType|Address|APLRes|FeatureStatus|FeatureType|NumberType|TopMenuHandler|MsgHook|MsgPostHook|NativeCall|RequestFrameCallback|SMC_EndSection|SMC_KeyValue|SMC_NewSection|SMC_ParseEnd|SMC_ParseStart|SMC_RawLine|SMCError|SMCResult|TFClassType|TFCond|TFHoliday|TFObjectMode|TFObjectType|TFTeam|TFResourceType|TopMenuAction|TopMenuObject|TopMenuObjectType|TopMenuPosition|UserMessageType|UserMsg)\\b"},{"name":"support.type.core.sourcepawn","match":"\\b(?:ArrayList|ArrayStack|StringMap|StringMapSnapshot|BfRead|BfWrite|DataPack)\\b"},{"name":"support.type.core.sourcepawn","match":"\\b(?:Plugin|Handle|ConVar|Cookie|Database|DBDriver|DBResultSet|DBStatement|GameData|Transaction|Event|File|DirectoryListing|KeyValues|Menu|Panel|Protobuf|Regex|SMCParser|TopMenu|Timer|FrameIterator|GlobalForward|PrivateForward|Profiler)\\b"}]},"comments":{"patterns":[{"name":"comment.sourcepawn","match":"\\/\\/.*"},{"name":"comment.block.sourcepawn","begin":"/\\*","end":"\\*/","captures":{"0":{"name":"comment.sourcepawn"}}}]},"constants":{"patterns":[{"name":"support.constant.core.sourcepawn","match":"\\b(?:MAXPLAYERS|MaxClients|REQUIRE_PLUGIN|REQUIRE_EXTENSIONS|MAX_NAME_LENGTH|MAX_TARGET_LENGTH|INVALID_FCVAR_FLAGS|NULL_VECTOR|NULL_STRING|AUTOLOAD_EXTENSIONS|PLATFORM_MAX_PATH|Path_SM|SP_PARAMFLAG_BYREF|INVALID_ENT_REFERENCE|INVALID_HANDLE|null|LANG_SERVER|PB_FIELD_NOT_REPEATED|MAX_LIGHTSTYLES|FEATURECAP_PLAYERRUNCMD_11PARAMS|INVALID_STRING_TABLE|INVALID_STRING_INDEX|INVALID_TOPMENUOBJECT|INVALID_MESSAGE_ID|QUERYCOOKIE_FAILED)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bADMFLAG_(?:RESERVATION|GENERIC|KICK|BAN|UNBAN|SLAY|CHANGEMAP|CONVARS|CONFIG|CHAT|VOTE|PASSWORD|RCON|CHEATS|ROOT|CUSTOM1|CUSTOM2|CUSTOM3|CUSTOM4|CUSTOM5|CUSTOM6)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bAUTHMETHOD_(?:STEAM|IP|NAME)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bINVALID_(?:GROUP_ID|ADMIN_ID)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bADMINMENU_(?:PLAYERCOMMANDS|SERVERCOMMANDS|VOTINGCOMMANDS)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bBANFLAG_(?:AUTO|IP|AUTHID|NOKICK)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bCOMMAND_FILTER_(?:ALIVE|DEAD|CONNECTED|NO_IMMUNITY|NO_MULTI|NO_BOTS)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bCOMMAND_TARGET_(?:NONE|NOT_ALIVE|NOT_DEAD|NOT_IN_GAME|IMMUNE|EMPTY_FILTER|NOT_HUMAN|AMBIGUOUS)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bFL_(?:EDICT_CHANGED|EDICT_FREE|EDICT_FULL|EDICT_FULLCHECK|EDICT_ALWAYS|EDICT_DONTSEND|EDICT_PVSCHECK|EDICT_PENDING_DORMANT_CHECK|EDICT_DIRTY_PVS_INFORMATION|FULL_EDICT_CHANGED)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\b(?:MOVETYPE_NONE|MOVETYPE_ISOMETRIC|MOVETYPE_WALK|MOVETYPE_STEP|MOVETYPE_FLY|MOVETYPE_FLYGRAVITY|MOVETYPE_VPHYSICS|MOVETYPE_PUSH|MOVETYPE_NOCLIP|MOVETYPE_LADDER|MOVETYPE_OBSERVER|MOVETYPE_CUSTOM)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bRENDER_(?:NORMAL|TRANSCOLOR|TRANSTEXTURE|GLOW|TRANSALPHA|TRANSADD|ENVIRONMENTAL|TRANSADDFRAMEBLEND|TRANSALPHAADD|WORLDGLOW|NONE)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bRENDERFX_(?:NONE|PULSE_SLOW|PULSE_FAST|PULSE_SLOW_WIDE|PULSE_FAST_WIDE|FADE_SLOW|FADE_FAST|SOLID_SLOW|SOLID_FAST|STROBE_SLOW|STROBE_FAST|STROBE_FASTER|FLICKER_SLOW|FLICKER_FAST|NO_DISSIPATION|DISTORT|HOLOGRAM|EXPLODE|GLOWSHELL|CLAMP_MIN_SCALE|ENV_RAIN|ENV_SNOW|SPOTLIGHT|RAGDOLL|PULSE_FAST_WIDER|MAX)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bIN_(?:ATTACK|JUMP|DUCK|FORWARD|BACK|USE|CANCEL|LEFT|RIGHT|MOVELEFT|MOVERIGHT|ATTACK2|RUN|RELOAD|ALT1|ALT2|SCORE|SPEED|WALK|ZOOM|WEAPON1|WEAPON2|BULLRUSH|GRENADE1|GRENADE2|ATTACK3)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bFL_(?:ONGROUND|DUCKING|WATERJUMP|ONTRAIN|INRAIN|FROZEN|ATCONTROLS|CLIENT|FAKECLIENT|PLAYER_FLAG_BITS|INWATER|FLY|SWIM|CONVEYOR|NPC|GODMODE|NOTARGET|AIMTARGET|PARTIALGROUND|STATICPROP|GRAPHED|GRENADE|STEPMOVEMENT|DONTTOUCH|BASEVELOCITY|WORLDBRUSH|OBJECT|KILLME|ONFIRE|DISSOLVING|TRANSRAGDOLL|UNBLOCKABLE_BY_PLAYER|FREEZING|EP2V_UNKNOWN1)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bSEEK_(?:SET|CUR|END)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bSM_PARAM_(?:COPYBACK|STRING_UTF8|STRING_COPY|STRING_BINARY)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bSP_ERROR_(?:NONE|FILE_FORMAT|DECOMPRESSOR|HEAPLOW|PARAM|INVALID_ADDRESS|NOT_FOUND|INDEX|STACKLOW|NOTDEBUGGING|INVALID_INSTRUCTION|MEMACCESS|STACKMIN|HEAPMIN|DIVIDE_BY_ZERO|ARRAY_BOUNDS|INSTRUCTION_PARAM|STACKLEAK|HEAPLEAK|ARRAY_TOO_BIG|TRACKER_BOUNDS|INVALID_NATIVE|PARAMS_MAX|NATIVE|NOT_RUNNABLE|ABORTED)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bSOURCE_SDK_(?:UNKNOWN|ORIGINAL|DARKMESSIAH|EPISODE1|EPISODE2|BLOODYGOODTIME|EYE|CSS|EPISODE2VALVE|LEFT4DEAD|LEFT4DEAD2|ALIENSWARM|CSGO|DOTA)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bMOTDPANEL_(?:TYPE_TEXT|TYPE_INDEX|TYPE_URL|TYPE_FILE)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bMENU_(?:ACTIONS_DEFAULT|ACTIONS_ALL|NO_PAGINATION|TIME_FOREVER)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bITEMDRAW_(?:DEFAULT|DISABLED|RAWLINE|NOTEXT|SPACER|IGNORE|CONTROL)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bMENUFLAG_(?:BUTTON_EXIT|BUTTON_EXITBACK|NO_SOUND|BUTTON_NOVOTE)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bVOTEINFO_(?:CLIENT_INDEX|CLIENT_ITEM|ITEM_INDEX|ITEM_VOTES)|VOTEFLAG_NO_REVOTES\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bPCRE_(?:CASELESS|MULTILINE|DOTALL|EXTENDED|ANCHORED|DOLLAR_ENDONLY|UNGREEDY|NOTEMPTY|UTF8|NO_UTF8_CHECK|UCP)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bVDECODE_FLAG_(?:ALLOWNULL|ALLOWNOTINGAME|ALLOWWORLD|BYREF)|VENCODE_FLAG_COPYBACK\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bSOUND_FROM_(?:PLAYER|LOCAL_PLAYER|WORLD)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bSNDCHAN_(?:REPLACE|AUTO|WEAPON|VOICE|ITEM|BODY|STREAM|STATIC|VOICE_BASE|USER_BASE)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bSND_(?:NOFLAGS|CHANGEVOL|CHANGEPITCH|STOP|SPAWNING|DELAY|STOPLOOPING|SPEAKER|SHOULDPAUSE)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bSNDLEVEL_(?:NONE|RUSTLE|WHISPER|LIBRARY|FRIDGE|HOME|CONVO|DRYER|DISHWASHER|CAR|NORMAL|TRAFFIC|MINIBIKE|SCREAMING|TRAIN|HELICOPTER|SNOWMOBILE|AIRCRAFT|RAIDSIREN|GUNFIRE|ROCKET)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\b(?:SNDVOL_NORMAL|SNDPITCH_NORMAL|SNDPITCH_LOW|SNDPITCH_HIGH|SNDATTN_NONE|SNDATTN_NORMAL|SNDATTN_STATIC|SNDATTN_RICOCHET|SNDATTN_IDLE)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bTE_EXPLFLAG_(?:NONE|NOADDITIVE|NODLIGHTS|NOSOUND|NOPARTICLES|DRAWALPHA|ROTATE|NOFIREBALL|NOFIREBALLSMOKE)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bFBEAM_(?:STARTENTITY|ENDENTITY|FADEIN|FADEOUT|SINENOISE|SOLID|SHADEIN|SHADEOUT|ONLYNOISEONCE|NOTILE|USE_HITBOXES|STARTVISIBLE|ENDVISIBLE|ISACTIVE|FOREVER|HALOBEAM)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bCONTENTS_(?:EMPTY|SOLID|WINDOW|AUX|GRATE|SLIME|WATER|MIST|OPAQUE|LAST_VISIBLE_CONTENTS|ALL_VISIBLE_CONTENTS|TESTFOGVOLUME|UNUSED5|UNUSED6|TEAM1|TEAM2|IGNORE_NODRAW_OPAQUE|MOVEABLE|AREAPORTAL|PLAYERCLIP|MONSTERCLIP|CURRENT_0|CURRENT_90|CURRENT_180|CURRENT_270|CURRENT_UP|CURRENT_DOWN|ORIGIN|MONSTER|DEBRIS|DETAIL|TRANSLUCENT|LADDER|HITBOX)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bMASK_(?:ALL|SOLID|PLAYERSOLID|NPCSOLID|WATER|OPAQUE|OPAQUE_AND_NPCS|VISIBLE|VISIBLE_AND_NPCS|SHOT|SHOT_HULL|SHOT_PORTAL|SOLID_BRUSHONLY|PLAYERSOLID_BRUSHONLY|NPCSOLID_BRUSHONLY|NPCWORLDSTATIC|SPLITAREAPORTAL)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bVOICE_(?:NORMAL|MUTED|SPEAKALL|LISTENALL|TEAM|LISTENTEAM)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bTF_STUNFLAG(?:_SLOWDOWN|_BONKSTUCK|_LIMITMOVEMENT|_CHEERSOUND|_NOSOUNDOREFFECT|_THIRDPERSON|_GHOSTEFFECT|S_LOSERSTATE|S_GHOSTSCARE|S_SMALLBONK|S_NORMALBONK|S_BIGBONK)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bTF_CONDFLAG_(?:NONE|SLOWED|ZOOMED|DISGUISING|DISGUISED|CLOAKED|UBERCHARGED|TELEPORTGLOW|TAUNTING|UBERCHARGEFADE|CLOAKFLICKER|TELEPORTING|KRITZKRIEGED|DEADRINGERED|BONKED|DAZED|BUFFED|CHARGING|DEMOBUFF|CRITCOLA|INHEALRADIUS|HEALING|ONFIRE|OVERHEALED|JARATED|BLEEDING|DEFENSEBUFFED|MILKED|MEGAHEAL|REGENBUFFED|MARKEDFORDEATH)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bTF_DEATHFLAG_(?:KILLERDOMINATION|ASSISTERDOMINATION|KILLERREVENGE|ASSISTERREVENGE|FIRSTBLOOD|DEADRINGER|INTERRUPTED|GIBBED|PURGATORY)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bUSERMSG_(?:RELIABLE|INITMSG|BLOCKHOOKS)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bSOURCEMOD_(?:V_TAG|V_REV|V_CSET|V_MAJOR|V_MINOR|V_RELEASE|VERSION)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bDBPrio_(?:High|Normal|Low)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\b(?:TIMER_REPEAT|TIMER_FLAG_NO_MAPCHANGE|TIMER_HNDL_CLOSE|TIMER_DATA_HNDL_CLOSE)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bDMG_(?:GENERIC|CRUSH|BULLET|SLASH|BURN|VEHICLE|FALL|BLAST|CLUB|SHOCK|SONIC|ENERGYBEAM|PREVENT_PHYSICS_FORCE|NEVERGIB|ALWAYSGIB|DROWN|PARALYZE|NERVEGAS|POISON|RADIATION|DROWNRECOVER|ACID|SLOWBURN|REMOVENORAGDOLL|PHYSGUN|PLASMA|AIRBOAT|DISSOLVE|BLAST_SURFACE|DIRECT|BUCKSHOT|CRIT)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bCS_(?:TEAM_NONE|TEAM_SPECTATOR|TEAM_T|TEAM_CT|SLOT_PRIMARY|SLOT_SECONDARY|SLOT_KNIFE|SLOT_GRENADE|SLOT_C4|DMG_HEADSHOT)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bFCVAR_(?:PLUGIN|LAUNCHER|NONE|UNREGISTERED|DEVELOPMENTONLY|GAMEDLL|CLIENTDLL|MATERIAL_SYSTEM|HIDDEN|PROTECTED|SPONLY|ARCHIVE|NOTIFY|USERINFO|PRINTABLEONLY|UNLOGGED|FCVAR_NEVER_AS_STRING|REPLICATED|CHEAT|SS|DEMO|DONTRECORD|SS_ADDED|RELEASE|RELOAD_MATERIALS|RELOAD_TEXTURES|NOT_CONNECTED|MATERIAL_SYSTEM_THREAD|ARCHIVE_XBOX|ARCHIVE_GAMECONSOLE|ACCESSIBLE_FROM_THREADS|SERVER_CAN_EXECUTE|SERVER_CANNOT_QUERY|CLIENTCMD_CAN_EXECUTE)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bPlugin_(?:Handled|Continue|Stop|Changed)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\b(?:Identity_Core|Identity_Extension|Identity_Plugin)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bPlugin_(?:Running|Paused|Error|Loaded|Failed|Created|Uncompiled|BadLoad|Evicted)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bAdmin_(?:Reservation|Generic|Kick|Ban|Unban|Slay|Changemap|Convars|Config|Chat|Vote|Password|RCON|Cheats|Root|Custom1|Custom2|Custom3|Custom4|Custom5|Custom6)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bAccess_(?:Real|Effective)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\b(?:AdminCache_Overrides|AdminCache_Groups|AdminCache_Admins)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\b(?:CookieAccess_Public|CookieAccess_Protected|CookieAccess_Private)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bCookieMenu_(?:YesNo|YesNo_Int|OnOff|OnOff_Int)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bCookieMenuAction_(?:DisplayOption|SelectOption)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bSM_REPLY_TO_(?:CONSOLE|CHAT)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bConVarBound_(?:Upper|Lower)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bConVarQuery_(?:Okay|NotFound|NotValid|Protected)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bPlInfo_(?:Name|Author|Description|Version|URL)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bDBVal_(?:Error|TypeMismatch|Null|Data)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bDBBind_(?:Int|Float|String)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bProp_(?:Send|Data)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bPropField_(?:Unsupported|Integer|Float|Entity|Vector|String|String_T)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bEventHookMode_(?:Pre|Post|PostNoCopy)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bFileType_(?:Unknown|Directory|File)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bFileTime_(?:LastAccess|Created|LastChange)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bParam_(?:Any|Cell|Float|String|Array|VarArgs|CellByRef|FloatByRef)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bET_(?:Ignore|Single|Event|Hook)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bDialogType_(?:Msg|Menu|Text|Entry|AskConnect)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bEngine_(?:Unknown|Original|SourceSDK2006|SourceSDK2007|Left4Dead|DarkMessiah|Left4Dead2|AlienSwarm|BloodyGoodTime|EYE|Portal2|CSGO|CSS|DOTA|HL2DM|DODS|TF2|NuclearDawn|SDK2013|Blade|Insurgency|Contagion|BlackMesa)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bFindMap_(?:Found|NotFound|FuzzyMatch|NonCanonical|PossiblyAvailable)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bKvData_(?:None|String|Int|Float|Ptr|WString|Color|UInt64|NUMTYPES)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bNominate_(?:Added|Replaced|AlreadyInVote|InvalidMap|VoteFull)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bMapChange_(?:Instant|RoundEnd|MapEnd)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bMenuStyle_(?:Default|Valve|Radio)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bMenuCancel_(?:Disconnected|Interrupted|Exit|NoDisplay|Timeout|ExitBack)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bVoteCancel_(?:Generic|NoVotes)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bMenuEnd_(?:Selected|VotingDone|VotingCancelled|Cancelled|Exit|ExitBack)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bMenuSource_(?:None|External|Normal|RawPanel)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bREGEX_ERROR_(?:NONE|NOMATCH|NULL|BADOPTION|BADMAGIC|UNKNOWN_OPCODE|NOMEMORY|NOSUBSTRING|MATCHLIMIT|CALLOUT|BADUTF8|BADUTF8_OFFSET|PARTIAL|BADPARTIAL|INTERNAL|BADCOUNT|DFA_UITEM|DFA_UCOND|DFA_UMLIMIT|DFA_WSSIZE|DFA_RECURSE|RECURSIONLIMIT|NULLWSLIMIT|BADNEWLINE|BADOFFSET|SHORTUTF8|RECURSELOOP|JIT_STACKLIMIT|BADMODE|BADENDIANNESS|DFA_BADRESTART|JIT_BADOPTION|BADLENGTH)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bUse_(?:Off|On|Set|Toggle)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bSDKCall_(?:Static|Entity|Player|GameRules|EntityList|Raw)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bSDKLibrary_(?:Server|Engine)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bSDKConf_(?:Virtual|Signature|Address)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bSDKType_(?:CBaseEntity|CBasePlayer|Vector|QAngle|PlainOldData|Float|Edict|String|Bool)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bSDKPass_(?:Pointer|Plain|ByValue|ByRef)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bRoundState_(?:Init|Pregame|StartGame|Preround|RoundRunning|TeamWin|Restart|Stalemate|GameOver|Bonus|BetweenRounds)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bSMCParse_(?:Continue|Halt|HaltFail)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bSMCError_(?:Okay|StreamOpen|StreamError|Custom|InvalidSection1|InvalidSection2|InvalidSection3|InvalidSection4|InvalidSection5|InvalidTokens|TokenOverflow|InvalidProperty1)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bTFHoliday_(?:Invalid|Birthday|Halloween|Christmas|EndOfTheLine|CommunityUpdate|ValentinesDay|MeetThePyro|SpyVsEngyWar|FullMoon|HalloweenOrFullMoon|HalloweenOrFullMoonOrValentines|AprilFools)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bTF_CUSTOM_(?:HEADSHOT|BACKSTAB|BURNING|WRENCH_FIX|MINIGUN|SUICIDE|TAUNT_HADOUKEN|BURNING_FLARE|TAUNT_HIGH_NOON|TAUNT_GRAND_SLAM|PENETRATE_MY_TEAM|PENETRATE_ALL_PLAYERS|TAUNT_FENCING|PENETRATE_HEADSHOT|TAUNT_ARROW_STAB|TELEFRAG|BURNING_ARROW|FLYINGBURN|PUMPKIN_BOMB|DECAPITATION|TAUNT_GRENADE|BASEBALL|CHARGE_IMPACT|TAUNT_BARBARIAN_SWING|AIR_STICKY_BURST|DEFENSIVE_STICKY|PICKAXE|ROCKET_DIRECTHIT|TAUNT_UBERSLICE|PLAYER_SENTRY|STANDARD_STICKY|SHOTGUN_REVENGE_CRIT|TAUNT_ENGINEER_SMASH|BLEEDING|GOLD_WRENCH|CARRIED_BUILDING|COMBO_PUNCH|TAUNT_ENGINEER_ARM|FISH_KILL|TRIGGER_HURT|DECAPITATION_BOSS|STICKBOMB_EXPLOSION|AEGIS_ROUND|FLARE_EXPLOSION|BOOTS_STOMP|PLASMA|PLASMA_CHARGED|PLASMA_GIB|PRACTICE_STICKY|EYEBALL_ROCKET|HEADSHOT_DECAPITATION|TAUNT_ARMAGEDDON|FLARE_PELLET|CLEAVER|CLEAVER_CRIT|SAPPER_RECORDER_DEATH|MERASMUS_PLAYER_BOMB|MERASMUS_GRENADE|MERASMUS_ZAP|MERASMUS_DECAPITATION|CANNONBALL_PUSH|TAUNT_ALLCLASS_GUITAR_RIFF|THROWABLE|THROWABLE_KILL|SPELL_TELEPORT|SPELL_SKELETON|SPELL_MIRV|SPELL_METEOR|SPELL_LIGHTNING|SPELL_FIREBALL|SPELL_MONOCULUS|SPELL_BLASTJUMP|SPELL_BATS|SPELL_TINY|KART|GIANT_HAMMER|RUNE_REFLECT)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bTF_WEAPON_(?:NONE|BAT|BAT_WOOD|BOTTLE|FIREAXE|CLUB|CROWBAR|KNIFE|FISTS|SHOVEL|WRENCH|BONESAW|SHOTGUN_PRIMARY|SHOTGUN_SOLDIER|SHOTGUN_HWG|SHOTGUN_PYRO|SCATTERGUN|SNIPERRIFLE|MINIGUN|SMG|SYRINGEGUN_MEDIC|TRANQ|ROCKETLAUNCHER|GRENADELAUNCHER|PIPEBOMBLAUNCHER|FLAMETHROWER|GRENADE_NORMAL|GRENADE_CONCUSSION|GRENADE_NAIL|GRENADE_MIRV|GRENADE_MIRV_DEMOMAN|GRENADE_NAPALM|GRENADE_GAS|GRENADE_EMP|GRENADE_CALTROP|GRENADE_PIPEBOMB|GRENADE_SMOKE_BOMB|GRENADE_HEAL|GRENADE_STUNBALL|GRENADE_JAR|GRENADE_JAR_MILK|PISTOL|PISTOL_SCOUT|REVOLVER|NAILGUN|PDA|PDA_ENGINEER_BUILD|PDA_ENGINEER_DESTROY|PDA_SPY|BUILDER|MEDIGUN|GRENADE_MIRVBOMB|FLAMETHROWER_ROCKET|GRENADE_DEMOMAN|SENTRY_BULLET|SENTRY_ROCKET|DISPENSER|INVIS|FLAREGUN|LUNCHBOX|JAR|COMPOUND_BOW|BUFF_ITEM|PUMPKIN_BOMB|SWORD|DIRECTHIT|LIFELINE|LASER_POINTER|DISPENSER_GUN|SENTRY_REVENGE|JAR_MILK|HANDGUN_SCOUT_PRIMARY|BAT_FISH|CROSSBOW|STICKBOMB|HANDGUN_SCOUT_SEC|SODA_POPPER|SNIPERRIFLE_DECAP|RAYGUN|PARTICLE_CANNON|MECHANICAL_ARM|DRG_POMSON|BAT_GIFTWRAP|GRENADE_ORNAMENT|RAYGUN_REVENGE|PEP_BRAWLER_BLASTER|CLEAVER|GRENADE_CLEAVER|STICKY_BALL_LAUNCHER|GRENADE_STICKY_BALL|SHOTGUN_BUILDING_RESCUE|CANNON|THROWABLE|GRENADE_THROWABLE|PDA_SPY_BUILD|GRENADE_WATERBALLOON|HARVESTER_SAW|SPELLBOOK|SPELLBOOK_PROJECTILE|SNIPERRIFLE_CLASSIC|PARACHUTE|GRAPPLINGHOOK|PASSTIME_GUN|CHARGED_SMG)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bTFWeaponSlot_(?:Primary|Secondary|Melee|Grenade|Building|PDA|Item1|Item2)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bTF_FLAGEVENT_(?:PICKEDUP|CAPTURED|DEFENDED|DROPPED|RETURNED)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bTFResource_(?:Ping|Score|Deaths|TotalScore|Captures|Defenses|Dominations|Revenge|BuildingsDestroyed|Headshots|Backstabs|HealPoints|Invulns|Teleports|ResupplyPoints|KillAssists|MaxHealth|PlayerClass)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bUM_(?:BitBuf|Protobuf)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bCommand_(?:Deny|Allow)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bOverride_(?:Command|CommandGroup)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bAPLRes_(?:Success|Failure|SilentFailure)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bAddress_(?:Null|MinimumValid)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bSort_(?:Ascending|Descending|Random)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bSort_(?:Integer|Float|String)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bListen_(?:Default|Yes|No)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bRayType_(?:Infinite|EndPoint)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bCSRoundEnd_(?:TargetBombed|VIPEscaped|VIPKilled|TerroristsEscaped|CTStoppedEscape|TerroristsStopped|BombDefused|CTWin|TerroristWin|Draw|HostagesRescued|TargetSaved|HostagesNotRescued|TerroristsNotEscaped|VIPNotEscaped|GameStart|TerroristsSurrender|CTSurrender|TerroristsPlanted|CTsReachedHostage)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bCSWeapon_(?:NONE|P228|GLOCK|SCOUT|HEGRENADE|XM1014|C4|MAC10|AUG|SMOKEGRENADE|ELITE|FIVESEVEN|UMP45|SG550|GALIL|FAMAS|USP|AWP|MP5NAVY|M249|M3|M4A1|TMP|G3SG1|FLASHBANG|DEAGLE|SG552|AK47|KNIFE|P90|SHIELD|KEVLAR|ASSAULTSUIT|NIGHTVISION|GALILAR|BIZON|MAG7|NEGEV|SAWEDOFF|TEC9|TASER|HKP2000|MP7|MP9|NOVA|P250|SCAR17|SCAR20|SG556|SSG08|KNIFE_GG|MOLOTOV|DECOY|INCGRENADE|DEFUSER|HEAVYASSAULTSUIT|CUTTERS|HEALTHSHOT|KNIFE_T|M4A1_SILENCER|USP_SILENCER|CZ75A|REVOLVER|TAGGRENADE|FISTS|BREACHCHARGE|TABLET|MELEE|AXE|HAMMER|SPANNER|KNIFE_GHOST|FIREBOMB|DIVERSION|FRAGGRENADE|SNOWBALL|MAX_WEAPONS_NO_KNIFES|BAYONET|KNIFE_FLIP|KNIFE_GUT|KNIFE_KARAMBIT|KNIFE_M9_BAYONET|KNIFE_TATICAL|KNIFE_FALCHION|KNIFE_SURVIVAL_BOWIE|KNIFE_BUTTERFLY|KNIFE_PUSH|KNIFE_URSUS|KNIFE_GYPSY_JACKKNIFE|KNIFE_STILETTO|KNIFE_WIDOWMAKER|MAX_WEAPONS)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bAuthId_(?:Engine|Steam2|Steam3|SteamID64)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bNetFlow_(?:Outgoing|Incoming|Both)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bMenuAction_(?:Start|Display|Select|Cancel|End|VoteEnd|VoteStart|VoteCancel|DrawItem|DisplayItem)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bTopMenuAction_(?:DisplayOption|DisplayTitle|SelectOption|DrawOption|RemoveObject)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bTopMenuObject_(?:Category|Item)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bTopMenuPosition_(?:Start|LastRoot|LastCategory)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bTFClass_(?:Unknown|Scout|Sniper|Soldier|DemoMan|Medic|Heavy|Pyro|Spy|Engineer)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bTFCond_(?:Slowed|Zoomed|Disguising|Disguised|Cloaked|Ubercharged|TeleportedGlow|Taunting|UberchargeFading|Unknown1|CloakFlicker|Teleporting|Kritzkrieged|Unknown2|TmpDamageBonus|DeadRingered|Bonked|Dazed|Buffed|Charging|DemoBuff|CritCola|InHealRadius|Healing|OnFire|Overhealed|Jarated|Bleeding|DefenseBuffed|Milked|MegaHeal|RegenBuffed|MarkedForDeath|NoHealingDamageBuff|SpeedBuffAlly|HalloweenCritCandy|CritCanteen|CritDemoCharge|CritHype|CritOnFirstBlood|CritOnWin|CritOnFlagCapture|CritOnKill|RestrictToMelee|DefenseBuffNoCritBlock|Reprogrammed|CritMmmph|DefenseBuffMmmph|FocusBuff|DisguiseRemoved|MarkedForDeathSilent|DisguisedAsDispenser|Sapped|UberchargedHidden|UberchargedCanteen|HalloweenBombHead|HalloweenThriller|RadiusHealOnDamage|CritOnDamage|UberchargedOnTakeDamage|UberBulletResist|UberBlastResist|UberFireResist|SmallBulletResist|SmallBlastResist|SmallFireResist|Stealthed|MedigunDebuff|StealthedUserBuffFade|BulletImmune|BlastImmune|FireImmune|PreventDeath|MVMBotRadiowave|HalloweenSpeedBoost|HalloweenQuickHeal|HalloweenGiant|HalloweenTiny|HalloweenInHell|HalloweenGhostMode|DodgeChance|Parachute|BlastJumping|HalloweenKart|HalloweenKartDash|BalloonHead|MeleeOnly|SwimmingCurse|HalloweenKartNoTurn|HalloweenKartCage|HasRune|RuneStrength|RuneHaste|RuneRegen|RuneResist|RuneVampire|RuneWarlock|RunePrecision|RuneAgility|MiniCritOnKill|ObscuredSmoke|FreezeInput|GrapplingHook|GrapplingHookSafeFall|GrapplingHookLatched|GrapplingHookBleeding|AfterburnImmune|RuneKnockout|RuneImbalance|CritRuneTemp|PasstimeInterception|SwimmingNoEffects|EyeaductUnderworld|KingRune|PlagueRune|SupernovaRune|Plague|KingAura|SpawnOutline|KnockedIntoAir|CompetitiveWinner|CompetitiveLoser|NoTaunting|TFCondDuration_Infinite)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bTFObjectMode_(?:None|Entrance|Exit)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bTFObject_(?:CartDispenser|Dispenser|Teleporter|Sentry|Sapper)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bTFTeam_(?:Unassigned|Spectator|Red|Blue)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bFeatureStatus_(?:Available|Unavailable|Unknown)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bNumberType_(?:Int8|Int16|Int32)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bFeatureType_(?:Native|Capability)\\b"},{"name":"support.constant.core.sourcepawn","match":"\\bSDKHook_(?:EndTouch|FireBulletsPost|OnTakeDamage|OnTakeDamagePost|PreThink|PostThink|SetTransmit|Spawn|StartTouch|Think|Touch|TraceAttack|TraceAttackPost|WeaponCanSwitchTo|WeaponCanUse|WeaponDrop|WeaponEquip|WeaponSwitch|ShouldCollide|PreThinkPost|PostThinkPost|ThinkPost|EndTouchPost|GroundEntChangedPost|SpawnPost|StartTouchPost|TouchPost|VPhysicsUpdate|VPhysicsUpdatePost|WeaponCanSwitchToPost|WeaponCanUsePost|WeaponDropPost|WeaponEquipPost|WeaponSwitchPost|Use|UsePost|Reload|ReloadPost|GetMaxHealth|Blocked|BlockedPost|OnTakeDamageAlive|OnTakeDamageAlivePost|CanBeAutobalanced)\\b"}]},"keywords":{"patterns":[{"name":"keyword.operator.sourcepawn","match":"%|\u0026|\\*|/[^(?:\\*|/)]|\\-|\\+|~|=|\u003c|\u003e|!|\\||\\?|\\:|\\^"},{"name":"keyword.control.statement.sourcepawn","match":"\\b(?:if|else|for|while|do|switch|case|default)\\b"},{"name":"keyword.sourcepawn","match":"\\b(?:return|break|continue|new|static|decl|delete|forward|native|property|public|stock|enum|funcenum|functag|methodmap|struct|typedef|typeset|this|view_as|sizeof)\\b"}]},"strings":{"patterns":[{"name":"string.quoted.single.sourcepawn","begin":"'","end":"'|\\n","patterns":[{"name":"constant.character.escape.sourcepawn","match":"\\\\."}]},{"name":"string.quoted.double.sourcepawn","begin":"\"","end":"\"","patterns":[{"name":"constant.character.escape.sourcepawn","match":"\\\\.|%(?:c|b|d|i|u|f|L|N|s|T|t|X|x|%|\\.\\d+(?:b|d|i|u|f|s|X|x))"}]}]}}}
1
+ {"name":"SourcePawn","scopeName":"source.sourcepawn","patterns":[{"include":"#line_continuation_character"},{"include":"#literals"},{"include":"#comments"},{"include":"#operators"},{"include":"#preproc"},{"match":"(new)\\s+(\\w+)\\s*\\(","captures":{"1":{"patterns":[{"include":"#keywords"}]},"2":{"patterns":[{"include":"#type"}]}}},{"match":"(view_as)\\s*\u003c\\s*(\\w+)\\s*\u003e","captures":{"1":{"patterns":[{"include":"#keywords"}]},"2":{"patterns":[{"include":"#type"},{"include":"#old-type"}]}}},{"match":"(\\w+)\\:\\s*(\\w+)","captures":{"1":{"patterns":[{"include":"#old-type"}]},"2":{"patterns":[{"include":"#literals"},{"include":"#variable_name"}]}}},{"match":"(\\w+)\\:\\:(\\w*)","captures":{"1":{"patterns":[{"include":"#type_name"}]},"2":{"patterns":[{"include":"#variable_name"}]}}},{"name":"keyword.control.statement.sourcepawn","match":"\\b(?:if|else|for|while|do|switch|case|default|return|break|continue)\\b"},{"include":"#other-keywords"},{"include":"#methodmap"},{"include":"#typedef"},{"include":"#typeset"},{"include":"#functag"},{"include":"#funcenum"},{"include":"#enum_struct"},{"include":"#enum"},{"include":"#struct"},{"include":"#old-function-declaration"},{"include":"#function-declaration"},{"include":"#old-variable-declaration"},{"include":"#variable-declaration"},{"include":"#function-call"},{"name":"variable.language.sourcepawn","match":"\\bthis\\b"},{"match":"\\b(\\w+)\\b","captures":{"1":{"patterns":[{"include":"#variable_name"}]}}}],"repository":{"array-indexed-access":{"patterns":[{"match":"\\[([^\\]]+)\\]","captures":{"1":{"patterns":[{"include":"#literals"},{"include":"#other-keywords"},{"include":"#function-call"},{"include":"#variable_name"}]}}}]},"boolean-literal":{"patterns":[{"name":"constant.language.boolean.sourcepawn","match":"\\b(?:true|false)\\b"}]},"comments":{"patterns":[{"match":"(\\/\\/)\\s*(@param)\\s+([\\w\\.]+)\\s+(.*)","captures":{"1":{"name":"comment.sourcepawn"},"2":{"name":"storage.type.class.single-line.spdoc"},"3":{"name":"support.variable.single-line.spdoc"},"4":{"name":"comment.sourcepawn"}}},{"match":"(\\/\\/)\\s*(@return|@noreturn)\\s+(.*)","captures":{"1":{"name":"comment.sourcepawn"},"2":{"name":"keyword.control.single-line.spdoc"},"3":{"name":"comment.sourcepawn"}}},{"match":"(\\/\\/)\\s*(@error)\\s+(.*)","captures":{"1":{"name":"comment.sourcepawn"},"2":{"name":"string.regexp.single-line.spdoc"},"3":{"name":"comment.sourcepawn"}}},{"match":"(\\/\\/)\\s*(@(?:note|deprecated))\\s+(.*)","captures":{"1":{"name":"comment.sourcepawn"},"2":{"name":"support.function.single-line.spdoc"},"3":{"name":"comment.sourcepawn"}}},{"name":"comment.sourcepawn","match":"\\/\\/.*"},{"name":"comment.block.sourcepawn","begin":"/\\*","end":"\\*/","captures":{"0":{"name":"comment.sourcepawn"}}}]},"enum":{"begin":"(enum)\\s+(?:(\\w+(?:\\:)?)?(?:\\s*(\\([^\\(]*\\)))?)?","end":"(?\u003c=\\})","patterns":[{"include":"#literals"},{"include":"#comments"},{"include":"#preproc"},{"match":"(\\w+)","captures":{"1":{"patterns":[{"include":"#variable_name"}]}}}],"beginCaptures":{"1":{"patterns":[{"include":"#keywords"}]},"2":{"patterns":[{"include":"#type_name"}]},"3":{"patterns":[{"include":"#literals"}]}}},"enum_struct":{"match":"(enum\\s+struct\\s+)(\\w+)","captures":{"1":{"patterns":[{"include":"#keywords"}]},"2":{"patterns":[{"include":"#type_name"}]}}},"funcenum":{"begin":"(funcenum)\\s+(\\w+)","end":"(?\u003c=\\})","patterns":[{"begin":"(?:(\\w+)\\:)?\\s*(public)\\s*\\(","end":"\\)","patterns":[{"include":"#parameters"}],"beginCaptures":{"1":{"patterns":[{"include":"#old-type"}]},"2":{"patterns":[{"include":"#keywords"}]}}},{"include":"#comments"},{"include":"#preproc"}],"beginCaptures":{"1":{"patterns":[{"include":"#keywords"}]},"2":{"name":"support.type.core.funcenum.sourcepawn"}}},"functag":{"begin":"(functag)\\s+(\\w+)\\s+(?:([a-zA-Z_]\\w*)\\:\\s*)?(?:(public|stock)\\s*)?\\(","end":"\\)","patterns":[{"include":"#comments"},{"include":"#preproc"},{"include":"#parameters"}],"beginCaptures":{"1":{"patterns":[{"include":"#keywords"}]},"2":{"patterns":[{"include":"#type_name"}]},"3":{"patterns":[{"include":"#old-type"}]},"4":{"patterns":[{"include":"#keywords"}]}}},"function-call":{"match":"\\b([A-Za-z_][A-Za-z0-9_]*)\\s*\\(","captures":{"1":{"name":"entity.name.function.function_call.sourcepawn"}}},"function-declaration":{"patterns":[{"begin":"(?:(stock|public|static)\\s+)?(?:(native|forward)\\s+)?(\\w+)(\\s*(?:\\[[^\\]]*\\]\\s*)*)\\s+([a-zA-Z_]\\w*)\\(","end":"\\)","patterns":[{"include":"#parameters"},{"include":"#comments"},{"include":"#preproc"}],"beginCaptures":{"1":{"patterns":[{"include":"#keywords"}]},"2":{"patterns":[{"include":"#keywords"}]},"3":{"patterns":[{"include":"#type"}]},"4":{"patterns":[{"include":"#array-indexed-access"}]},"5":{"name":"entity.name.function.sourcepawn"}}}]},"keywords":{"patterns":[{"name":"keyword.visibility.sourcepawn","match":"\\b(public|stock)\\b"},{"name":"keyword.storage_class.sourcepawn","match":"\\b(const|static)\\b"},{"name":"keyword.type_declarator.sourcepawn","match":"\\b(typeset|typedef|funcenum|functag)\\b"},{"name":"keyword.view_as.sourcepawn","match":"\\b(view_as)\\b"},{"name":"keyword.variable_declarator.sourcepawn","match":"\\b(new|decl)\\b"},{"name":"keyword.function.sourcepawn","match":"\\b(function)\\b"},{"name":"keyword.enum.sourcepawn","match":"\\b(enum)\\b"},{"name":"keyword.struct.sourcepawn","match":"\\b(struct)\\b"},{"name":"keyword.methodmap.sourcepawn","match":"\\b(methodmap)\\b"}]},"line_continuation_character":{"patterns":[{"match":"(\\\\)\\n","captures":{"1":{"name":"constant.character.escape.line-continuation.sourcepawn"}}}]},"literals":{"patterns":[{"include":"#boolean-literal"},{"include":"#null-literal"},{"include":"#numeric-literal"},{"include":"#string-literal"}]},"methodmap":{"match":"(methodmap)\\s+([a-zA-Z_]\\w*)\\s*(?:(?:\\\u003c\\s*([a-zA-Z_]\\w*)|(__nullable__)))?","captures":{"1":{"patterns":[{"include":"#keywords"}]},"2":{"patterns":[{"name":"support.type.core.sourcepawn","match":"[A-Z]\\w*"},{"match":"([^A-Z])(\\w*)","captures":{"1":{"name":"invalid.illegal.constant.sourcepawn"},"2":{"name":"support.type.core.sourcepawn"}}}]},"3":{"patterns":[{"name":"support.type.core.sourcepawn","match":"[A-Z]\\w*"},{"match":"([^A-Z])(\\w*)","captures":{"1":{"name":"invalid.illegal.constant.sourcepawn"},"2":{"name":"support.type.core.sourcepawn"}}}]},"4":{"name":"keyword.__nullable__.sourcepawn"}}},"null-literal":{"patterns":[{"name":"constant.language.sourcepawn","match":"\\bnull\\b"}]},"numeric-literal":{"patterns":[{"name":"constant.numeric.float.sourcepawn","match":"[0-9]+\\.[0-9]+"},{"name":"constant.numeric.sourcepawn","match":"\\b0b[0-1]+\\b"},{"name":"constant.numeric.sourcepawn","match":"\\b0o[0-7]+\\b"},{"name":"constant.numeric.sourcepawn","match":"\\b(0x(?:(?:(?:[0-9a-fA-F]{2}_?)+)|(?:[0-9a-fA-F]+)))\\b"},{"name":"constant.numeric.integer.sourcepawn","match":"\\b((?:\\d|_)+)\\b"},{"name":"invalid.illegal.constant.sourcepawn","match":"\\b\\d+\\w+\\b"}]},"old-function-declaration":{"patterns":[{"begin":"(?:(stock|public|static)\\s+)?(?:(native|forward)\\s+)?(\\w+)\\:\\s*([a-zA-Z_]\\w*)\\(","end":"\\)","patterns":[{"include":"#parameters"},{"include":"#comments"},{"include":"#preproc"}],"beginCaptures":{"1":{"patterns":[{"include":"#keywords"}]},"2":{"patterns":[{"include":"#keywords"}]},"3":{"patterns":[{"include":"#old-type"}]},"4":{"name":"entity.name.function.sourcepawn"}}}]},"old-parameter-declaration":{"patterns":[{"match":"(?:(\\w+)\\:\\s*)?(\\w+)\\s*((?:\\[[^\\]]*\\]\\s*)+)?","captures":{"1":{"patterns":[{"include":"#old-type"}]},"2":{"patterns":[{"include":"#variable_name"}]},"3":{"patterns":[{"include":"#array-indexed-access"}]}}}]},"old-type":{"patterns":[{"match":"(bool|any|String|Float)|(\\w+)","captures":{"1":{"name":"storage.type.old.built-in.primitive.sourcepawn"},"2":{"patterns":[{"include":"#type_name"}]}}}]},"old-variable-declaration":{"patterns":[{"match":"(?:(stock|public)\\s+)?((?:(?:const|static)\\s+)*)(new|decl)\\s+(?:(\\w+)\\:\\s*)?(\\w+)(\\s*(?:\\[[^\\]]*\\]\\s*)*)","captures":{"1":{"patterns":[{"include":"#keywords"}]},"2":{"patterns":[{"include":"#keywords"}]},"3":{"patterns":[{"include":"#keywords"}]},"4":{"patterns":[{"include":"#old-type"}]},"5":{"patterns":[{"include":"#variable_name"}]},"6":{"patterns":[{"include":"#array-indexed-access"}]}}}]},"operators":{"patterns":[{"name":"keyword.operator.sourcepawn","match":"%|\u0026|\\*|/(?!\\*|/)|\\+|\\-|~|=|\u003c|\u003e|!|\\||\\?|:|\\^"}]},"other-keywords":{"name":"keyword.sourcepawn","match":"\\b(?:decl|delete|forward|native|public|const|stock|this|sizeof|static|property)\\b"},"parameter-declaration":{"patterns":[{"match":"(\\w+)(?:\\s+|(?:\\s*(?:\u0026|(?:\\[\\s*\\])+)\\s*))(\\w+)(?:\\s*((?:\\[[^\\]]*\\]\\s*)+))?","captures":{"1":{"patterns":[{"include":"#type"}]},"2":{"patterns":[{"include":"#variable_name"}]},"3":{"patterns":[{"include":"#array-indexed-access"}]}}}]},"parameters":{"patterns":[{"include":"#keywords"},{"include":"#literals"},{"include":"#parameter-declaration"},{"include":"#old-parameter-declaration"}]},"preproc":{"patterns":[{"name":"meta.include.sourcepawn","match":"(\\#include|\\#tryinclude)\\s*((?:\\\u003c|\").+(?:\\\u003e|\"))","captures":{"1":{"name":"keyword.control.sourcepawn"},"2":{"name":"string.sourcepawn"}}},{"name":"meta.pragma.line-comment.sourcepawn","match":"(\\#pragma)\\s+(.+?(?=//))","captures":{"1":{"name":"keyword.control.pragma.sourcepawn"},"2":{"name":"entity.other.attribute-name.sourcepawn"}}},{"name":"meta.pragma.deprecated.sourcepawn","match":"(\\#pragma)\\s+(deprecated)(.*)","captures":{"1":{"name":"keyword.control.pragma.sourcepawn"},"2":{"name":"entity.other.attribute-name.sourcepawn"},"3":{"name":"string.deprecated.sourcepawn"}}},{"name":"meta.pragma.block-comment.sourcepawn","match":"(\\#pragma)\\s+([A-Za-z _0-9]+)","captures":{"1":{"name":"keyword.control.pragma.sourcepawn"},"2":{"name":"entity.other.attribute-name.sourcepawn"}}},{"name":"meta.define.sourcepawn","match":"(\\#define)\\s*(\\w*)","captures":{"1":{"name":"keyword.control.define.sourcepawn"},"2":{"name":"meta.preprocessor.macro.sourcepawn"}}},{"name":"meta.undef.sourcepawn","match":"(\\#undef)\\s*(\\w*)","captures":{"1":{"name":"keyword.control.undef.sourcepawn"},"2":{"name":"meta.preprocessor.macro.sourcepawn"}}},{"name":"meta.undef.sourcepawn","match":"(#\\b(?:warning|error)\\b)\\s*(.+?)(?=/(?:/|\\*))","captures":{"1":{"name":"keyword.control.misc.sourcepawn"},"2":{"name":"string.warning.sourcepawn"}}},{"name":"meta.undef.sourcepawn","match":"(#\\b(?:warning|error)\\b)\\s*(.*)","captures":{"1":{"name":"keyword.control.misc.sourcepawn"},"2":{"name":"string.warning.sourcepawn"}}},{"name":"keyword.control.misc.sourcepawn","match":"#\\b(if|else|endif|emit|deprecated|undef|endinput|endscript|assert|define|file)\\b\\s*"},{"match":"(defined)\\s+([A-Za-z_]\\w*)","captures":{"1":{"name":"meta.preprocessor.conditional.sourcepawn"},"2":{"name":"meta.preprocessor.macro.sourcepawn"}}}]},"string-literal":{"patterns":[{"name":"string.quoted.double.sourcepawn","begin":"\"","end":"(\")|((?:[^\\\\\\n])$)","patterns":[{"include":"#string_escaped_char"},{"include":"#string_format_char"},{"include":"#string_placeholder"},{"include":"#line_continuation_character"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.sourcepawn"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.sourcepawn"},"2":{"name":"invalid.illegal.newline.sourcepawn"}}},{"name":"string.quoted.single.c","begin":"'","end":"(\\')|((?:[^\\\\\\n])$)","patterns":[{"include":"#string_escaped_char"},{"include":"#string_format_char"},{"include":"#string_placeholder"},{"include":"#line_continuation_character"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.sourcepawn"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.sourcepawn"},"2":{"name":"invalid.illegal.newline.sourcepawn"}}}]},"string_escaped_char":{"patterns":[{"name":"constant.character.escape.sourcepawn","match":"\\\\(?:[abefnrt'\"\\\\]|(?:x[a-zA-Z0-9]{0,2}|\\d+);?)"},{"name":"invalid.illegal.unknown-escape.sourcepawn","match":"\\\\."}]},"string_format_char":{"name":"constant.character.format.sourcepawn","match":"%(?:a|A|b|B|c|C|d|D|e|F|g|G|h|H|I|j|m|M|n|i|p|r|R|S|t|T|u|U|V|u|w|W|x|X|y|Y|z|Z|f|L|N|s|T|t|%|(?:\\d+)?\\.?\\d*(?:b|d|i|u|f|s|X|x))"},"string_placeholder":{"name":"constant.character.sp-translations","match":"\\{(\\w+)\\}","captures":{"1":{"name":"constant.character.escape.sp-translations"}}},"struct":{"match":"(struct)\\s+(\\w+)","captures":{"1":{"patterns":[{"include":"#keywords"}]},"2":{"patterns":[{"include":"#type_name"}]}}},"type":{"patterns":[{"match":"(bool|float|int|char|any|void)|(\\w+)","captures":{"1":{"name":"storage.type.built-in.primitive.sourcepawn"},"2":{"patterns":[{"include":"#type_name"}]}}}]},"type_name":{"patterns":[{"name":"constant.numeric.integer.sourcepawn","match":"\\b\\d\\b"},{"name":"support.type.core.sourcepawn","match":"[a-zA-Z_]\\w*"},{"match":"([0-9])(\\w*)","captures":{"1":{"name":"invalid.illegal.constant.sourcepawn"},"2":{"name":"support.type.core.sourcepawn"}}}]},"typedef":{"begin":"(typedef)\\s+(\\w+)\\s*\\=\\s*(function)\\s*(\\w+)\\s*((?:\\[[^\\]]*\\]\\s*)*)\\(","end":"\\)","patterns":[{"include":"#parameters"},{"include":"#comments"},{"include":"#preproc"}],"beginCaptures":{"1":{"patterns":[{"include":"#keywords"}]},"2":{"patterns":[{"include":"#type_name"}]},"3":{"patterns":[{"include":"#keywords"}]},"4":{"patterns":[{"include":"#type"}]},"5":{"patterns":[{"include":"#array-indexed-access"}]}}},"typeset":{"begin":"(typeset)\\s+(\\w+)","end":"(?\u003c=\\})","patterns":[{"begin":"(function)\\s+(\\w+)\\s*((?:\\[[^\\]]*\\]\\s*)*)\\(","end":"\\)","patterns":[{"include":"#parameters"}],"beginCaptures":{"1":{"patterns":[{"include":"#keywords"}]},"2":{"patterns":[{"include":"#type"}]},"3":{"patterns":[{"include":"#array-indexed-access"}]}}},{"include":"#comments"},{"include":"#preproc"}],"beginCaptures":{"1":{"patterns":[{"include":"#keywords"}]},"2":{"patterns":[{"include":"#type_name"}]}}},"variable-declaration":{"patterns":[{"match":"(?:(stock|public)\\s+)?((?:(?:const|static)\\s+)*)(\\w+)(\\s*(?:\\[[^\\]]*\\]\\s*)*)\\s+(\\w+)\\s*(\\s*(?:\\[[^\\]]*\\]\\s*)*)","captures":{"1":{"patterns":[{"include":"#keywords"}]},"2":{"patterns":[{"include":"#keywords"}]},"3":{"patterns":[{"include":"#type"}]},"4":{"patterns":[{"include":"#array-indexed-access"}]},"5":{"patterns":[{"include":"#variable_name"}]},"6":{"patterns":[{"include":"#array-indexed-access"}]}}}]},"variable_name":{"patterns":[{"name":"constant.numeric.integer.sourcepawn","match":"\\b\\d\\b"},{"name":"variable.sourcepawn","match":"[a-zA-Z_]\\w*"},{"match":"([0-9])(\\w*)","captures":{"1":{"name":"invalid.illegal.constant.sourcepawn"},"2":{"name":"variable.sourcepawn"}}}]}}}