{"name":"WIT","scopeName":"source.wit","patterns":[{"include":"#comment"},{"include":"#package"},{"include":"#toplevel-use"},{"include":"#world"},{"include":"#interface"},{"include":"#whitespace"}],"repository":{"block-comments":{"patterns":[{"name":"comment.block.empty.wit","match":"/\\*\\*/"},{"name":"comment.block.documentation.wit","begin":"/\\*\\*","end":"\\*/","patterns":[{"include":"#block-comments"},{"include":"#markdown"},{"include":"#whitespace"}],"applyEndPatternLast":true},{"name":"comment.block.wit","begin":"/\\*(?!\\*)","end":"\\*/","patterns":[{"include":"#block-comments"},{"include":"#whitespace"}],"applyEndPatternLast":true}]},"boolean":{"name":"entity.name.type.boolean.wit","match":"\\b(bool)\\b"},"comment":{"patterns":[{"include":"#block-comments"},{"include":"#doc-comment"},{"include":"#line-comment"}]},"container":{"name":"meta.container.ty.wit","patterns":[{"include":"#tuple"},{"include":"#list"},{"include":"#option"},{"include":"#result"},{"include":"#handle"}]},"doc-comment":{"name":"comment.line.documentation.wit","begin":"^\\s*///","end":"$","patterns":[{"include":"#markdown"}]},"enum":{"name":"meta.enum-items.wit","begin":"\\b(enum)\\b\\s+%?((?\u003c![\\-\\w])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*)(([\\-])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*))*)\\s*(\\{)","end":"(\\})","patterns":[{"include":"#comment"},{"include":"#enum-cases"},{"include":"#whitespace"}],"beginCaptures":{"1":{"name":"keyword.other.enum.enum-items.wit"},"2":{"name":"entity.name.type.id.enum-items.wit"},"7":{"name":"punctuation.brackets.curly.begin.wit"}},"endCaptures":{"1":{"name":"punctuation.brackets.curly.end.wit"}},"applyEndPatternLast":true},"enum-cases":{"name":"meta.enum-cases.wit","patterns":[{"include":"#comment"},{"name":"variable.other.enummember.id.enum-cases.wit","match":"\\b%?((?\u003c![\\-\\w])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*)(([\\-])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*))*)\\b"},{"name":"punctuation.comma.wit","match":"(\\,)"},{"include":"#whitespace"}]},"extern":{"name":"meta.extern-type.wit","patterns":[{"name":"meta.interface-type.wit","patterns":[{"begin":"\\b(interface)\\b\\s*(\\{)","end":"(\\})","patterns":[{"include":"#comment"},{"include":"#interface-items"},{"include":"#whitespace"}],"beginCaptures":{"1":{"name":"keyword.other.interface.interface-type.wit"},"2":{"name":"ppunctuation.brackets.curly.begin.wit"}},"endCaptures":{"1":{"name":"punctuation.brackets.curly.end.wit"}},"applyEndPatternLast":true}]},{"include":"#function-definition"},{"include":"#use-path"}]},"flags":{"name":"meta.flags-items.wit","begin":"\\b(flags)\\s+%?((?\u003c![\\-\\w])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*)(([\\-])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*))*)\\s*(\\{)","end":"(\\})","patterns":[{"include":"#comment"},{"include":"#flags-fields"},{"include":"#whitespace"}],"beginCaptures":{"1":{"name":"keyword.other.flags.flags-items.wit"},"2":{"name":"entity.name.type.id.flags-items.wit"},"7":{"name":"punctuation.brackets.curly.begin.wit"}},"endCaptures":{"1":{"name":"punctuation.brackets.curly.end.wit"}},"applyEndPatternLast":true},"flags-fields":{"name":"meta.flags-fields.wit","patterns":[{"include":"#comment"},{"name":"variable.other.enummember.id.flags-fields.wit","match":"\\b%?((?\u003c![\\-\\w])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*)(([\\-])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*))*)\\b"},{"name":"punctuation.comma.wit","match":"(\\,)"},{"include":"#whitespace"}]},"function":{"name":"meta.func-item.wit","begin":"\\b%?((?\u003c![\\-\\w])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*)(([\\-])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*))*)\\s*(\\:)","end":"((?\u003c=\\n)|(?=\\}))","patterns":[{"include":"#function-definition"},{"include":"#whitespace"}],"beginCaptures":{"1":{"name":"entity.name.function.id.func-item.wit"},"2":{"name":"meta.word.wit"},"4":{"name":"meta.word-separator.wit"},"5":{"name":"meta.word.wit"},"6":{"name":"keyword.operator.key-value.wit"}},"applyEndPatternLast":true},"function-definition":{"name":"meta.func-type.wit","patterns":[{"name":"meta.function.wit","begin":"\\b(static\\s+)?(func)\\b","end":"((?\u003c=\\n)|(?=\\}))","patterns":[{"include":"#comment"},{"include":"#parameter-list"},{"include":"#result-list"},{"include":"#whitespace"}],"beginCaptures":{"1":{"name":"storage.modifier.static.func-item.wit"},"2":{"name":"keyword.other.func.func-type.wit"}},"applyEndPatternLast":true}]},"handle":{"name":"meta.handle.ty.wit","match":"\\b(borrow)\\b(\\\u003c)\\s*%?((?\u003c![\\-\\w])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*)(([\\-])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*))*)\\s*(\\\u003e)","captures":{"1":{"name":"entity.name.type.borrow.handle.wit"},"2":{"name":"punctuation.brackets.angle.begin.wit"},"3":{"name":"entity.name.type.id.handle.wit"},"8":{"name":"punctuation.brackets.angle.end.wit"}}},"identifier":{"name":"entity.name.type.id.wit","match":"\\b%?((?\u003c![\\-\\w])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*)(([\\-])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*))*)\\b"},"interface":{"name":"meta.interface-item.wit","begin":"^\\b(default\\s+)?(interface)\\s+%?((?\u003c![\\-\\w])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*)(([\\-])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*))*)\\s*(\\{)","end":"(\\})","patterns":[{"include":"#comment"},{"include":"#interface-items"},{"include":"#whitespace"}],"beginCaptures":{"1":{"name":"storage.modifier.default.interface-item.wit"},"2":{"name":"keyword.declaration.interface.interface-item.wit storage.type.wit"},"3":{"name":"entity.name.type.id.interface-item.wit"},"8":{"name":"punctuation.brackets.curly.begin.wit"}},"endCaptures":{"1":{"name":"punctuation.brackets.curly.end.wit"}},"applyEndPatternLast":true},"interface-items":{"name":"meta.interface-items.wit","patterns":[{"include":"#typedef-item"},{"include":"#use"},{"include":"#function"}]},"line-comment":{"name":"comment.line.double-slash.wit","match":"\\s*//.*"},"list":{"name":"meta.list.ty.wit","begin":"\\b(list)\\b(\\\u003c)","end":"(\\\u003e)","patterns":[{"include":"#comment"},{"name":"meta.types.list.wit","include":"#types"},{"include":"#whitespace"}],"beginCaptures":{"1":{"name":"entity.name.type.list.wit"},"2":{"name":"punctuation.brackets.angle.begin.wit"}},"endCaptures":{"1":{"name":"punctuation.brackets.angle.end.wit"}},"applyEndPatternLast":true},"markdown":{"patterns":[{"match":"\\G\\s*(#+.*)$","captures":{"1":{"name":"markup.heading.markdown"}}},{"match":"\\G\\s*((\\\u003e)\\s+)+","captures":{"2":{"name":"punctuation.definition.quote.begin.markdown"}}},{"match":"\\G\\s*(\\-)\\s+","captures":{"1":{"name":"punctuation.definition.list.begin.markdown"}}},{"match":"\\G\\s*(([0-9]+\\.)\\s+)","captures":{"1":{"name":"markup.list.numbered.markdown"},"2":{"name":"punctuation.definition.list.begin.markdown"}}},{"match":"(`.*?`)","captures":{"1":{"name":"markup.italic.markdown"}}},{"match":"\\b(__.*?__)","captures":{"1":{"name":"markup.bold.markdown"}}},{"match":"\\b(_.*?_)","captures":{"1":{"name":"markup.italic.markdown"}}},{"match":"(\\*\\*.*?\\*\\*)","captures":{"1":{"name":"markup.bold.markdown"}}},{"match":"(\\*.*?\\*)","captures":{"1":{"name":"markup.italic.markdown"}}}]},"named-type-list":{"name":"meta.named-type-list.wit","begin":"\\b%?((?\u003c![\\-\\w])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*)(([\\-])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*))*)\\b\\s*(\\:)","end":"((\\,)|(?=\\))|(?=\\n))","patterns":[{"include":"#comment"},{"include":"#types"},{"include":"#whitespace"}],"beginCaptures":{"1":{"name":"variable.parameter.id.named-type.wit"},"6":{"name":"keyword.operator.key-value.wit"}},"endCaptures":{"2":{"name":"punctuation.comma.wit"}},"applyEndPatternLast":true},"numeric":{"name":"entity.name.type.numeric.wit","match":"\\b(u8|u16|u32|u64|s8|s16|s32|s64|float32|float64)\\b"},"operator":{"patterns":[{"name":"punctuation.equal.wit","match":"\\="},{"name":"punctuation.comma.wit","match":"\\,"},{"name":"keyword.operator.key-value.wit","match":"\\:"},{"name":"punctuation.semicolon.wit","match":"\\;"},{"name":"punctuation.brackets.round.begin.wit","match":"\\("},{"name":"punctuation.brackets.round.end.wit","match":"\\)"},{"name":"punctuation.brackets.curly.begin.wit","match":"\\{"},{"name":"punctuation.brackets.curly.end.wit","match":"\\}"},{"name":"punctuation.brackets.angle.begin.wit","match":"\\\u003c"},{"name":"punctuation.brackets.angle.end.wit","match":"\\\u003e"},{"name":"keyword.operator.star.wit","match":"\\*"},{"name":"keyword.operator.arrow.skinny.wit","match":"\\-\\\u003e"}]},"option":{"name":"meta.option.ty.wit","begin":"\\b(option)\\b(\\\u003c)","end":"(\\\u003e)","patterns":[{"include":"#comment"},{"name":"meta.types.option.wit","include":"#types"},{"include":"#whitespace"}],"beginCaptures":{"1":{"name":"entity.name.type.option.wit"},"2":{"name":"punctuation.brackets.angle.begin.wit"}},"endCaptures":{"1":{"name":"punctuation.brackets.angle.end.wit"}},"applyEndPatternLast":true},"package":{"name":"meta.package-decl.wit","match":"^(package)\\s+([^\\s]+)\\s*","captures":{"1":{"name":"storage.modifier.package-decl.wit"},"2":{"name":"meta.id.package-decl.wit","patterns":[{"name":"meta.package-identifier.wit","match":"([^\\:]+)(\\:)([^\\@]+)((\\@)([^\\s]+))?","captures":{"1":{"name":"entity.name.namespace.package-identifier.wit","patterns":[{"include":"#identifier"}]},"2":{"name":"keyword.operator.namespace.package-identifier.wit"},"3":{"name":"entity.name.type.package-identifier.wit","patterns":[{"include":"#identifier"}]},"5":{"name":"keyword.operator.versioning.package-identifier.wit"},"6":{"name":"constant.numeric.versioning.package-identifier.wit"}}}]}}},"parameter-list":{"name":"meta.param-list.wit","begin":"(\\()","end":"(\\))","patterns":[{"include":"#comment"},{"include":"#named-type-list"},{"include":"#whitespace"}],"beginCaptures":{"1":{"name":"punctuation.brackets.round.begin.wit"}},"endCaptures":{"1":{"name":"punctuation.brackets.round.end.wit"}},"applyEndPatternLast":true},"primitive":{"name":"meta.primitive.ty.wit","patterns":[{"include":"#numeric"},{"include":"#boolean"},{"include":"#string"}]},"record":{"name":"meta.record-item.wit","begin":"\\b(record)\\b\\s+%?((?\u003c![\\-\\w])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*)(([\\-])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*))*)\\s*(\\{)","end":"(\\})","patterns":[{"include":"#comment"},{"include":"#record-fields"},{"include":"#whitespace"}],"beginCaptures":{"1":{"name":"keyword.declaration.record.record-item.wit"},"2":{"name":"entity.name.type.id.record-item.wit"},"7":{"name":"punctuation.brackets.curly.begin.wit"}},"endCaptures":{"1":{"name":"punctuation.brackets.curly.end.wit"}},"applyEndPatternLast":true},"record-fields":{"name":"meta.record-fields.wit","begin":"\\b%?((?\u003c![\\-\\w])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*)(([\\-])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*))*)\\b\\s*(\\:)","end":"((\\,)|(?=\\})|(?=\\n))","patterns":[{"include":"#comment"},{"name":"meta.types.record-fields.wit","include":"#types"},{"include":"#whitespace"}],"beginCaptures":{"1":{"name":"variable.declaration.id.record-fields.wit"},"6":{"name":"keyword.operator.key-value.wit"}},"endCaptures":{"2":{"name":"punctuation.comma.wit"}},"applyEndPatternLast":true},"resource":{"name":"meta.resource-item.wit","begin":"\\b(resource)\\b\\s+%?((?\u003c![\\-\\w])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*)(([\\-])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*))*)","end":"((?\u003c=\\n)|(?=\\}))","patterns":[{"include":"#comment"},{"include":"#resource-methods"},{"include":"#whitespace"}],"beginCaptures":{"1":{"name":"keyword.other.resource.wit"},"2":{"name":"entity.name.type.id.resource.wit"}},"applyEndPatternLast":true},"resource-methods":{"name":"meta.resource-methods.wit","begin":"(\\{)","end":"(\\})","patterns":[{"include":"#comment"},{"name":"meta.constructor-type.wit","begin":"\\b(constructor)\\b","end":"((?\u003c=\\n)|(?=\\}))","patterns":[{"include":"#comment"},{"include":"#parameter-list"},{"include":"#whitespace"}],"beginCaptures":{"1":{"name":"keyword.other.constructor.constructor-type.wit"},"2":{"name":"punctuation.brackets.round.begin.wit"}},"applyEndPatternLast":true},{"include":"#function"},{"include":"#whitespace"}],"beginCaptures":{"1":{"name":"punctuation.brackets.curly.begin.wit"}},"endCaptures":{"1":{"name":"punctuation.brackets.curly.end.wit"}},"applyEndPatternLast":true},"result":{"name":"meta.result.ty.wit","begin":"\\b(result)\\b","end":"((?\u003c=\\n)|(?=\\,)|(?=\\}))","patterns":[{"include":"#comment"},{"name":"meta.inner.result.wit","begin":"(\\\u003c)","end":"(\\\u003e)","patterns":[{"include":"#comment"},{"name":"variable.other.inferred-type.result.wit","match":"(?\u003c!\\w)(\\_)(?!\\w)"},{"name":"meta.types.result.wit","include":"#types"},{"name":"punctuation.comma.wit","match":"(?\u003c!result)\\s*(\\,)"},{"include":"#whitespace"}],"beginCaptures":{"1":{"name":"punctuation.brackets.angle.begin.wit"}},"endCaptures":{"1":{"name":"punctuation.brackets.angle.end.wit"}},"applyEndPatternLast":true},{"include":"#whitespace"}],"beginCaptures":{"1":{"name":"entity.name.type.result.wit"},"2":{"name":"punctuation.brackets.angle.begin.wit"}},"applyEndPatternLast":true},"result-list":{"name":"meta.result-list.wit","begin":"(\\-\\\u003e)","end":"((?\u003c=\\n)|(?=\\}))","patterns":[{"include":"#comment"},{"include":"#types"},{"include":"#parameter-list"},{"include":"#whitespace"}],"beginCaptures":{"1":{"name":"keyword.operator.arrow.skinny.wit"}},"applyEndPatternLast":true},"string":{"name":"entity.name.type.string.wit","match":"\\b(string|char)\\b"},"toplevel-use":{"name":"meta.toplevel-use-item.wit","match":"^(use)\\s+([^\\s]+)(\\s+(as)\\s+([^\\s]+))?\\s*","captures":{"1":{"name":"keyword.other.use.toplevel-use-item.wit"},"2":{"name":"meta.interface.toplevel-use-item.wit","patterns":[{"name":"entity.name.type.declaration.interface.toplevel-use-item.wit","match":"\\b%?((?\u003c![\\-\\w])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*)(([\\-])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*))*)\\b"},{"name":"meta.versioning.interface.toplevel-use-item.wit","match":"(\\@)((0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?)","captures":{"1":{"name":"keyword.operator.versioning.interface.toplevel-use-item.wit"},"2":{"name":"constant.numeric.versioning.interface.toplevel-use-item.wit"}}}]},"4":{"name":"keyword.control.as.toplevel-use-item.wit"},"5":{"name":"entity.name.type.toplevel-use-item.wit"}}},"tuple":{"name":"meta.tuple.ty.wit","begin":"\\b(tuple)\\b(\\\u003c)","end":"(\\\u003e)","patterns":[{"include":"#comment"},{"name":"meta.types.tuple.wit","include":"#types"},{"name":"punctuation.comma.wit","match":"(\\,)"},{"include":"#whitespace"}],"beginCaptures":{"1":{"name":"entity.name.type.tuple.wit"},"2":{"name":"punctuation.brackets.angle.begin.wit"}},"endCaptures":{"1":{"name":"punctuation.brackets.angle.end.wit"}},"applyEndPatternLast":true},"type-definition":{"name":"meta.type-item.wit","begin":"\\b(type)\\b\\s+%?((?\u003c![\\-\\w])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*)(([\\-])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*))*)\\s*(\\=)","end":"(?\u003c=\\n)","patterns":[{"name":"meta.types.type-item.wit","include":"#types"},{"include":"#whitespace"}],"beginCaptures":{"1":{"name":"keyword.declaration.type.type-item.wit storage.type.wit"},"2":{"name":"entity.name.type.id.type-item.wit"},"7":{"name":"punctuation.equal.wit"}},"applyEndPatternLast":true},"typedef-item":{"name":"meta.typedef-item.wit","patterns":[{"include":"#resource"},{"include":"#variant"},{"include":"#record"},{"include":"#flags"},{"include":"#enum"},{"include":"#type-definition"}]},"types":{"name":"meta.ty.wit","patterns":[{"include":"#primitive"},{"include":"#container"},{"include":"#identifier"}]},"use":{"name":"meta.use-item.wit","begin":"\\b(use)\\b\\s+([^\\s]+)(\\.)(\\{)","end":"(\\})","patterns":[{"include":"#comment"},{"name":"entity.name.type.declaration.use-names-item.use-item.wit","match":"\\b%?((?\u003c![\\-\\w])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*)(([\\-])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*))*)\\b"},{"name":"punctuation.comma.wit","match":"(\\,)"},{"include":"#whitespace"}],"beginCaptures":{"1":{"name":"keyword.other.use.use-item.wit"},"2":{"patterns":[{"include":"#use-path"},{"include":"#whitespace"}]},"3":{"name":"keyword.operator.namespace-separator.use-item.wit"},"4":{"name":"punctuation.brackets.curly.begin.wit"}},"endCaptures":{"1":{"name":"punctuation.brackets.curly.end.wit"}},"applyEndPatternLast":true},"use-path":{"name":"meta.use-path.wit","patterns":[{"name":"entity.name.namespace.id.use-path.wit","match":"\\b%?((?\u003c![\\-\\w])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*)(([\\-])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*))*)\\b"},{"name":"meta.versioning.id.use-path.wit","match":"(\\@)((0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?)","captures":{"1":{"name":"keyword.operator.versioning.id.use-path.wit"},"2":{"name":"constant.numeric.versioning.id.use-path.wit"}}},{"name":"keyword.operator.namespace-separator.use-path.wit","match":"\\."}]},"variant":{"name":"meta.variant.wit","begin":"\\b(variant)\\s+%?((?\u003c![\\-\\w])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*)(([\\-])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*))*)\\s*(\\{)","end":"(\\})","patterns":[{"include":"#comment"},{"include":"#variant-cases"},{"include":"#enum-cases"},{"include":"#whitespace"}],"beginCaptures":{"1":{"name":"keyword.other.variant.wit"},"2":{"name":"entity.name.type.id.variant.wit"},"7":{"name":"punctuation.brackets.curly.begin.wit"}},"endCaptures":{"1":{"name":"punctuation.brackets.curly.end.wit"}},"applyEndPatternLast":true},"variant-cases":{"name":"meta.variant-cases.wit","begin":"\\b%?((?\u003c![\\-\\w])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*)(([\\-])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*))*)\\b\\s*(\\()","end":"(\\))\\s*(\\,)?","patterns":[{"name":"meta.types.variant-cases.wit","include":"#types"},{"include":"#whitespace"}],"beginCaptures":{"1":{"name":"variable.other.enummember.id.variant-cases.wit"},"6":{"name":"punctuation.brackets.round.begin.wit"}},"endCaptures":{"1":{"name":"punctuation.brackets.round.end.wit"},"2":{"name":"punctuation.comma.wit"}},"applyEndPatternLast":true},"whitespace":{"name":"meta.whitespace.wit","match":"\\s+"},"world":{"name":"meta.world-item.wit","begin":"^\\b(default\\s+)?(world)\\s+%?((?\u003c![\\-\\w])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*)(([\\-])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*))*)\\s*(\\{)","end":"(\\})","patterns":[{"include":"#comment"},{"name":"meta.export-item.wit","begin":"\\b(export)\\b\\s+([^\\s]+)","end":"((?\u003c=\\n)|(?=\\}))","patterns":[{"include":"#extern"},{"include":"#whitespace"}],"beginCaptures":{"1":{"name":"keyword.control.export.export-item.wit"},"2":{"name":"meta.id.export-item.wit","patterns":[{"name":"variable.other.constant.id.export-item.wit","match":"\\b%?((?\u003c![\\-\\w])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*)(([\\-])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*))*)\\b"},{"name":"meta.versioning.id.export-item.wit","match":"(\\@)((0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?)","captures":{"1":{"name":"keyword.operator.versioning.id.export-item.wit"},"2":{"name":"constant.numeric.versioning.id.export-item.wit"}}}]}},"applyEndPatternLast":true},{"name":"meta.import-item.wit","begin":"\\b(import)\\s+([^\\s]+)","end":"((?\u003c=\\n)|(?=\\}))","patterns":[{"include":"#extern"},{"include":"#whitespace"}],"beginCaptures":{"1":{"name":"keyword.control.import.import-item.wit"},"2":{"name":"meta.id.import-item.wit","patterns":[{"name":"variable.other.id.import-item.wit","match":"\\b%?((?\u003c![\\-\\w])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*)(([\\-])([a-z][0-9a-z]*|[A-Z][0-9A-Z]*))*)\\b"},{"name":"meta.versioning.id.import-item.wit","match":"(\\@)((0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?)","captures":{"1":{"name":"keyword.operator.versioning.id.import-item.wit"},"2":{"name":"constant.numeric.versioning.id.import-item.wit"}}}]}},"applyEndPatternLast":true},{"name":"meta.include-item.wit","begin":"\\b(include)\\s+([^\\s]+)\\s*","end":"(?\u003c=\\n)","patterns":[{"name":"meta.with.include-item.wit","begin":"\\b(with)\\b\\s+(\\{)","end":"(\\})","patterns":[{"include":"#comment"},{"name":"meta.include-names-item.wit","match":"([^\\s]+)\\s+(as)\\s+([^\\s\\,]+)","captures":{"1":{"name":"variable.other.id.include-names-item.wit"},"2":{"name":"keyword.control.as.include-names-item.wit"},"3":{"name":"entity.name.type.include-names-item.wit"}}},{"name":"punctuation.comma.wit","match":"(\\,)"},{"include":"#whitespace"}],"beginCaptures":{"1":{"name":"keyword.control.with.include-item.wit"},"2":{"name":"punctuation.brackets.curly.begin.wit"}},"endCaptures":{"1":{"name":"punctuation.brackets.curly.end.wit"}},"applyEndPatternLast":true}],"beginCaptures":{"1":{"name":"keyword.control.include.include-item.wit"},"2":{"name":"meta.use-path.include-item.wit","patterns":[{"include":"#use-path"}]}},"applyEndPatternLast":true},{"include":"#use"},{"include":"#typedef-item"},{"include":"#whitespace"}],"beginCaptures":{"1":{"name":"storage.modifier.default.world-item.wit"},"2":{"name":"keyword.declaration.world.world-item.wit storage.type.wit"},"3":{"name":"entity.name.type.id.world-item.wit"},"8":{"name":"punctuation.brackets.curly.begin.wit"}},"endCaptures":{"1":{"name":"punctuation.brackets.curly.end.wit"}},"applyEndPatternLast":true}}}