Path: blob/main/extensions/cpp/syntaxes/cpp.tmLanguage.json
3314 views
{1"information_for_contributors": [2"This file has been converted from https://github.com/jeff-hykin/better-cpp-syntax/blob/master/autogenerated/cpp.tmLanguage.json",3"If you want to provide a fix or improvement, please create a pull request against the original repository.",4"Once accepted there, we are happy to receive an update request."5],6"version": "https://github.com/jeff-hykin/better-cpp-syntax/commit/f1d127a8af2b184db570345f0bb179503c47fdf6",7"name": "C++",8"scopeName": "source.cpp",9"patterns": [10{11"include": "#ever_present_context"12},13{14"include": "#constructor_root"15},16{17"include": "#destructor_root"18},19{20"include": "#function_definition"21},22{23"include": "#operator_overload"24},25{26"include": "#using_namespace"27},28{29"include": "#type_alias"30},31{32"include": "#using_name"33},34{35"include": "#namespace_alias"36},37{38"include": "#namespace_block"39},40{41"include": "#extern_block"42},43{44"include": "#typedef_class"45},46{47"include": "#typedef_struct"48},49{50"include": "#typedef_union"51},52{53"include": "#misc_keywords"54},55{56"include": "#standard_declares"57},58{59"include": "#class_block"60},61{62"include": "#struct_block"63},64{65"include": "#union_block"66},67{68"include": "#enum_block"69},70{71"include": "#template_isolated_definition"72},73{74"include": "#template_definition"75},76{77"include": "#template_explicit_instantiation"78},79{80"include": "#access_control_keywords"81},82{83"include": "#block"84},85{86"include": "#static_assert"87},88{89"include": "#assembly"90},91{92"include": "#function_pointer"93},94{95"include": "#evaluation_context"96}97],98"repository": {99"access_control_keywords": {100"match": "((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(((?:(?:protected)|(?:private)|(?:public)))(?:\\s+)?(:))",101"captures": {102"1": {103"patterns": [104{105"include": "#inline_comment"106}107]108},109"2": {110"patterns": [111{112"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",113"captures": {114"1": {115"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"116},117"2": {118"name": "comment.block.cpp"119},120"3": {121"name": "comment.block.cpp punctuation.definition.comment.end.cpp"122}123}124}125]126},127"3": {128"name": "storage.type.modifier.access.control.$4.cpp"129},130"4": {},131"5": {132"name": "punctuation.separator.colon.access.control.cpp"133}134}135},136"alignas_attribute": {137"begin": "alignas\\(",138"end": "\\)",139"beginCaptures": {140"0": {141"name": "punctuation.section.attribute.begin.cpp"142}143},144"endCaptures": {145"0": {146"name": "punctuation.section.attribute.end.cpp"147}148},149"name": "support.other.attribute.cpp",150"patterns": [151{152"include": "#attributes_context"153},154{155"begin": "\\(",156"end": "\\)",157"beginCaptures": {},158"endCaptures": {},159"patterns": [160{161"include": "#attributes_context"162},163{164"include": "#string_context"165},166{167"include": "#ever_present_context"168}169]170},171{172"match": "(using)\\s+((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))",173"captures": {174"1": {175"name": "keyword.other.using.directive.cpp"176},177"2": {178"name": "entity.name.namespace.cpp"179}180}181},182{183"match": ",",184"name": "punctuation.separator.attribute.cpp"185},186{187"match": ":",188"name": "punctuation.accessor.attribute.cpp"189},190{191"match": "(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)(?=::)",192"name": "entity.name.namespace.cpp"193},194{195"match": "(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)",196"name": "entity.other.attribute.$0.cpp"197},198{199"include": "#number_literal"200},201{202"include": "#ever_present_context"203}204]205},206"alignas_operator": {207"begin": "((?<!\\w)alignas(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()",208"end": "\\)",209"beginCaptures": {210"1": {211"name": "keyword.operator.functionlike.cpp keyword.operator.alignas.cpp"212},213"2": {214"patterns": [215{216"include": "#inline_comment"217}218]219},220"3": {221"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"222},223"4": {224"name": "comment.block.cpp"225},226"5": {227"name": "comment.block.cpp punctuation.definition.comment.end.cpp"228},229"6": {230"name": "punctuation.section.arguments.begin.bracket.round.operator.alignas.cpp"231}232},233"endCaptures": {234"0": {235"name": "punctuation.section.arguments.end.bracket.round.operator.alignas.cpp"236}237},238"contentName": "meta.arguments.operator.alignas",239"patterns": [240{241"include": "#evaluation_context"242}243]244},245"alignof_operator": {246"begin": "((?<!\\w)alignof(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()",247"end": "\\)",248"beginCaptures": {249"1": {250"name": "keyword.operator.functionlike.cpp keyword.operator.alignof.cpp"251},252"2": {253"patterns": [254{255"include": "#inline_comment"256}257]258},259"3": {260"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"261},262"4": {263"name": "comment.block.cpp"264},265"5": {266"name": "comment.block.cpp punctuation.definition.comment.end.cpp"267},268"6": {269"name": "punctuation.section.arguments.begin.bracket.round.operator.alignof.cpp"270}271},272"endCaptures": {273"0": {274"name": "punctuation.section.arguments.end.bracket.round.operator.alignof.cpp"275}276},277"contentName": "meta.arguments.operator.alignof",278"patterns": [279{280"include": "#evaluation_context"281}282]283},284"assembly": {285"begin": "(\\b(?:__asm__|asm)\\b)(?:\\s+)?((?:volatile)?)",286"end": "(?!\\G)",287"beginCaptures": {288"1": {289"name": "storage.type.asm.cpp"290},291"2": {292"name": "storage.modifier.cpp"293}294},295"endCaptures": {},296"name": "meta.asm.cpp",297"patterns": [298{299"match": "^((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:\\n|$)",300"captures": {301"1": {302"patterns": [303{304"include": "#inline_comment"305}306]307},308"2": {309"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"310},311"3": {312"name": "comment.block.cpp"313},314"4": {315"name": "comment.block.cpp punctuation.definition.comment.end.cpp"316}317}318},319{320"include": "#comments"321},322{323"begin": "((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))\\(",324"end": "\\)",325"beginCaptures": {326"0": {327"name": "punctuation.section.parens.begin.bracket.round.assembly.cpp"328},329"1": {330"patterns": [331{332"include": "#inline_comment"333}334]335},336"2": {337"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"338},339"3": {340"name": "comment.block.cpp"341},342"4": {343"name": "comment.block.cpp punctuation.definition.comment.end.cpp"344}345},346"endCaptures": {347"0": {348"name": "punctuation.section.parens.end.bracket.round.assembly.cpp"349}350},351"patterns": [352{353"begin": "(R?)(\")",354"end": "\"",355"beginCaptures": {356"1": {357"name": "meta.encoding.cpp"358},359"2": {360"name": "punctuation.definition.string.begin.assembly.cpp"361}362},363"endCaptures": {364"0": {365"name": "punctuation.definition.string.end.assembly.cpp"366}367},368"name": "string.quoted.double.cpp",369"contentName": "meta.embedded.assembly",370"patterns": [371{372"include": "source.asm"373},374{375"include": "source.x86"376},377{378"include": "source.x86_64"379},380{381"include": "source.arm"382},383{384"include": "#backslash_escapes"385},386{387"include": "#string_escaped_char"388}389]390},391{392"begin": "\\(",393"end": "\\)",394"beginCaptures": {395"0": {396"name": "punctuation.section.parens.begin.bracket.round.assembly.inner.cpp"397}398},399"endCaptures": {400"0": {401"name": "punctuation.section.parens.end.bracket.round.assembly.inner.cpp"402}403},404"patterns": [405{406"include": "#evaluation_context"407}408]409},410{411"match": "\\[((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))\\]",412"captures": {413"1": {414"patterns": [415{416"include": "#inline_comment"417}418]419},420"2": {421"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"422},423"3": {424"name": "comment.block.cpp"425},426"4": {427"name": "comment.block.cpp punctuation.definition.comment.end.cpp"428},429"5": {430"name": "variable.other.asm.label.cpp"431},432"6": {433"patterns": [434{435"include": "#inline_comment"436}437]438},439"7": {440"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"441},442"8": {443"name": "comment.block.cpp"444},445"9": {446"name": "comment.block.cpp punctuation.definition.comment.end.cpp"447}448}449},450{451"match": ":",452"name": "punctuation.separator.delimiter.colon.assembly.cpp"453},454{455"include": "#comments"456}457]458}459]460},461"assignment_operator": {462"match": "\\=",463"name": "keyword.operator.assignment.cpp"464},465"attributes_context": {466"patterns": [467{468"include": "#cpp_attributes"469},470{471"include": "#gcc_attributes"472},473{474"include": "#ms_attributes"475},476{477"include": "#alignas_attribute"478}479]480},481"backslash_escapes": {482"match": "(?x)\\\\ (\n\\\\\t\t\t |\n[abefnprtv'\"?] |\n[0-3][0-7]{,2}\t |\n[4-7]\\d?\t\t|\nx[a-fA-F0-9]{,2} |\nu[a-fA-F0-9]{,4} |\nU[a-fA-F0-9]{,8} )",483"name": "constant.character.escape"484},485"block": {486"begin": "{",487"end": "}",488"beginCaptures": {489"0": {490"name": "punctuation.section.block.begin.bracket.curly.cpp"491}492},493"endCaptures": {494"0": {495"name": "punctuation.section.block.end.bracket.curly.cpp"496}497},498"name": "meta.block.cpp",499"patterns": [500{501"include": "#function_body_context"502}503]504},505"block_comment": {506"begin": "\\s*+(\\/\\*)",507"end": "\\*\\/",508"beginCaptures": {509"1": {510"name": "punctuation.definition.comment.begin.cpp"511}512},513"endCaptures": {514"0": {515"name": "punctuation.definition.comment.end.cpp"516}517},518"name": "comment.block.cpp"519},520"builtin_storage_type_initilizer": {521"begin": "\\s*+(?<!\\w)(?:(?:(?:((?:(?:unsigned)|(?:wchar_t)|(?:double)|(?:signed)|(?:short)|(?:float)|(?:auto)|(?:void)|(?:long)|(?:char)|(?:bool)|(?:int)))|((?:(?:uint_least32_t)|(?:uint_least64_t)|(?:uint_least16_t)|(?:uint_fast64_t)|(?:uint_least8_t)|(?:int_least64_t)|(?:int_least32_t)|(?:int_least16_t)|(?:uint_fast16_t)|(?:uint_fast32_t)|(?:int_least8_t)|(?:int_fast16_t)|(?:int_fast32_t)|(?:int_fast64_t)|(?:uint_fast8_t)|(?:int_fast8_t)|(?:suseconds_t)|(?:useconds_t)|(?:uintmax_t)|(?:uintmax_t)|(?:in_port_t)|(?:uintmax_t)|(?:in_addr_t)|(?:blksize_t)|(?:uintptr_t)|(?:intmax_t)|(?:intptr_t)|(?:blkcnt_t)|(?:intmax_t)|(?:u_quad_t)|(?:uint16_t)|(?:uint32_t)|(?:uint64_t)|(?:ssize_t)|(?:fixpt_t)|(?:qaddr_t)|(?:u_short)|(?:int16_t)|(?:int32_t)|(?:int64_t)|(?:uint8_t)|(?:daddr_t)|(?:caddr_t)|(?:swblk_t)|(?:clock_t)|(?:segsz_t)|(?:nlink_t)|(?:time_t)|(?:u_long)|(?:ushort)|(?:quad_t)|(?:mode_t)|(?:size_t)|(?:u_char)|(?:int8_t)|(?:u_int)|(?:uid_t)|(?:off_t)|(?:pid_t)|(?:gid_t)|(?:dev_t)|(?:div_t)|(?:key_t)|(?:ino_t)|(?:id_t)|(?:id_t)|(?:uint))))|((?:(?:pthread_rwlockattr_t)|(?:pthread_mutexattr_t)|(?:pthread_condattr_t)|(?:pthread_rwlock_t)|(?:pthread_mutex_t)|(?:pthread_cond_t)|(?:pthread_attr_t)|(?:pthread_once_t)|(?:pthread_key_t)|(?:pthread_t))))|([a-zA-Z_]\\w*_t))(?!\\w)\\s*+(?<!\\w)(\\()",522"end": "\\)",523"beginCaptures": {524"1": {525"name": "storage.type.primitive.cpp storage.type.built-in.primitive.cpp"526},527"2": {528"name": "storage.type.cpp storage.type.built-in.cpp"529},530"3": {531"name": "support.type.posix-reserved.pthread.cpp support.type.built-in.posix-reserved.pthread.cpp"532},533"4": {534"name": "support.type.posix-reserved.cpp support.type.built-in.posix-reserved.cpp"535},536"5": {537"name": "punctuation.section.arguments.begin.bracket.round.initializer.cpp"538}539},540"endCaptures": {541"0": {542"name": "punctuation.section.arguments.end.bracket.round.initializer.cpp"543}544},545"patterns": [546{547"include": "#evaluation_context"548}549]550},551"case_statement": {552"begin": "((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)case(?!\\w))",553"end": ":",554"beginCaptures": {555"1": {556"patterns": [557{558"include": "#inline_comment"559}560]561},562"2": {563"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"564},565"3": {566"name": "comment.block.cpp"567},568"4": {569"name": "comment.block.cpp punctuation.definition.comment.end.cpp"570},571"5": {572"name": "keyword.control.case.cpp"573}574},575"endCaptures": {576"0": {577"name": "punctuation.separator.colon.case.cpp"578}579},580"name": "meta.conditional.case.cpp",581"patterns": [582{583"include": "#evaluation_context"584}585]586},587"class_block": {588"begin": "((?<!\\w)class(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(?={)|(?:((?:(?:(?:\\[\\[.*?\\]\\]|__attribute(?:__)?\\s*\\(\\s*\\(.*?\\)\\s*\\))|__declspec\\(.*?\\))|alignas\\(.*?\\))(?!\\)))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?((?:(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*+)?(?:((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(:(?!:)))?)",589"end": "(?:(?:(?<=\\}|%>|\\?\\?>)(?:\\s+)?(;)|(;))|(?=[;>\\[\\]=]))",590"beginCaptures": {591"0": {592"name": "meta.head.class.cpp"593},594"1": {595"name": "storage.type.$1.cpp"596},597"2": {598"patterns": [599{600"include": "#inline_comment"601}602]603},604"3": {605"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"606},607"4": {608"name": "comment.block.cpp"609},610"5": {611"name": "comment.block.cpp punctuation.definition.comment.end.cpp"612},613"6": {614"patterns": [615{616"include": "#attributes_context"617},618{619"include": "#number_literal"620}621]622},623"7": {624"patterns": [625{626"include": "#inline_comment"627}628]629},630"8": {631"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"632},633"9": {634"name": "comment.block.cpp"635},636"10": {637"name": "comment.block.cpp punctuation.definition.comment.end.cpp"638},639"11": {640"patterns": [641{642"match": "((?<!\\w)final(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))",643"captures": {644"1": {645"name": "storage.type.modifier.final.cpp"646},647"2": {648"patterns": [649{650"include": "#inline_comment"651}652]653},654"3": {655"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"656},657"4": {658"name": "comment.block.cpp"659},660"5": {661"name": "comment.block.cpp punctuation.definition.comment.end.cpp"662}663}664},665{666"match": "((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:((?<!\\w)final(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?(?=:|{|$)",667"captures": {668"1": {669"name": "entity.name.type.class.cpp"670},671"2": {672"patterns": [673{674"include": "#inline_comment"675}676]677},678"3": {679"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"680},681"4": {682"name": "comment.block.cpp"683},684"5": {685"name": "comment.block.cpp punctuation.definition.comment.end.cpp"686},687"6": {688"name": "storage.type.modifier.final.cpp"689},690"7": {691"patterns": [692{693"include": "#inline_comment"694}695]696},697"8": {698"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"699},700"9": {701"name": "comment.block.cpp"702},703"10": {704"name": "comment.block.cpp punctuation.definition.comment.end.cpp"705}706}707},708{709"match": "DLLEXPORT",710"name": "entity.name.other.preprocessor.macro.predefined.DLLEXPORT.cpp"711},712{713"match": "(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*",714"name": "entity.name.other.preprocessor.macro.predefined.probably.$0.cpp"715}716]717},718"12": {719"patterns": [720{721"include": "#inline_comment"722}723]724},725"13": {726"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"727},728"14": {729"name": "comment.block.cpp"730},731"15": {732"name": "comment.block.cpp punctuation.definition.comment.end.cpp"733},734"16": {735"patterns": [736{737"include": "#inline_comment"738}739]740},741"17": {742"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"743},744"18": {745"name": "comment.block.cpp"746},747"19": {748"name": "comment.block.cpp punctuation.definition.comment.end.cpp"749},750"20": {751"name": "punctuation.separator.colon.inheritance.cpp"752}753},754"endCaptures": {755"1": {756"name": "punctuation.terminator.statement.cpp"757},758"2": {759"name": "punctuation.terminator.statement.cpp"760}761},762"name": "meta.block.class.cpp",763"patterns": [764{765"begin": "\\G ?",766"end": "(?:\\{|<%|\\?\\?<|(?=;))",767"beginCaptures": {},768"endCaptures": {769"0": {770"name": "punctuation.section.block.begin.bracket.curly.class.cpp"771}772},773"name": "meta.head.class.cpp",774"patterns": [775{776"include": "#ever_present_context"777},778{779"include": "#inheritance_context"780},781{782"include": "#template_call_range"783}784]785},786{787"begin": "(?<=\\{|<%|\\?\\?<)",788"end": "\\}|%>|\\?\\?>",789"beginCaptures": {},790"endCaptures": {791"0": {792"name": "punctuation.section.block.end.bracket.curly.class.cpp"793}794},795"name": "meta.body.class.cpp",796"patterns": [797{798"include": "#function_pointer"799},800{801"include": "#static_assert"802},803{804"include": "#constructor_inline"805},806{807"include": "#destructor_inline"808},809{810"include": "$self"811}812]813},814{815"begin": "(?<=\\}|%>|\\?\\?>)[\\s]*",816"end": "[\\s]*(?=;)",817"beginCaptures": {},818"endCaptures": {},819"name": "meta.tail.class.cpp",820"patterns": [821{822"include": "$self"823}824]825}826]827},828"class_declare": {829"match": "((?<!\\w)class(?!\\w))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))(((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))?(?:(?:&|\\*)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:&|\\*))?((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))\\b(?!override\\W|override\\$|final\\W|final\\$)((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?=\\S)(?![:{a-zA-Z])",830"captures": {831"1": {832"name": "storage.type.class.declare.cpp"833},834"2": {835"patterns": [836{837"include": "#inline_comment"838}839]840},841"3": {842"patterns": [843{844"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",845"captures": {846"1": {847"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"848},849"2": {850"name": "comment.block.cpp"851},852"3": {853"name": "comment.block.cpp punctuation.definition.comment.end.cpp"854}855}856}857]858},859"4": {860"name": "entity.name.type.class.cpp"861},862"5": {863"patterns": [864{865"match": "\\*",866"name": "storage.modifier.pointer.cpp"867},868{869"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",870"captures": {871"1": {872"patterns": [873{874"include": "#inline_comment"875}876]877},878"2": {879"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"880},881"3": {882"name": "comment.block.cpp"883},884"4": {885"name": "comment.block.cpp punctuation.definition.comment.end.cpp"886}887},888"name": "invalid.illegal.reference-type.cpp"889},890{891"match": "\\&",892"name": "storage.modifier.reference.cpp"893}894]895},896"6": {897"patterns": [898{899"include": "#inline_comment"900}901]902},903"7": {904"patterns": [905{906"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",907"captures": {908"1": {909"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"910},911"2": {912"name": "comment.block.cpp"913},914"3": {915"name": "comment.block.cpp punctuation.definition.comment.end.cpp"916}917}918}919]920},921"8": {922"patterns": [923{924"include": "#inline_comment"925}926]927},928"9": {929"patterns": [930{931"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",932"captures": {933"1": {934"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"935},936"2": {937"name": "comment.block.cpp"938},939"3": {940"name": "comment.block.cpp punctuation.definition.comment.end.cpp"941}942}943}944]945},946"10": {947"patterns": [948{949"include": "#inline_comment"950}951]952},953"11": {954"patterns": [955{956"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",957"captures": {958"1": {959"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"960},961"2": {962"name": "comment.block.cpp"963},964"3": {965"name": "comment.block.cpp punctuation.definition.comment.end.cpp"966}967}968}969]970},971"12": {972"name": "variable.other.object.declare.cpp"973},974"13": {975"patterns": [976{977"include": "#inline_comment"978}979]980},981"14": {982"patterns": [983{984"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",985"captures": {986"1": {987"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"988},989"2": {990"name": "comment.block.cpp"991},992"3": {993"name": "comment.block.cpp punctuation.definition.comment.end.cpp"994}995}996}997]998}999}1000},1001"comma": {1002"match": ",",1003"name": "punctuation.separator.delimiter.comma.cpp"1004},1005"comma_in_template_argument": {1006"match": ",",1007"name": "punctuation.separator.delimiter.comma.template.argument.cpp"1008},1009"comments": {1010"patterns": [1011{1012"begin": "^(?:\\s+)?+(\\/\\/[!\\/]+)",1013"end": "(?<=\\n)(?<!\\\\\\n)",1014"beginCaptures": {1015"1": {1016"name": "punctuation.definition.comment.documentation.cpp"1017}1018},1019"endCaptures": {},1020"name": "comment.line.double-slash.documentation.cpp",1021"patterns": [1022{1023"include": "#line_continuation_character"1024},1025{1026"match": "(?<=[\\s*!\\/])[\\\\@](?:callergraph|callgraph|else|endif|f\\$|f\\[|f\\]|hidecallergraph|hidecallgraph|hiderefby|hiderefs|hideinitializer|htmlinclude|n|nosubgrouping|private|privatesection|protected|protectedsection|public|publicsection|pure|showinitializer|showrefby|showrefs|tableofcontents|\\$|\\#|<|>|%|\"|\\.|=|::|\\||\\-\\-|\\-\\-\\-)\\b(?:\\{[^}]*\\})?",1027"name": "storage.type.class.doxygen.cpp"1028},1029{1030"match": "((?<=[\\s*!\\/])[\\\\@](?:a|em|e))\\s+(\\S+)",1031"captures": {1032"1": {1033"name": "storage.type.class.doxygen.cpp"1034},1035"2": {1036"name": "markup.italic.doxygen.cpp"1037}1038}1039},1040{1041"match": "((?<=[\\s*!\\/])[\\\\@]b)\\s+(\\S+)",1042"captures": {1043"1": {1044"name": "storage.type.class.doxygen.cpp"1045},1046"2": {1047"name": "markup.bold.doxygen.cpp"1048}1049}1050},1051{1052"match": "((?<=[\\s*!\\/])[\\\\@](?:c|p))\\s+(\\S+)",1053"captures": {1054"1": {1055"name": "storage.type.class.doxygen.cpp"1056},1057"2": {1058"name": "markup.inline.raw.string.cpp"1059}1060}1061},1062{1063"match": "(?<=[\\s*!\\/])[\\\\@](?:a|anchor|b|c|cite|copybrief|copydetail|copydoc|def|dir|dontinclude|e|em|emoji|enum|example|extends|file|idlexcept|implements|include|includedoc|includelineno|latexinclude|link|memberof|namespace|p|package|ref|refitem|related|relates|relatedalso|relatesalso|verbinclude)\\b(?:\\{[^}]*\\})?",1064"name": "storage.type.class.doxygen.cpp"1065},1066{1067"match": "(?<=[\\s*!\\/])[\\\\@](?:addindex|addtogroup|category|class|defgroup|diafile|dotfile|elseif|fn|headerfile|if|ifnot|image|ingroup|interface|line|mainpage|mscfile|name|overload|page|property|protocol|section|skip|skipline|snippet|snippetdoc|snippetlineno|struct|subpage|subsection|subsubsection|typedef|union|until|vhdlflow|weakgroup)\\b(?:\\{[^}]*\\})?",1068"name": "storage.type.class.doxygen.cpp"1069},1070{1071"match": "((?<=[\\s*!\\/])[\\\\@]param)(?:\\s*\\[((?:,?(?:\\s+)?(?:in|out)(?:\\s+)?)+)\\])?(\\s+((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))(?:(,)(?:\\s+)?((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)))*)",1072"captures": {1073"1": {1074"name": "storage.type.class.doxygen.cpp"1075},1076"2": {1077"patterns": [1078{1079"match": "in|out",1080"name": "keyword.other.parameter.direction.$0.cpp"1081}1082]1083},1084"3": {1085"patterns": [1086{1087"match": "(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)",1088"name": "variable.parameter.cpp"1089},1090{1091"match": ",",1092"name": "punctuation.cpp"1093}1094]1095},1096"4": {1097"name": "variable.parameter.cpp"1098},1099"5": {1100"name": "punctuation.cpp"1101},1102"6": {1103"name": "variable.parameter.cpp"1104}1105}1106},1107{1108"match": "(?<=[\\s*!\\/])[\\\\@](?:arg|attention|author|authors|brief|bug|copyright|date|deprecated|details|exception|invariant|li|note|par|paragraph|param|post|pre|remark|remarks|result|return|returns|retval|sa|see|short|since|test|throw|throws|todo|tparam|version|warning|xrefitem)\\b(?:\\{[^}]*\\})?",1109"name": "storage.type.class.doxygen.cpp"1110},1111{1112"match": "(?<=[\\s*!\\/])[\\\\@](?:code|cond|docbookonly|dot|htmlonly|internal|latexonly|link|manonly|msc|parblock|rtfonly|secreflist|startuml|verbatim|xmlonly|endcode|endcond|enddocbookonly|enddot|endhtmlonly|endinternal|endlatexonly|endlink|endmanonly|endmsc|endparblock|endrtfonly|endsecreflist|enduml|endverbatim|endxmlonly)\\b(?:\\{[^}]*\\})?",1113"name": "storage.type.class.doxygen.cpp"1114},1115{1116"match": "(?:\\b[A-Z]+:|@[a-z_]+:)",1117"name": "storage.type.class.gtkdoc.cpp"1118}1119]1120},1121{1122"match": "(\\/\\*[!*]+(?=\\s))(.+)([!*]*\\*\\/)",1123"captures": {1124"1": {1125"name": "punctuation.definition.comment.begin.documentation.cpp"1126},1127"2": {1128"patterns": [1129{1130"match": "(?<=[\\s*!\\/])[\\\\@](?:callergraph|callgraph|else|endif|f\\$|f\\[|f\\]|hidecallergraph|hidecallgraph|hiderefby|hiderefs|hideinitializer|htmlinclude|n|nosubgrouping|private|privatesection|protected|protectedsection|public|publicsection|pure|showinitializer|showrefby|showrefs|tableofcontents|\\$|\\#|<|>|%|\"|\\.|=|::|\\||\\-\\-|\\-\\-\\-)\\b(?:\\{[^}]*\\})?",1131"name": "storage.type.class.doxygen.cpp"1132},1133{1134"match": "((?<=[\\s*!\\/])[\\\\@](?:a|em|e))\\s+(\\S+)",1135"captures": {1136"1": {1137"name": "storage.type.class.doxygen.cpp"1138},1139"2": {1140"name": "markup.italic.doxygen.cpp"1141}1142}1143},1144{1145"match": "((?<=[\\s*!\\/])[\\\\@]b)\\s+(\\S+)",1146"captures": {1147"1": {1148"name": "storage.type.class.doxygen.cpp"1149},1150"2": {1151"name": "markup.bold.doxygen.cpp"1152}1153}1154},1155{1156"match": "((?<=[\\s*!\\/])[\\\\@](?:c|p))\\s+(\\S+)",1157"captures": {1158"1": {1159"name": "storage.type.class.doxygen.cpp"1160},1161"2": {1162"name": "markup.inline.raw.string.cpp"1163}1164}1165},1166{1167"match": "(?<=[\\s*!\\/])[\\\\@](?:a|anchor|b|c|cite|copybrief|copydetail|copydoc|def|dir|dontinclude|e|em|emoji|enum|example|extends|file|idlexcept|implements|include|includedoc|includelineno|latexinclude|link|memberof|namespace|p|package|ref|refitem|related|relates|relatedalso|relatesalso|verbinclude)\\b(?:\\{[^}]*\\})?",1168"name": "storage.type.class.doxygen.cpp"1169},1170{1171"match": "(?<=[\\s*!\\/])[\\\\@](?:addindex|addtogroup|category|class|defgroup|diafile|dotfile|elseif|fn|headerfile|if|ifnot|image|ingroup|interface|line|mainpage|mscfile|name|overload|page|property|protocol|section|skip|skipline|snippet|snippetdoc|snippetlineno|struct|subpage|subsection|subsubsection|typedef|union|until|vhdlflow|weakgroup)\\b(?:\\{[^}]*\\})?",1172"name": "storage.type.class.doxygen.cpp"1173},1174{1175"match": "((?<=[\\s*!\\/])[\\\\@]param)(?:\\s*\\[((?:,?(?:\\s+)?(?:in|out)(?:\\s+)?)+)\\])?(\\s+((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))(?:(,)(?:\\s+)?((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)))*)",1176"captures": {1177"1": {1178"name": "storage.type.class.doxygen.cpp"1179},1180"2": {1181"patterns": [1182{1183"match": "in|out",1184"name": "keyword.other.parameter.direction.$0.cpp"1185}1186]1187},1188"3": {1189"patterns": [1190{1191"match": "(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)",1192"name": "variable.parameter.cpp"1193},1194{1195"match": ",",1196"name": "punctuation.cpp"1197}1198]1199},1200"4": {1201"name": "variable.parameter.cpp"1202},1203"5": {1204"name": "punctuation.cpp"1205},1206"6": {1207"name": "variable.parameter.cpp"1208}1209}1210},1211{1212"match": "(?<=[\\s*!\\/])[\\\\@](?:arg|attention|author|authors|brief|bug|copyright|date|deprecated|details|exception|invariant|li|note|par|paragraph|param|post|pre|remark|remarks|result|return|returns|retval|sa|see|short|since|test|throw|throws|todo|tparam|version|warning|xrefitem)\\b(?:\\{[^}]*\\})?",1213"name": "storage.type.class.doxygen.cpp"1214},1215{1216"match": "(?<=[\\s*!\\/])[\\\\@](?:code|cond|docbookonly|dot|htmlonly|internal|latexonly|link|manonly|msc|parblock|rtfonly|secreflist|startuml|verbatim|xmlonly|endcode|endcond|enddocbookonly|enddot|endhtmlonly|endinternal|endlatexonly|endlink|endmanonly|endmsc|endparblock|endrtfonly|endsecreflist|enduml|endverbatim|endxmlonly)\\b(?:\\{[^}]*\\})?",1217"name": "storage.type.class.doxygen.cpp"1218},1219{1220"match": "(?:\\b[A-Z]+:|@[a-z_]+:)",1221"name": "storage.type.class.gtkdoc.cpp"1222}1223]1224},1225"3": {1226"name": "punctuation.definition.comment.end.documentation.cpp"1227}1228},1229"name": "comment.block.documentation.cpp"1230},1231{1232"begin": "(?:\\s+)?+\\/\\*[!*]+(?:(?:\\n|$)|(?=\\s))",1233"end": "[!*]*\\*\\/",1234"beginCaptures": {1235"0": {1236"name": "punctuation.definition.comment.begin.documentation.cpp"1237}1238},1239"endCaptures": {1240"0": {1241"name": "punctuation.definition.comment.end.documentation.cpp"1242}1243},1244"name": "comment.block.documentation.cpp",1245"patterns": [1246{1247"match": "(?<=[\\s*!\\/])[\\\\@](?:callergraph|callgraph|else|endif|f\\$|f\\[|f\\]|hidecallergraph|hidecallgraph|hiderefby|hiderefs|hideinitializer|htmlinclude|n|nosubgrouping|private|privatesection|protected|protectedsection|public|publicsection|pure|showinitializer|showrefby|showrefs|tableofcontents|\\$|\\#|<|>|%|\"|\\.|=|::|\\||\\-\\-|\\-\\-\\-)\\b(?:\\{[^}]*\\})?",1248"name": "storage.type.class.doxygen.cpp"1249},1250{1251"match": "((?<=[\\s*!\\/])[\\\\@](?:a|em|e))\\s+(\\S+)",1252"captures": {1253"1": {1254"name": "storage.type.class.doxygen.cpp"1255},1256"2": {1257"name": "markup.italic.doxygen.cpp"1258}1259}1260},1261{1262"match": "((?<=[\\s*!\\/])[\\\\@]b)\\s+(\\S+)",1263"captures": {1264"1": {1265"name": "storage.type.class.doxygen.cpp"1266},1267"2": {1268"name": "markup.bold.doxygen.cpp"1269}1270}1271},1272{1273"match": "((?<=[\\s*!\\/])[\\\\@](?:c|p))\\s+(\\S+)",1274"captures": {1275"1": {1276"name": "storage.type.class.doxygen.cpp"1277},1278"2": {1279"name": "markup.inline.raw.string.cpp"1280}1281}1282},1283{1284"match": "(?<=[\\s*!\\/])[\\\\@](?:a|anchor|b|c|cite|copybrief|copydetail|copydoc|def|dir|dontinclude|e|em|emoji|enum|example|extends|file|idlexcept|implements|include|includedoc|includelineno|latexinclude|link|memberof|namespace|p|package|ref|refitem|related|relates|relatedalso|relatesalso|verbinclude)\\b(?:\\{[^}]*\\})?",1285"name": "storage.type.class.doxygen.cpp"1286},1287{1288"match": "(?<=[\\s*!\\/])[\\\\@](?:addindex|addtogroup|category|class|defgroup|diafile|dotfile|elseif|fn|headerfile|if|ifnot|image|ingroup|interface|line|mainpage|mscfile|name|overload|page|property|protocol|section|skip|skipline|snippet|snippetdoc|snippetlineno|struct|subpage|subsection|subsubsection|typedef|union|until|vhdlflow|weakgroup)\\b(?:\\{[^}]*\\})?",1289"name": "storage.type.class.doxygen.cpp"1290},1291{1292"match": "((?<=[\\s*!\\/])[\\\\@]param)(?:\\s*\\[((?:,?(?:\\s+)?(?:in|out)(?:\\s+)?)+)\\])?(\\s+((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))(?:(,)(?:\\s+)?((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)))*)",1293"captures": {1294"1": {1295"name": "storage.type.class.doxygen.cpp"1296},1297"2": {1298"patterns": [1299{1300"match": "in|out",1301"name": "keyword.other.parameter.direction.$0.cpp"1302}1303]1304},1305"3": {1306"patterns": [1307{1308"match": "(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)",1309"name": "variable.parameter.cpp"1310},1311{1312"match": ",",1313"name": "punctuation.cpp"1314}1315]1316},1317"4": {1318"name": "variable.parameter.cpp"1319},1320"5": {1321"name": "punctuation.cpp"1322},1323"6": {1324"name": "variable.parameter.cpp"1325}1326}1327},1328{1329"match": "(?<=[\\s*!\\/])[\\\\@](?:arg|attention|author|authors|brief|bug|copyright|date|deprecated|details|exception|invariant|li|note|par|paragraph|param|post|pre|remark|remarks|result|return|returns|retval|sa|see|short|since|test|throw|throws|todo|tparam|version|warning|xrefitem)\\b(?:\\{[^}]*\\})?",1330"name": "storage.type.class.doxygen.cpp"1331},1332{1333"match": "(?<=[\\s*!\\/])[\\\\@](?:code|cond|docbookonly|dot|htmlonly|internal|latexonly|link|manonly|msc|parblock|rtfonly|secreflist|startuml|verbatim|xmlonly|endcode|endcond|enddocbookonly|enddot|endhtmlonly|endinternal|endlatexonly|endlink|endmanonly|endmsc|endparblock|endrtfonly|endsecreflist|enduml|endverbatim|endxmlonly)\\b(?:\\{[^}]*\\})?",1334"name": "storage.type.class.doxygen.cpp"1335},1336{1337"match": "(?:\\b[A-Z]+:|@[a-z_]+:)",1338"name": "storage.type.class.gtkdoc.cpp"1339}1340]1341},1342{1343"include": "#emacs_file_banner"1344},1345{1346"include": "#block_comment"1347},1348{1349"include": "#line_comment"1350},1351{1352"include": "#invalid_comment_end"1353}1354]1355},1356"constructor_inline": {1357"begin": "^((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?:(?:(?:constexpr)|(?:consteval)|(?:explicit)|(?:mutable)|(?:virtual)|(?:inline)|(?:friend))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*)((?:__cdecl|__clrcall|__stdcall|__fastcall|__thiscall|__vectorcall)?)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)(?=\\())",1358"end": "(?:(?<=\\}|%>|\\?\\?>)|(?=[;>\\[\\]=]))",1359"beginCaptures": {1360"0": {1361"name": "meta.head.function.definition.special.constructor.cpp"1362},1363"1": {1364"patterns": [1365{1366"include": "#inline_comment"1367}1368]1369},1370"2": {1371"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"1372},1373"3": {1374"name": "comment.block.cpp"1375},1376"4": {1377"name": "comment.block.cpp punctuation.definition.comment.end.cpp"1378},1379"5": {1380"patterns": [1381{1382"include": "#functional_specifiers_pre_parameters"1383}1384]1385},1386"6": {1387"patterns": [1388{1389"include": "#inline_comment"1390}1391]1392},1393"7": {1394"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"1395},1396"8": {1397"name": "comment.block.cpp"1398},1399"9": {1400"name": "comment.block.cpp punctuation.definition.comment.end.cpp"1401},1402"10": {1403"name": "storage.type.modifier.calling-convention.cpp"1404},1405"11": {1406"patterns": [1407{1408"include": "#inline_comment"1409}1410]1411},1412"12": {1413"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"1414},1415"13": {1416"name": "comment.block.cpp"1417},1418"14": {1419"name": "comment.block.cpp punctuation.definition.comment.end.cpp"1420},1421"15": {1422"name": "entity.name.function.constructor.cpp entity.name.function.definition.special.constructor.cpp"1423}1424},1425"endCaptures": {},1426"name": "meta.function.definition.special.constructor.cpp",1427"patterns": [1428{1429"begin": "\\G ?",1430"end": "(?:\\{|<%|\\?\\?<|(?=;))",1431"beginCaptures": {},1432"endCaptures": {1433"0": {1434"name": "punctuation.section.block.begin.bracket.curly.function.definition.special.constructor.cpp"1435}1436},1437"name": "meta.head.function.definition.special.constructor.cpp",1438"patterns": [1439{1440"include": "#ever_present_context"1441},1442{1443"match": "(\\=)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(default)|(delete))",1444"captures": {1445"1": {1446"name": "keyword.operator.assignment.cpp"1447},1448"2": {1449"patterns": [1450{1451"include": "#inline_comment"1452}1453]1454},1455"3": {1456"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"1457},1458"4": {1459"name": "comment.block.cpp"1460},1461"5": {1462"name": "comment.block.cpp punctuation.definition.comment.end.cpp"1463},1464"6": {1465"name": "keyword.other.default.function.cpp keyword.other.default.constructor.cpp"1466},1467"7": {1468"name": "keyword.other.delete.function.cpp keyword.other.delete.constructor.cpp"1469}1470}1471},1472{1473"include": "#functional_specifiers_pre_parameters"1474},1475{1476"begin": ":",1477"end": "(?=\\{)",1478"beginCaptures": {1479"0": {1480"name": "punctuation.separator.initializers.cpp"1481}1482},1483"endCaptures": {},1484"patterns": [1485{1486"begin": "((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))(((?<!<)<(?!<)(?:(?:(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/)))|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<3>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?(\\()",1487"end": "\\)",1488"beginCaptures": {1489"1": {1490"name": "entity.name.function.call.initializer.cpp"1491},1492"2": {1493"name": "meta.template.call.cpp",1494"patterns": [1495{1496"include": "#template_call_range"1497}1498]1499},1500"3": {},1501"4": {1502"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"1503},1504"5": {1505"name": "comment.block.cpp"1506},1507"6": {1508"name": "comment.block.cpp punctuation.definition.comment.end.cpp"1509},1510"7": {1511"name": "punctuation.section.arguments.begin.bracket.round.function.call.initializer.cpp"1512}1513},1514"endCaptures": {1515"0": {1516"name": "punctuation.section.arguments.end.bracket.round.function.call.initializer.cpp"1517}1518},1519"contentName": "meta.parameter.initialization",1520"patterns": [1521{1522"include": "#evaluation_context"1523}1524]1525},1526{1527"begin": "((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))(\\{)",1528"end": "\\}",1529"beginCaptures": {1530"1": {1531"name": "entity.name.function.call.initializer.cpp"1532},1533"2": {1534"name": "punctuation.section.arguments.begin.bracket.round.function.call.initializer.cpp"1535}1536},1537"endCaptures": {1538"0": {1539"name": "punctuation.section.arguments.end.bracket.round.function.call.initializer.cpp"1540}1541},1542"contentName": "meta.parameter.initialization",1543"patterns": [1544{1545"include": "#evaluation_context"1546}1547]1548},1549{1550"match": ",",1551"name": "punctuation.separator.delimiter.comma.cpp"1552},1553{1554"include": "#comments"1555}1556]1557},1558{1559"begin": "\\(",1560"end": "\\)",1561"beginCaptures": {1562"0": {1563"name": "punctuation.section.parameters.begin.bracket.round.special.constructor.cpp"1564}1565},1566"endCaptures": {1567"0": {1568"name": "punctuation.section.parameters.end.bracket.round.special.constructor.cpp"1569}1570},1571"contentName": "meta.function.definition.parameters.special.constructor",1572"patterns": [1573{1574"include": "#function_parameter_context"1575},1576{1577"include": "#evaluation_context"1578}1579]1580},1581{1582"include": "#qualifiers_and_specifiers_post_parameters"1583},1584{1585"include": "$self"1586}1587]1588},1589{1590"begin": "(?<=\\{|<%|\\?\\?<)",1591"end": "\\}|%>|\\?\\?>",1592"beginCaptures": {},1593"endCaptures": {1594"0": {1595"name": "punctuation.section.block.end.bracket.curly.function.definition.special.constructor.cpp"1596}1597},1598"name": "meta.body.function.definition.special.constructor.cpp",1599"patterns": [1600{1601"include": "#function_body_context"1602}1603]1604},1605{1606"begin": "(?<=\\}|%>|\\?\\?>)[\\s]*",1607"end": "[\\s]*(?=;)",1608"beginCaptures": {},1609"endCaptures": {},1610"name": "meta.tail.function.definition.special.constructor.cpp",1611"patterns": [1612{1613"include": "$self"1614}1615]1616}1617]1618},1619"constructor_root": {1620"begin": "\\s*+((?:__cdecl|__clrcall|__stdcall|__fastcall|__thiscall|__vectorcall)?)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?:::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<8>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*+)(((?>(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))::((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:\\10)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?=\\())",1621"end": "(?:(?<=\\}|%>|\\?\\?>)|(?=[;>\\[\\]=]))",1622"beginCaptures": {1623"0": {1624"name": "meta.head.function.definition.special.constructor.cpp"1625},1626"1": {1627"name": "storage.type.modifier.calling-convention.cpp"1628},1629"2": {1630"patterns": [1631{1632"include": "#inline_comment"1633}1634]1635},1636"3": {1637"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"1638},1639"4": {1640"name": "comment.block.cpp"1641},1642"5": {1643"name": "comment.block.cpp punctuation.definition.comment.end.cpp"1644},1645"6": {1646"patterns": [1647{1648"match": "::",1649"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.constructor.cpp"1650},1651{1652"match": "(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)",1653"name": "entity.name.scope-resolution.constructor.cpp"1654},1655{1656"include": "#template_call_range"1657}1658]1659},1660"7": {1661"patterns": [1662{1663"include": "#template_call_range"1664}1665]1666},1667"8": {},1668"9": {1669"patterns": [1670{1671"match": "(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?=:)",1672"name": "entity.name.type.constructor.cpp"1673},1674{1675"match": "(?<=:)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*",1676"name": "entity.name.function.definition.special.constructor.cpp"1677},1678{1679"match": "::",1680"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.constructor.cpp"1681}1682]1683},1684"10": {},1685"11": {1686"patterns": [1687{1688"include": "#inline_comment"1689}1690]1691},1692"12": {1693"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"1694},1695"13": {1696"name": "comment.block.cpp"1697},1698"14": {1699"name": "comment.block.cpp punctuation.definition.comment.end.cpp"1700},1701"15": {1702"patterns": [1703{1704"include": "#inline_comment"1705}1706]1707},1708"16": {1709"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"1710},1711"17": {1712"name": "comment.block.cpp"1713},1714"18": {1715"name": "comment.block.cpp punctuation.definition.comment.end.cpp"1716},1717"19": {1718"patterns": [1719{1720"include": "#inline_comment"1721}1722]1723},1724"20": {1725"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"1726},1727"21": {1728"name": "comment.block.cpp"1729},1730"22": {1731"name": "comment.block.cpp punctuation.definition.comment.end.cpp"1732}1733},1734"endCaptures": {},1735"name": "meta.function.definition.special.constructor.cpp",1736"patterns": [1737{1738"begin": "\\G ?",1739"end": "(?:\\{|<%|\\?\\?<|(?=;))",1740"beginCaptures": {},1741"endCaptures": {1742"0": {1743"name": "punctuation.section.block.begin.bracket.curly.function.definition.special.constructor.cpp"1744}1745},1746"name": "meta.head.function.definition.special.constructor.cpp",1747"patterns": [1748{1749"include": "#ever_present_context"1750},1751{1752"match": "(\\=)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(default)|(delete))",1753"captures": {1754"1": {1755"name": "keyword.operator.assignment.cpp"1756},1757"2": {1758"patterns": [1759{1760"include": "#inline_comment"1761}1762]1763},1764"3": {1765"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"1766},1767"4": {1768"name": "comment.block.cpp"1769},1770"5": {1771"name": "comment.block.cpp punctuation.definition.comment.end.cpp"1772},1773"6": {1774"name": "keyword.other.default.function.cpp keyword.other.default.constructor.cpp"1775},1776"7": {1777"name": "keyword.other.delete.function.cpp keyword.other.delete.constructor.cpp"1778}1779}1780},1781{1782"include": "#functional_specifiers_pre_parameters"1783},1784{1785"begin": ":",1786"end": "(?=\\{)",1787"beginCaptures": {1788"0": {1789"name": "punctuation.separator.initializers.cpp"1790}1791},1792"endCaptures": {},1793"patterns": [1794{1795"begin": "((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))(((?<!<)<(?!<)(?:(?:(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/)))|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<3>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?(\\()",1796"end": "\\)",1797"beginCaptures": {1798"1": {1799"name": "entity.name.function.call.initializer.cpp"1800},1801"2": {1802"name": "meta.template.call.cpp",1803"patterns": [1804{1805"include": "#template_call_range"1806}1807]1808},1809"3": {},1810"4": {1811"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"1812},1813"5": {1814"name": "comment.block.cpp"1815},1816"6": {1817"name": "comment.block.cpp punctuation.definition.comment.end.cpp"1818},1819"7": {1820"name": "punctuation.section.arguments.begin.bracket.round.function.call.initializer.cpp"1821}1822},1823"endCaptures": {1824"0": {1825"name": "punctuation.section.arguments.end.bracket.round.function.call.initializer.cpp"1826}1827},1828"contentName": "meta.parameter.initialization",1829"patterns": [1830{1831"include": "#evaluation_context"1832}1833]1834},1835{1836"begin": "((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))(\\{)",1837"end": "\\}",1838"beginCaptures": {1839"1": {1840"name": "entity.name.function.call.initializer.cpp"1841},1842"2": {1843"name": "punctuation.section.arguments.begin.bracket.round.function.call.initializer.cpp"1844}1845},1846"endCaptures": {1847"0": {1848"name": "punctuation.section.arguments.end.bracket.round.function.call.initializer.cpp"1849}1850},1851"contentName": "meta.parameter.initialization",1852"patterns": [1853{1854"include": "#evaluation_context"1855}1856]1857},1858{1859"match": ",",1860"name": "punctuation.separator.delimiter.comma.cpp"1861},1862{1863"include": "#comments"1864}1865]1866},1867{1868"begin": "\\(",1869"end": "\\)",1870"beginCaptures": {1871"0": {1872"name": "punctuation.section.parameters.begin.bracket.round.special.constructor.cpp"1873}1874},1875"endCaptures": {1876"0": {1877"name": "punctuation.section.parameters.end.bracket.round.special.constructor.cpp"1878}1879},1880"contentName": "meta.function.definition.parameters.special.constructor",1881"patterns": [1882{1883"include": "#function_parameter_context"1884},1885{1886"include": "#evaluation_context"1887}1888]1889},1890{1891"include": "#qualifiers_and_specifiers_post_parameters"1892},1893{1894"include": "$self"1895}1896]1897},1898{1899"begin": "(?<=\\{|<%|\\?\\?<)",1900"end": "\\}|%>|\\?\\?>",1901"beginCaptures": {},1902"endCaptures": {1903"0": {1904"name": "punctuation.section.block.end.bracket.curly.function.definition.special.constructor.cpp"1905}1906},1907"name": "meta.body.function.definition.special.constructor.cpp",1908"patterns": [1909{1910"include": "#function_body_context"1911}1912]1913},1914{1915"begin": "(?<=\\}|%>|\\?\\?>)[\\s]*",1916"end": "[\\s]*(?=;)",1917"beginCaptures": {},1918"endCaptures": {},1919"name": "meta.tail.function.definition.special.constructor.cpp",1920"patterns": [1921{1922"include": "$self"1923}1924]1925}1926]1927},1928"control_flow_keywords": {1929"match": "((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:(?:co_return)|(?:co_yield)|(?:co_await)|(?:continue)|(?:default)|(?:switch)|(?:return)|(?:catch)|(?:while)|(?:throw)|(?:break)|(?:case)|(?:goto)|(?:else)|(?:for)|(?:try)|(?:if)|(?:do))(?!\\w))",1930"captures": {1931"1": {1932"patterns": [1933{1934"include": "#inline_comment"1935}1936]1937},1938"2": {1939"patterns": [1940{1941"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",1942"captures": {1943"1": {1944"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"1945},1946"2": {1947"name": "comment.block.cpp"1948},1949"3": {1950"name": "comment.block.cpp punctuation.definition.comment.end.cpp"1951}1952}1953}1954]1955},1956"3": {1957"name": "keyword.control.$3.cpp"1958}1959}1960},1961"cpp_attributes": {1962"begin": "\\[\\[",1963"end": "\\]\\]",1964"beginCaptures": {1965"0": {1966"name": "punctuation.section.attribute.begin.cpp"1967}1968},1969"endCaptures": {1970"0": {1971"name": "punctuation.section.attribute.end.cpp"1972}1973},1974"name": "support.other.attribute.cpp",1975"patterns": [1976{1977"include": "#attributes_context"1978},1979{1980"begin": "\\(",1981"end": "\\)",1982"beginCaptures": {},1983"endCaptures": {},1984"patterns": [1985{1986"include": "#attributes_context"1987},1988{1989"include": "#string_context"1990},1991{1992"include": "#ever_present_context"1993}1994]1995},1996{1997"match": "(using)\\s+((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))",1998"captures": {1999"1": {2000"name": "keyword.other.using.directive.cpp"2001},2002"2": {2003"name": "entity.name.namespace.cpp"2004}2005}2006},2007{2008"match": ",",2009"name": "punctuation.separator.attribute.cpp"2010},2011{2012"match": ":",2013"name": "punctuation.accessor.attribute.cpp"2014},2015{2016"match": "(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)(?=::)",2017"name": "entity.name.namespace.cpp"2018},2019{2020"match": "(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)",2021"name": "entity.other.attribute.$0.cpp"2022},2023{2024"include": "#number_literal"2025},2026{2027"include": "#ever_present_context"2028}2029]2030},2031"curly_initializer": {2032"begin": "(\\s*+((?:(?:(?:\\[\\[.*?\\]\\]|__attribute(?:__)?\\s*\\(\\s*\\(.*?\\)\\s*\\))|__declspec\\(.*?\\))|alignas\\(.*?\\))(?!\\)))?((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:((?:::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<18>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*+)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\b)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*\\b((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<18>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)?(?![\\w<:.]))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\{)",2033"end": "\\}",2034"beginCaptures": {2035"1": {2036"name": "meta.qualified_type.cpp",2037"patterns": [2038{2039"match": "::",2040"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"2041},2042{2043"match": "(?<!\\w)(?:(?:struct)|(?:class)|(?:union)|(?:enum))(?!\\w)",2044"name": "storage.type.$0.cpp"2045},2046{2047"include": "#attributes_context"2048},2049{2050"include": "#storage_types"2051},2052{2053"include": "#number_literal"2054},2055{2056"include": "#string_context"2057},2058{2059"include": "#comma"2060},2061{2062"include": "#scope_resolution_inner_generated"2063},2064{2065"begin": "<",2066"end": ">",2067"beginCaptures": {2068"0": {2069"name": "punctuation.section.angle-brackets.begin.template.call.cpp"2070}2071},2072"endCaptures": {2073"0": {2074"name": "punctuation.section.angle-brackets.end.template.call.cpp"2075}2076},2077"name": "meta.template.call.cpp",2078"patterns": [2079{2080"include": "#template_call_context"2081}2082]2083},2084{2085"match": "(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*",2086"name": "entity.name.type.cpp"2087}2088]2089},2090"2": {2091"patterns": [2092{2093"include": "#attributes_context"2094},2095{2096"include": "#number_literal"2097}2098]2099},2100"3": {2101"patterns": [2102{2103"include": "#inline_comment"2104}2105]2106},2107"4": {2108"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2109},2110"5": {2111"name": "comment.block.cpp"2112},2113"6": {2114"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2115},2116"7": {2117"patterns": [2118{2119"include": "#inline_comment"2120}2121]2122},2123"8": {2124"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2125},2126"9": {2127"name": "comment.block.cpp"2128},2129"10": {2130"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2131},2132"11": {2133"patterns": [2134{2135"match": "::",2136"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"2137},2138{2139"match": "(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)",2140"name": "entity.name.scope-resolution.type.cpp"2141},2142{2143"include": "#template_call_range"2144}2145]2146},2147"12": {2148"patterns": [2149{2150"include": "#template_call_range"2151}2152]2153},2154"13": {},2155"14": {2156"patterns": [2157{2158"include": "#inline_comment"2159}2160]2161},2162"15": {2163"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2164},2165"16": {2166"name": "comment.block.cpp"2167},2168"17": {2169"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2170},2171"18": {},2172"19": {2173"patterns": [2174{2175"include": "#inline_comment"2176}2177]2178},2179"20": {2180"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2181},2182"21": {2183"name": "comment.block.cpp"2184},2185"22": {2186"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2187},2188"23": {2189"name": "punctuation.section.arguments.begin.bracket.curly.initializer.cpp"2190}2191},2192"endCaptures": {2193"0": {2194"name": "punctuation.section.arguments.end.bracket.curly.initializer.cpp"2195}2196},2197"name": "meta.initialization.cpp",2198"patterns": [2199{2200"include": "#evaluation_context"2201},2202{2203"include": "#comma"2204}2205]2206},2207"d9bc4796b0b_module_import": {2208"match": "^((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((import))(?:\\s+)?(?:(?:(?:((<)[^>]*(>?)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(?:\\n|$)|(?=\\/\\/)))|((\\\")[^\\\"]*(\\\"?)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(?:\\n|$)|(?=\\/\\/))))|(((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?:\\.(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*)*((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(?:\\n|$)|(?=(?:\\/\\/|;)))))|((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(?:\\n|$)|(?=(?:\\/\\/|;))))(?:\\s+)?(;?)",2209"captures": {2210"1": {2211"patterns": [2212{2213"include": "#inline_comment"2214}2215]2216},2217"2": {2218"patterns": [2219{2220"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",2221"captures": {2222"1": {2223"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2224},2225"2": {2226"name": "comment.block.cpp"2227},2228"3": {2229"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2230}2231}2232}2233]2234},2235"3": {2236"name": "keyword.control.directive.import.cpp"2237},2238"5": {2239"name": "string.quoted.other.lt-gt.include.cpp"2240},2241"6": {2242"name": "punctuation.definition.string.begin.cpp"2243},2244"7": {2245"name": "punctuation.definition.string.end.cpp"2246},2247"8": {2248"patterns": [2249{2250"include": "#inline_comment"2251}2252]2253},2254"9": {2255"patterns": [2256{2257"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",2258"captures": {2259"1": {2260"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2261},2262"2": {2263"name": "comment.block.cpp"2264},2265"3": {2266"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2267}2268}2269}2270]2271},2272"10": {2273"name": "string.quoted.double.include.cpp"2274},2275"11": {2276"name": "punctuation.definition.string.begin.cpp"2277},2278"12": {2279"name": "punctuation.definition.string.end.cpp"2280},2281"13": {2282"patterns": [2283{2284"include": "#inline_comment"2285}2286]2287},2288"14": {2289"patterns": [2290{2291"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",2292"captures": {2293"1": {2294"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2295},2296"2": {2297"name": "comment.block.cpp"2298},2299"3": {2300"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2301}2302}2303}2304]2305},2306"15": {2307"name": "entity.name.other.preprocessor.macro.include.cpp"2308},2309"16": {2310"patterns": [2311{2312"include": "#inline_comment"2313}2314]2315},2316"17": {2317"patterns": [2318{2319"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",2320"captures": {2321"1": {2322"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2323},2324"2": {2325"name": "comment.block.cpp"2326},2327"3": {2328"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2329}2330}2331}2332]2333},2334"18": {2335"patterns": [2336{2337"include": "#inline_comment"2338}2339]2340},2341"19": {2342"patterns": [2343{2344"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",2345"captures": {2346"1": {2347"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2348},2349"2": {2350"name": "comment.block.cpp"2351},2352"3": {2353"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2354}2355}2356}2357]2358},2359"20": {2360"patterns": [2361{2362"include": "#inline_comment"2363}2364]2365},2366"21": {2367"patterns": [2368{2369"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",2370"captures": {2371"1": {2372"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2373},2374"2": {2375"name": "comment.block.cpp"2376},2377"3": {2378"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2379}2380}2381}2382]2383},2384"22": {2385"name": "punctuation.terminator.statement.cpp"2386}2387},2388"name": "meta.preprocessor.import.cpp"2389},2390"d9bc4796b0b_preprocessor_number_literal": {2391"match": "(?<!\\w)\\.?\\d(?:(?:[0-9a-zA-Z_\\.]|')|(?<=[eEpP])[+-])*",2392"captures": {2393"0": {2394"patterns": [2395{2396"begin": "(?=.)",2397"end": "$",2398"beginCaptures": {},2399"endCaptures": {},2400"patterns": [2401{2402"match": "(\\G0[xX])([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)?((?:(?<=[0-9a-fA-F])\\.|\\.(?=[0-9a-fA-F])))([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)?(?:(?<!')([pP])(\\+?)(\\-?)([0-9](?:[0-9]|(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))*))?([lLfF](?!\\w))?$",2403"captures": {2404"1": {2405"name": "keyword.other.unit.hexadecimal.cpp"2406},2407"2": {2408"name": "constant.numeric.hexadecimal.cpp",2409"patterns": [2410{2411"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",2412"name": "punctuation.separator.constant.numeric.cpp"2413}2414]2415},2416"3": {2417"name": "punctuation.separator.constant.numeric.cpp"2418},2419"4": {2420"name": "constant.numeric.hexadecimal.cpp"2421},2422"5": {2423"name": "constant.numeric.hexadecimal.cpp",2424"patterns": [2425{2426"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",2427"name": "punctuation.separator.constant.numeric.cpp"2428}2429]2430},2431"6": {2432"name": "punctuation.separator.constant.numeric.cpp"2433},2434"7": {2435"name": "keyword.other.unit.exponent.hexadecimal.cpp"2436},2437"8": {2438"name": "keyword.operator.plus.exponent.hexadecimal.cpp"2439},2440"9": {2441"name": "keyword.operator.minus.exponent.hexadecimal.cpp"2442},2443"10": {2444"name": "constant.numeric.exponent.hexadecimal.cpp",2445"patterns": [2446{2447"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",2448"name": "punctuation.separator.constant.numeric.cpp"2449}2450]2451},2452"11": {2453"name": "keyword.other.suffix.literal.built-in.floating-point.cpp keyword.other.unit.suffix.floating-point.cpp"2454}2455}2456},2457{2458"match": "\\G(?=[0-9.])(?!0[xXbB])([0-9](?:[0-9]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)?((?:(?<=[0-9])\\.|\\.(?=[0-9])))([0-9](?:[0-9]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)?(?:(?<!')([eE])(\\+?)(\\-?)([0-9](?:[0-9]|(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))*))?([lLfF](?!\\w))?$",2459"captures": {2460"1": {2461"name": "constant.numeric.decimal.cpp",2462"patterns": [2463{2464"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",2465"name": "punctuation.separator.constant.numeric.cpp"2466}2467]2468},2469"2": {2470"name": "punctuation.separator.constant.numeric.cpp"2471},2472"3": {2473"name": "constant.numeric.decimal.point.cpp"2474},2475"4": {2476"name": "constant.numeric.decimal.cpp",2477"patterns": [2478{2479"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",2480"name": "punctuation.separator.constant.numeric.cpp"2481}2482]2483},2484"5": {2485"name": "punctuation.separator.constant.numeric.cpp"2486},2487"6": {2488"name": "keyword.other.unit.exponent.decimal.cpp"2489},2490"7": {2491"name": "keyword.operator.plus.exponent.decimal.cpp"2492},2493"8": {2494"name": "keyword.operator.minus.exponent.decimal.cpp"2495},2496"9": {2497"name": "constant.numeric.exponent.decimal.cpp",2498"patterns": [2499{2500"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",2501"name": "punctuation.separator.constant.numeric.cpp"2502}2503]2504},2505"10": {2506"name": "keyword.other.suffix.literal.built-in.floating-point.cpp keyword.other.unit.suffix.floating-point.cpp"2507}2508}2509},2510{2511"match": "(\\G0[bB])([01](?:[01]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)((?:[uU]|(?:[uU]ll?)|(?:[uU]LL?)|(?:ll?[uU]?)|(?:LL?[uU]?)|[fF])(?!\\w))?$",2512"captures": {2513"1": {2514"name": "keyword.other.unit.binary.cpp"2515},2516"2": {2517"name": "constant.numeric.binary.cpp",2518"patterns": [2519{2520"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",2521"name": "punctuation.separator.constant.numeric.cpp"2522}2523]2524},2525"3": {2526"name": "punctuation.separator.constant.numeric.cpp"2527},2528"4": {2529"name": "keyword.other.suffix.literal.built-in.integer.cpp keyword.other.unit.suffix.integer.cpp"2530}2531}2532},2533{2534"match": "(\\G0)((?:[0-7]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))+)((?:[uU]|(?:[uU]ll?)|(?:[uU]LL?)|(?:ll?[uU]?)|(?:LL?[uU]?)|[fF])(?!\\w))?$",2535"captures": {2536"1": {2537"name": "keyword.other.unit.octal.cpp"2538},2539"2": {2540"name": "constant.numeric.octal.cpp",2541"patterns": [2542{2543"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",2544"name": "punctuation.separator.constant.numeric.cpp"2545}2546]2547},2548"3": {2549"name": "punctuation.separator.constant.numeric.cpp"2550},2551"4": {2552"name": "keyword.other.suffix.literal.built-in.integer.cpp keyword.other.unit.suffix.integer.cpp"2553}2554}2555},2556{2557"match": "(\\G0[xX])([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)(?:(?<!')([pP])(\\+?)(\\-?)([0-9](?:[0-9]|(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))*))?((?:[uU]|(?:[uU]ll?)|(?:[uU]LL?)|(?:ll?[uU]?)|(?:LL?[uU]?)|[fF])(?!\\w))?$",2558"captures": {2559"1": {2560"name": "keyword.other.unit.hexadecimal.cpp"2561},2562"2": {2563"name": "constant.numeric.hexadecimal.cpp",2564"patterns": [2565{2566"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",2567"name": "punctuation.separator.constant.numeric.cpp"2568}2569]2570},2571"3": {2572"name": "punctuation.separator.constant.numeric.cpp"2573},2574"4": {2575"name": "keyword.other.unit.exponent.hexadecimal.cpp"2576},2577"5": {2578"name": "keyword.operator.plus.exponent.hexadecimal.cpp"2579},2580"6": {2581"name": "keyword.operator.minus.exponent.hexadecimal.cpp"2582},2583"7": {2584"name": "constant.numeric.exponent.hexadecimal.cpp",2585"patterns": [2586{2587"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",2588"name": "punctuation.separator.constant.numeric.cpp"2589}2590]2591},2592"8": {2593"name": "keyword.other.suffix.literal.built-in.integer.cpp keyword.other.unit.suffix.integer.cpp"2594}2595}2596},2597{2598"match": "\\G(?=[0-9.])(?!0[xXbB])([0-9](?:[0-9]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)(?:(?<!')([eE])(\\+?)(\\-?)([0-9](?:[0-9]|(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))*))?((?:[uU]|(?:[uU]ll?)|(?:[uU]LL?)|(?:ll?[uU]?)|(?:LL?[uU]?)|[fF])(?!\\w))?$",2599"captures": {2600"1": {2601"name": "constant.numeric.decimal.cpp",2602"patterns": [2603{2604"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",2605"name": "punctuation.separator.constant.numeric.cpp"2606}2607]2608},2609"2": {2610"name": "punctuation.separator.constant.numeric.cpp"2611},2612"3": {2613"name": "keyword.other.unit.exponent.decimal.cpp"2614},2615"4": {2616"name": "keyword.operator.plus.exponent.decimal.cpp"2617},2618"5": {2619"name": "keyword.operator.minus.exponent.decimal.cpp"2620},2621"6": {2622"name": "constant.numeric.exponent.decimal.cpp",2623"patterns": [2624{2625"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",2626"name": "punctuation.separator.constant.numeric.cpp"2627}2628]2629},2630"7": {2631"name": "keyword.other.suffix.literal.built-in.integer.cpp keyword.other.unit.suffix.integer.cpp"2632}2633}2634},2635{2636"match": "(?:(?:[0-9a-zA-Z_\\.]|')|(?<=[eEpP])[+-])+",2637"name": "invalid.illegal.constant.numeric.cpp"2638}2639]2640}2641]2642}2643}2644},2645"decltype": {2646"begin": "((?<!\\w)decltype(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()",2647"end": "\\)",2648"beginCaptures": {2649"1": {2650"name": "keyword.operator.functionlike.cpp keyword.other.decltype.cpp storage.type.decltype.cpp"2651},2652"2": {2653"patterns": [2654{2655"include": "#inline_comment"2656}2657]2658},2659"3": {2660"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2661},2662"4": {2663"name": "comment.block.cpp"2664},2665"5": {2666"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2667},2668"6": {2669"name": "punctuation.section.arguments.begin.bracket.round.decltype.cpp"2670}2671},2672"endCaptures": {2673"0": {2674"name": "punctuation.section.arguments.end.bracket.round.decltype.cpp"2675}2676},2677"contentName": "meta.arguments.decltype",2678"patterns": [2679{2680"include": "#evaluation_context"2681}2682]2683},2684"decltype_specifier": {2685"begin": "((?<!\\w)decltype(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()",2686"end": "\\)",2687"beginCaptures": {2688"1": {2689"name": "keyword.operator.functionlike.cpp keyword.other.decltype.cpp storage.type.decltype.cpp"2690},2691"2": {2692"patterns": [2693{2694"include": "#inline_comment"2695}2696]2697},2698"3": {2699"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2700},2701"4": {2702"name": "comment.block.cpp"2703},2704"5": {2705"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2706},2707"6": {2708"name": "punctuation.section.arguments.begin.bracket.round.decltype.cpp"2709}2710},2711"endCaptures": {2712"0": {2713"name": "punctuation.section.arguments.end.bracket.round.decltype.cpp"2714}2715},2716"contentName": "meta.arguments.decltype",2717"patterns": [2718{2719"include": "#evaluation_context"2720}2721]2722},2723"default_statement": {2724"begin": "((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)default(?!\\w))",2725"end": ":",2726"beginCaptures": {2727"1": {2728"patterns": [2729{2730"include": "#inline_comment"2731}2732]2733},2734"2": {2735"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2736},2737"3": {2738"name": "comment.block.cpp"2739},2740"4": {2741"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2742},2743"5": {2744"name": "keyword.control.default.cpp"2745}2746},2747"endCaptures": {2748"0": {2749"name": "punctuation.separator.colon.case.default.cpp"2750}2751},2752"name": "meta.conditional.case.cpp",2753"patterns": [2754{2755"include": "#evaluation_context"2756}2757]2758},2759"destructor_inline": {2760"begin": "^((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?:__cdecl|__clrcall|__stdcall|__fastcall|__thiscall|__vectorcall)?)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?:(?:(?:constexpr)|(?:consteval)|(?:explicit)|(?:mutable)|(?:virtual)|(?:inline)|(?:friend))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*)(~(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)(?=\\())",2761"end": "(?:(?<=\\}|%>|\\?\\?>)|(?=[;>\\[\\]=]))",2762"beginCaptures": {2763"0": {2764"name": "meta.head.function.definition.special.member.destructor.cpp"2765},2766"1": {2767"patterns": [2768{2769"include": "#inline_comment"2770}2771]2772},2773"2": {2774"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2775},2776"3": {2777"name": "comment.block.cpp"2778},2779"4": {2780"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2781},2782"5": {2783"name": "storage.type.modifier.calling-convention.cpp"2784},2785"6": {2786"patterns": [2787{2788"include": "#inline_comment"2789}2790]2791},2792"7": {2793"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2794},2795"8": {2796"name": "comment.block.cpp"2797},2798"9": {2799"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2800},2801"10": {2802"patterns": [2803{2804"include": "#functional_specifiers_pre_parameters"2805}2806]2807},2808"11": {2809"patterns": [2810{2811"include": "#inline_comment"2812}2813]2814},2815"12": {2816"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2817},2818"13": {2819"name": "comment.block.cpp"2820},2821"14": {2822"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2823},2824"15": {2825"name": "entity.name.function.destructor.cpp entity.name.function.definition.special.member.destructor.cpp"2826}2827},2828"endCaptures": {},2829"name": "meta.function.definition.special.member.destructor.cpp",2830"patterns": [2831{2832"begin": "\\G ?",2833"end": "(?:\\{|<%|\\?\\?<|(?=;))",2834"beginCaptures": {},2835"endCaptures": {2836"0": {2837"name": "punctuation.section.block.begin.bracket.curly.function.definition.special.member.destructor.cpp"2838}2839},2840"name": "meta.head.function.definition.special.member.destructor.cpp",2841"patterns": [2842{2843"include": "#ever_present_context"2844},2845{2846"match": "(\\=)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(default)|(delete))",2847"captures": {2848"1": {2849"name": "keyword.operator.assignment.cpp"2850},2851"2": {2852"patterns": [2853{2854"include": "#inline_comment"2855}2856]2857},2858"3": {2859"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2860},2861"4": {2862"name": "comment.block.cpp"2863},2864"5": {2865"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2866},2867"6": {2868"name": "keyword.other.default.function.cpp keyword.other.default.constructor.cpp keyword.other.default.destructor.cpp"2869},2870"7": {2871"name": "keyword.other.delete.function.cpp keyword.other.delete.constructor.cpp keyword.other.delete.destructor.cpp"2872}2873}2874},2875{2876"begin": "\\(",2877"end": "\\)",2878"beginCaptures": {2879"0": {2880"name": "punctuation.section.parameters.begin.bracket.round.special.member.destructor.cpp"2881}2882},2883"endCaptures": {2884"0": {2885"name": "punctuation.section.parameters.end.bracket.round.special.member.destructor.cpp"2886}2887},2888"contentName": "meta.function.definition.parameters.special.member.destructor",2889"patterns": []2890},2891{2892"include": "#qualifiers_and_specifiers_post_parameters"2893},2894{2895"include": "$self"2896}2897]2898},2899{2900"begin": "(?<=\\{|<%|\\?\\?<)",2901"end": "\\}|%>|\\?\\?>",2902"beginCaptures": {},2903"endCaptures": {2904"0": {2905"name": "punctuation.section.block.end.bracket.curly.function.definition.special.member.destructor.cpp"2906}2907},2908"name": "meta.body.function.definition.special.member.destructor.cpp",2909"patterns": [2910{2911"include": "#function_body_context"2912}2913]2914},2915{2916"begin": "(?<=\\}|%>|\\?\\?>)[\\s]*",2917"end": "[\\s]*(?=;)",2918"beginCaptures": {},2919"endCaptures": {},2920"name": "meta.tail.function.definition.special.member.destructor.cpp",2921"patterns": [2922{2923"include": "$self"2924}2925]2926}2927]2928},2929"destructor_root": {2930"begin": "((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?:__cdecl|__clrcall|__stdcall|__fastcall|__thiscall|__vectorcall)?)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?:::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<12>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*+)(((?>(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))::((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))~(?:\\14)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?=\\())",2931"end": "(?:(?<=\\}|%>|\\?\\?>)|(?=[;>\\[\\]=]))",2932"beginCaptures": {2933"0": {2934"name": "meta.head.function.definition.special.member.destructor.cpp"2935},2936"1": {2937"patterns": [2938{2939"include": "#inline_comment"2940}2941]2942},2943"2": {2944"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2945},2946"3": {2947"name": "comment.block.cpp"2948},2949"4": {2950"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2951},2952"5": {2953"name": "storage.type.modifier.calling-convention.cpp"2954},2955"6": {2956"patterns": [2957{2958"include": "#inline_comment"2959}2960]2961},2962"7": {2963"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2964},2965"8": {2966"name": "comment.block.cpp"2967},2968"9": {2969"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2970},2971"10": {2972"patterns": [2973{2974"match": "::",2975"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.destructor.cpp"2976},2977{2978"match": "(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)",2979"name": "entity.name.scope-resolution.destructor.cpp"2980},2981{2982"include": "#template_call_range"2983}2984]2985},2986"11": {2987"patterns": [2988{2989"include": "#template_call_range"2990}2991]2992},2993"12": {},2994"13": {2995"patterns": [2996{2997"match": "(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?=:)",2998"name": "entity.name.type.destructor.cpp"2999},3000{3001"match": "(?<=:)~(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*",3002"name": "entity.name.function.definition.special.member.destructor.cpp"3003},3004{3005"match": "::",3006"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.destructor.cpp"3007}3008]3009},3010"14": {},3011"15": {3012"patterns": [3013{3014"include": "#inline_comment"3015}3016]3017},3018"16": {3019"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"3020},3021"17": {3022"name": "comment.block.cpp"3023},3024"18": {3025"name": "comment.block.cpp punctuation.definition.comment.end.cpp"3026},3027"19": {3028"patterns": [3029{3030"include": "#inline_comment"3031}3032]3033},3034"20": {3035"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"3036},3037"21": {3038"name": "comment.block.cpp"3039},3040"22": {3041"name": "comment.block.cpp punctuation.definition.comment.end.cpp"3042},3043"23": {3044"patterns": [3045{3046"include": "#inline_comment"3047}3048]3049},3050"24": {3051"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"3052},3053"25": {3054"name": "comment.block.cpp"3055},3056"26": {3057"name": "comment.block.cpp punctuation.definition.comment.end.cpp"3058}3059},3060"endCaptures": {},3061"name": "meta.function.definition.special.member.destructor.cpp",3062"patterns": [3063{3064"begin": "\\G ?",3065"end": "(?:\\{|<%|\\?\\?<|(?=;))",3066"beginCaptures": {},3067"endCaptures": {3068"0": {3069"name": "punctuation.section.block.begin.bracket.curly.function.definition.special.member.destructor.cpp"3070}3071},3072"name": "meta.head.function.definition.special.member.destructor.cpp",3073"patterns": [3074{3075"include": "#ever_present_context"3076},3077{3078"match": "(\\=)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(default)|(delete))",3079"captures": {3080"1": {3081"name": "keyword.operator.assignment.cpp"3082},3083"2": {3084"patterns": [3085{3086"include": "#inline_comment"3087}3088]3089},3090"3": {3091"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"3092},3093"4": {3094"name": "comment.block.cpp"3095},3096"5": {3097"name": "comment.block.cpp punctuation.definition.comment.end.cpp"3098},3099"6": {3100"name": "keyword.other.default.function.cpp keyword.other.default.constructor.cpp keyword.other.default.destructor.cpp"3101},3102"7": {3103"name": "keyword.other.delete.function.cpp keyword.other.delete.constructor.cpp keyword.other.delete.destructor.cpp"3104}3105}3106},3107{3108"begin": "\\(",3109"end": "\\)",3110"beginCaptures": {3111"0": {3112"name": "punctuation.section.parameters.begin.bracket.round.special.member.destructor.cpp"3113}3114},3115"endCaptures": {3116"0": {3117"name": "punctuation.section.parameters.end.bracket.round.special.member.destructor.cpp"3118}3119},3120"contentName": "meta.function.definition.parameters.special.member.destructor",3121"patterns": []3122},3123{3124"include": "#qualifiers_and_specifiers_post_parameters"3125},3126{3127"include": "$self"3128}3129]3130},3131{3132"begin": "(?<=\\{|<%|\\?\\?<)",3133"end": "\\}|%>|\\?\\?>",3134"beginCaptures": {},3135"endCaptures": {3136"0": {3137"name": "punctuation.section.block.end.bracket.curly.function.definition.special.member.destructor.cpp"3138}3139},3140"name": "meta.body.function.definition.special.member.destructor.cpp",3141"patterns": [3142{3143"include": "#function_body_context"3144}3145]3146},3147{3148"begin": "(?<=\\}|%>|\\?\\?>)[\\s]*",3149"end": "[\\s]*(?=;)",3150"beginCaptures": {},3151"endCaptures": {},3152"name": "meta.tail.function.definition.special.member.destructor.cpp",3153"patterns": [3154{3155"include": "$self"3156}3157]3158}3159]3160},3161"diagnostic": {3162"begin": "(^((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(#)(?:\\s+)?((?:error|warning)))\\b(?:\\s+)?",3163"end": "(?<!\\\\)(?:(?=\\n)|(?<=^\\n|[^\\\\]\\n)(?=$))",3164"beginCaptures": {3165"1": {3166"name": "keyword.control.directive.diagnostic.$7.cpp"3167},3168"2": {3169"patterns": [3170{3171"include": "#inline_comment"3172}3173]3174},3175"3": {3176"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"3177},3178"4": {3179"name": "comment.block.cpp"3180},3181"5": {3182"name": "comment.block.cpp punctuation.definition.comment.end.cpp"3183},3184"6": {3185"name": "punctuation.definition.directive.cpp"3186},3187"7": {}3188},3189"endCaptures": {},3190"name": "meta.preprocessor.diagnostic.$reference(directive).cpp",3191"patterns": [3192{3193"include": "#comments"3194},3195{3196"begin": "\"",3197"end": "(?:(\")|(?<!\\\\)(?:(?=\\n)|(?<=^\\n|[^\\\\]\\n)(?=$)))",3198"beginCaptures": {3199"0": {3200"name": "punctuation.definition.string.begin.cpp"3201}3202},3203"endCaptures": {3204"1": {3205"name": "punctuation.definition.string.end.cpp"3206}3207},3208"name": "string.quoted.double.cpp",3209"patterns": [3210{3211"include": "#line_continuation_character"3212}3213]3214},3215{3216"begin": "'",3217"end": "(?:(')|(?<!\\\\)(?:(?=\\n)|(?<=^\\n|[^\\\\]\\n)(?=$)))",3218"beginCaptures": {3219"0": {3220"name": "punctuation.definition.string.begin.cpp"3221}3222},3223"endCaptures": {3224"1": {3225"name": "punctuation.definition.string.end.cpp"3226}3227},3228"name": "string.quoted.single.cpp",3229"patterns": [3230{3231"include": "#line_continuation_character"3232}3233]3234},3235{3236"begin": "[^'\"]",3237"end": "(?<!\\\\)(?:(?=\\n)|(?<=^\\n|[^\\\\]\\n)(?=$))",3238"beginCaptures": {},3239"endCaptures": {},3240"name": "string.unquoted.cpp",3241"patterns": [3242{3243"include": "#line_continuation_character"3244},3245{3246"include": "#comments"3247}3248]3249}3250]3251},3252"emacs_file_banner": {3253"match": "(?:(^(?:\\s+)?((\\/\\/)(?:\\s+)?((?:[#;\\/=*C~]+)++(?![#;\\/=*C~]))(?:\\s+)?.+(?:\\s+)?(?:\\4)(?:\\s+)?(?:\\n|$)))|(^(?:\\s+)?((\\/\\*)(?:\\s+)?((?:[#;\\/=*C~]+)++(?![#;\\/=*C~]))(?:\\s+)?.+(?:\\s+)?(?:\\8)(?:\\s+)?\\*\\/)))",3254"captures": {3255"1": {3256"name": "meta.toc-list.banner.double-slash.cpp"3257},3258"2": {3259"name": "comment.line.double-slash.cpp"3260},3261"3": {3262"name": "punctuation.definition.comment.cpp"3263},3264"4": {3265"name": "meta.banner.character.cpp"3266},3267"5": {3268"name": "meta.toc-list.banner.block.cpp"3269},3270"6": {3271"name": "comment.line.banner.cpp"3272},3273"7": {3274"name": "punctuation.definition.comment.cpp"3275},3276"8": {3277"name": "meta.banner.character.cpp"3278}3279}3280},3281"empty_square_brackets": {3282"name": "storage.modifier.array.bracket.square",3283"match": "(?<!delete)\\[(?:\\s+)?\\]"3284},3285"enum_block": {3286"begin": "((?<!\\w)enum(?!\\w))(?:\\s+(class|struct))?(?:(?:\\s+|((?:(?:(?:\\[\\[.*?\\]\\]|__attribute(?:__)?\\s*\\(\\s*\\(.*?\\)\\s*\\))|__declspec\\(.*?\\))|alignas\\(.*?\\))(?!\\))))|(?={))(?:\\s+)?((?:(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))?)(?:(?:\\s+)?(:)(?:\\s+)?(?:((::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<12>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*\\s*+)((?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))\\s*+(((?<!<)<(?!<)(?:(?:(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/)))|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<12>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?(::))?(?:\\s+)?((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)))?",3287"end": "(?:(?:(?<=\\}|%>|\\?\\?>)(?:\\s+)?(;)|(;))|(?=[;>\\[\\]=]))",3288"beginCaptures": {3289"0": {3290"name": "meta.head.enum.cpp"3291},3292"1": {3293"name": "storage.type.enum.cpp"3294},3295"2": {3296"name": "storage.type.enum.enum-key.$2.cpp"3297},3298"3": {3299"patterns": [3300{3301"include": "#attributes_context"3302},3303{3304"include": "#number_literal"3305}3306]3307},3308"4": {3309"name": "entity.name.type.enum.cpp"3310},3311"5": {3312"name": "punctuation.separator.colon.type-specifier.cpp"3313},3314"6": {3315"patterns": [3316{3317"include": "#scope_resolution_inner_generated"3318}3319]3320},3321"7": {3322"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"3323},3324"8": {3325"patterns": [3326{3327"include": "#template_call_range"3328}3329]3330},3331"9": {},3332"10": {3333"name": "entity.name.scope-resolution.cpp"3334},3335"11": {3336"name": "meta.template.call.cpp",3337"patterns": [3338{3339"include": "#template_call_range"3340}3341]3342},3343"12": {},3344"13": {3345"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"3346},3347"14": {3348"name": "comment.block.cpp"3349},3350"15": {3351"name": "comment.block.cpp punctuation.definition.comment.end.cpp"3352},3353"16": {3354"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"3355},3356"17": {3357"name": "storage.type.integral.$17.cpp"3358}3359},3360"endCaptures": {3361"1": {3362"name": "punctuation.terminator.statement.cpp"3363},3364"2": {3365"name": "punctuation.terminator.statement.cpp"3366}3367},3368"name": "meta.block.enum.cpp",3369"patterns": [3370{3371"begin": "\\G ?",3372"end": "(?:\\{|<%|\\?\\?<|(?=;))",3373"beginCaptures": {},3374"endCaptures": {3375"0": {3376"name": "punctuation.section.block.begin.bracket.curly.enum.cpp"3377}3378},3379"name": "meta.head.enum.cpp",3380"patterns": [3381{3382"include": "$self"3383}3384]3385},3386{3387"begin": "(?<=\\{|<%|\\?\\?<)",3388"end": "\\}|%>|\\?\\?>",3389"beginCaptures": {},3390"endCaptures": {3391"0": {3392"name": "punctuation.section.block.end.bracket.curly.enum.cpp"3393}3394},3395"name": "meta.body.enum.cpp",3396"patterns": [3397{3398"include": "#ever_present_context"3399},3400{3401"include": "#enumerator_list"3402},3403{3404"include": "#comments"3405},3406{3407"include": "#comma"3408},3409{3410"include": "#semicolon"3411}3412]3413},3414{3415"begin": "(?<=\\}|%>|\\?\\?>)[\\s]*",3416"end": "[\\s]*(?=;)",3417"beginCaptures": {},3418"endCaptures": {},3419"name": "meta.tail.enum.cpp",3420"patterns": [3421{3422"include": "$self"3423}3424]3425}3426]3427},3428"enum_declare": {3429"match": "((?<!\\w)enum(?!\\w))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))(((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))?(?:(?:&|\\*)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:&|\\*))?((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))\\b(?!override\\W|override\\$|final\\W|final\\$)((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?=\\S)(?![:{a-zA-Z])",3430"captures": {3431"1": {3432"name": "storage.type.enum.declare.cpp"3433},3434"2": {3435"patterns": [3436{3437"include": "#inline_comment"3438}3439]3440},3441"3": {3442"patterns": [3443{3444"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",3445"captures": {3446"1": {3447"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"3448},3449"2": {3450"name": "comment.block.cpp"3451},3452"3": {3453"name": "comment.block.cpp punctuation.definition.comment.end.cpp"3454}3455}3456}3457]3458},3459"4": {3460"name": "entity.name.type.enum.cpp"3461},3462"5": {3463"patterns": [3464{3465"match": "\\*",3466"name": "storage.modifier.pointer.cpp"3467},3468{3469"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",3470"captures": {3471"1": {3472"patterns": [3473{3474"include": "#inline_comment"3475}3476]3477},3478"2": {3479"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"3480},3481"3": {3482"name": "comment.block.cpp"3483},3484"4": {3485"name": "comment.block.cpp punctuation.definition.comment.end.cpp"3486}3487},3488"name": "invalid.illegal.reference-type.cpp"3489},3490{3491"match": "\\&",3492"name": "storage.modifier.reference.cpp"3493}3494]3495},3496"6": {3497"patterns": [3498{3499"include": "#inline_comment"3500}3501]3502},3503"7": {3504"patterns": [3505{3506"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",3507"captures": {3508"1": {3509"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"3510},3511"2": {3512"name": "comment.block.cpp"3513},3514"3": {3515"name": "comment.block.cpp punctuation.definition.comment.end.cpp"3516}3517}3518}3519]3520},3521"8": {3522"patterns": [3523{3524"include": "#inline_comment"3525}3526]3527},3528"9": {3529"patterns": [3530{3531"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",3532"captures": {3533"1": {3534"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"3535},3536"2": {3537"name": "comment.block.cpp"3538},3539"3": {3540"name": "comment.block.cpp punctuation.definition.comment.end.cpp"3541}3542}3543}3544]3545},3546"10": {3547"patterns": [3548{3549"include": "#inline_comment"3550}3551]3552},3553"11": {3554"patterns": [3555{3556"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",3557"captures": {3558"1": {3559"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"3560},3561"2": {3562"name": "comment.block.cpp"3563},3564"3": {3565"name": "comment.block.cpp punctuation.definition.comment.end.cpp"3566}3567}3568}3569]3570},3571"12": {3572"name": "variable.other.object.declare.cpp"3573},3574"13": {3575"patterns": [3576{3577"include": "#inline_comment"3578}3579]3580},3581"14": {3582"patterns": [3583{3584"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",3585"captures": {3586"1": {3587"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"3588},3589"2": {3590"name": "comment.block.cpp"3591},3592"3": {3593"name": "comment.block.cpp punctuation.definition.comment.end.cpp"3594}3595}3596}3597]3598}3599}3600},3601"enumerator_list": {3602"match": "((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))(?:\\s+)?((?:(?:(?:\\[\\[.*?\\]\\]|__attribute(?:__)?\\s*\\(\\s*\\(.*?\\)\\s*\\))|__declspec\\(.*?\\))|alignas\\(.*?\\))(?!\\)))?(?:\\s+)?(?:(\\=)(?:\\s+)?(.+?)(?:\\s+)?)?(?:(?:((?:[,;](?!')|\\n))|(?=\\}[^']))|(?=(?:\\/\\/|\\/\\*)))",3603"captures": {3604"1": {3605"name": "variable.other.enummember.cpp"3606},3607"2": {3608"patterns": [3609{3610"include": "#attributes_context"3611},3612{3613"include": "#number_literal"3614}3615]3616},3617"3": {3618"name": "keyword.operator.assignment.cpp"3619},3620"4": {3621"patterns": [3622{3623"include": "#evaluation_context"3624}3625]3626},3627"5": {3628"patterns": [3629{3630"include": "#comma"3631},3632{3633"include": "#semicolon"3634}3635]3636}3637},3638"name": "meta.enum.definition.cpp"3639},3640"evaluation_context": {3641"patterns": [3642{3643"include": "#ever_present_context"3644},3645{3646"include": "#string_context"3647},3648{3649"include": "#number_literal"3650},3651{3652"include": "#method_access"3653},3654{3655"include": "#member_access"3656},3657{3658"include": "#predefined_macros"3659},3660{3661"include": "#operators"3662},3663{3664"include": "#memory_operators"3665},3666{3667"include": "#wordlike_operators"3668},3669{3670"include": "#type_casting_operators"3671},3672{3673"include": "#control_flow_keywords"3674},3675{3676"include": "#exception_keywords"3677},3678{3679"include": "#the_this_keyword"3680},3681{3682"include": "#language_constants"3683},3684{3685"include": "#builtin_storage_type_initilizer"3686},3687{3688"include": "#qualifiers_and_specifiers_post_parameters"3689},3690{3691"include": "#functional_specifiers_pre_parameters"3692},3693{3694"include": "#storage_types"3695},3696{3697"include": "#lambdas"3698},3699{3700"include": "#attributes_context"3701},3702{3703"include": "#parentheses"3704},3705{3706"include": "#function_call"3707},3708{3709"include": "#scope_resolution_inner_generated"3710},3711{3712"include": "#square_brackets"3713},3714{3715"include": "#semicolon"3716},3717{3718"include": "#comma"3719}3720]3721},3722"ever_present_context": {3723"patterns": [3724{3725"include": "#pragma_mark"3726},3727{3728"include": "#pragma"3729},3730{3731"include": "#include"3732},3733{3734"include": "#line"3735},3736{3737"include": "#diagnostic"3738},3739{3740"include": "#undef"3741},3742{3743"include": "#preprocessor_conditional_range"3744},3745{3746"include": "#single_line_macro"3747},3748{3749"include": "#macro"3750},3751{3752"include": "#preprocessor_conditional_standalone"3753},3754{3755"include": "#macro_argument"3756},3757{3758"include": "#comments"3759},3760{3761"include": "#line_continuation_character"3762}3763]3764},3765"exception_keywords": {3766"match": "((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:(?:throw)|(?:catch)|(?:try))(?!\\w))",3767"captures": {3768"1": {3769"patterns": [3770{3771"include": "#inline_comment"3772}3773]3774},3775"2": {3776"patterns": [3777{3778"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",3779"captures": {3780"1": {3781"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"3782},3783"2": {3784"name": "comment.block.cpp"3785},3786"3": {3787"name": "comment.block.cpp punctuation.definition.comment.end.cpp"3788}3789}3790}3791]3792},3793"3": {3794"name": "keyword.control.exception.$3.cpp"3795}3796}3797},3798"extern_block": {3799"begin": "((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(extern)(?=\\s*\\\")",3800"end": "(?:(?:(?<=\\}|%>|\\?\\?>)(?:\\s+)?(;)|(;))|(?=[;>\\[\\]=]))",3801"beginCaptures": {3802"0": {3803"name": "meta.head.extern.cpp"3804},3805"1": {3806"patterns": [3807{3808"include": "#inline_comment"3809}3810]3811},3812"2": {3813"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"3814},3815"3": {3816"name": "comment.block.cpp"3817},3818"4": {3819"name": "comment.block.cpp punctuation.definition.comment.end.cpp"3820},3821"5": {3822"name": "storage.type.extern.cpp"3823}3824},3825"endCaptures": {3826"1": {3827"name": "punctuation.terminator.statement.cpp"3828},3829"2": {3830"name": "punctuation.terminator.statement.cpp"3831}3832},3833"name": "meta.block.extern.cpp",3834"patterns": [3835{3836"begin": "\\G ?",3837"end": "(?:\\{|<%|\\?\\?<|(?=;))",3838"beginCaptures": {},3839"endCaptures": {3840"0": {3841"name": "punctuation.section.block.begin.bracket.curly.extern.cpp"3842}3843},3844"name": "meta.head.extern.cpp",3845"patterns": [3846{3847"include": "$self"3848}3849]3850},3851{3852"begin": "(?<=\\{|<%|\\?\\?<)",3853"end": "\\}|%>|\\?\\?>",3854"beginCaptures": {},3855"endCaptures": {3856"0": {3857"name": "punctuation.section.block.end.bracket.curly.extern.cpp"3858}3859},3860"name": "meta.body.extern.cpp",3861"patterns": [3862{3863"include": "$self"3864}3865]3866},3867{3868"begin": "(?<=\\}|%>|\\?\\?>)[\\s]*",3869"end": "[\\s]*(?=;)",3870"beginCaptures": {},3871"endCaptures": {},3872"name": "meta.tail.extern.cpp",3873"patterns": [3874{3875"include": "$self"3876}3877]3878},3879{3880"include": "$self"3881}3882]3883},3884"function_body_context": {3885"patterns": [3886{3887"include": "#ever_present_context"3888},3889{3890"include": "#using_namespace"3891},3892{3893"include": "#type_alias"3894},3895{3896"include": "#using_name"3897},3898{3899"include": "#namespace_alias"3900},3901{3902"include": "#typedef_class"3903},3904{3905"include": "#typedef_struct"3906},3907{3908"include": "#typedef_union"3909},3910{3911"include": "#misc_keywords"3912},3913{3914"include": "#standard_declares"3915},3916{3917"include": "#class_block"3918},3919{3920"include": "#struct_block"3921},3922{3923"include": "#union_block"3924},3925{3926"include": "#enum_block"3927},3928{3929"include": "#access_control_keywords"3930},3931{3932"include": "#block"3933},3934{3935"include": "#static_assert"3936},3937{3938"include": "#assembly"3939},3940{3941"include": "#function_pointer"3942},3943{3944"include": "#switch_statement"3945},3946{3947"include": "#goto_statement"3948},3949{3950"include": "#evaluation_context"3951},3952{3953"include": "#label"3954}3955]3956},3957"function_call": {3958"begin": "((::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<11>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*\\s*+)((?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*)\\b(?<!\\Wreinterpret_cast|^reinterpret_cast|\\Watomic_noexcept|^atomic_noexcept|\\Wuint_least16_t|^uint_least16_t|\\Wuint_least32_t|^uint_least32_t|\\Wuint_least64_t|^uint_least64_t|\\Watomic_cancel|^atomic_cancel|\\Watomic_commit|^atomic_commit|\\Wuint_least8_t|^uint_least8_t|\\Wuint_fast16_t|^uint_fast16_t|\\Wuint_fast32_t|^uint_fast32_t|\\Wint_least16_t|^int_least16_t|\\Wint_least32_t|^int_least32_t|\\Wint_least64_t|^int_least64_t|\\Wuint_fast64_t|^uint_fast64_t|\\Wthread_local|^thread_local|\\Wint_fast16_t|^int_fast16_t|\\Wint_fast32_t|^int_fast32_t|\\Wint_fast64_t|^int_fast64_t|\\Wsynchronized|^synchronized|\\Wuint_fast8_t|^uint_fast8_t|\\Wdynamic_cast|^dynamic_cast|\\Wint_least8_t|^int_least8_t|\\Wint_fast8_t|^int_fast8_t|\\Wstatic_cast|^static_cast|\\Wsuseconds_t|^suseconds_t|\\Wconst_cast|^const_cast|\\Wuseconds_t|^useconds_t|\\Wconstinit|^constinit|\\Wco_return|^co_return|\\Wuintmax_t|^uintmax_t|\\Wuintmax_t|^uintmax_t|\\Wuintmax_t|^uintmax_t|\\Wconstexpr|^constexpr|\\Wconsteval|^consteval|\\Wconstexpr|^constexpr|\\Wconstexpr|^constexpr|\\Wconsteval|^consteval|\\Wprotected|^protected|\\Wnamespace|^namespace|\\Wblksize_t|^blksize_t|\\Wco_return|^co_return|\\Win_addr_t|^in_addr_t|\\Win_port_t|^in_port_t|\\Wuintptr_t|^uintptr_t|\\Wtemplate|^template|\\Wnoexcept|^noexcept|\\Wnoexcept|^noexcept|\\Wcontinue|^continue|\\Wco_await|^co_await|\\Wco_yield|^co_yield|\\Wunsigned|^unsigned|\\Wu_quad_t|^u_quad_t|\\Wblkcnt_t|^blkcnt_t|\\Wuint16_t|^uint16_t|\\Wuint32_t|^uint32_t|\\Wuint64_t|^uint64_t|\\Wintptr_t|^intptr_t|\\Wintmax_t|^intmax_t|\\Wintmax_t|^intmax_t|\\Wvolatile|^volatile|\\Wregister|^register|\\Wrestrict|^restrict|\\Wexplicit|^explicit|\\Wvolatile|^volatile|\\Wnoexcept|^noexcept|\\Woperator|^operator|\\Wdecltype|^decltype|\\Wtypename|^typename|\\Wrequires|^requires|\\Wco_await|^co_await|\\Wco_yield|^co_yield|\\Wreflexpr|^reflexpr|\\Wswblk_t|^swblk_t|\\Wvirtual|^virtual|\\Wssize_t|^ssize_t|\\Wconcept|^concept|\\Wmutable|^mutable|\\Wfixpt_t|^fixpt_t|\\Wint16_t|^int16_t|\\Wint32_t|^int32_t|\\Wint64_t|^int64_t|\\Wuint8_t|^uint8_t|\\Wtypedef|^typedef|\\Wdaddr_t|^daddr_t|\\Wcaddr_t|^caddr_t|\\Wqaddr_t|^qaddr_t|\\Wdefault|^default|\\Wnlink_t|^nlink_t|\\Wsegsz_t|^segsz_t|\\Wu_short|^u_short|\\Wwchar_t|^wchar_t|\\Wprivate|^private|\\W__asm__|^__asm__|\\Walignas|^alignas|\\Walignof|^alignof|\\Wmutable|^mutable|\\Wnullptr|^nullptr|\\Wclock_t|^clock_t|\\Wmode_t|^mode_t|\\Wpublic|^public|\\Wsize_t|^size_t|\\Wdouble|^double|\\Wquad_t|^quad_t|\\Wstatic|^static|\\Wtime_t|^time_t|\\Wmodule|^module|\\Wimport|^import|\\Wexport|^export|\\Wextern|^extern|\\Winline|^inline|\\Wxor_eq|^xor_eq|\\Wand_eq|^and_eq|\\Wreturn|^return|\\Wfriend|^friend|\\Wnot_eq|^not_eq|\\Wsigned|^signed|\\Wstruct|^struct|\\Wint8_t|^int8_t|\\Wushort|^ushort|\\Wswitch|^switch|\\Wu_long|^u_long|\\Wtypeid|^typeid|\\Wu_char|^u_char|\\Wsizeof|^sizeof|\\Wbitand|^bitand|\\Wdelete|^delete|\\Wino_t|^ino_t|\\Wkey_t|^key_t|\\Wpid_t|^pid_t|\\Woff_t|^off_t|\\Wuid_t|^uid_t|\\Wshort|^short|\\Wbreak|^break|\\Wcatch|^catch|\\Wcompl|^compl|\\Wwhile|^while|\\Wfalse|^false|\\Wclass|^class|\\Wunion|^union|\\Wconst|^const|\\Wor_eq|^or_eq|\\Wconst|^const|\\Wthrow|^throw|\\Wbitor|^bitor|\\Wu_int|^u_int|\\Wusing|^using|\\Wdiv_t|^div_t|\\Wdev_t|^dev_t|\\Wgid_t|^gid_t|\\Wfloat|^float|\\Wlong|^long|\\Wgoto|^goto|\\Wuint|^uint|\\Wid_t|^id_t|\\Wcase|^case|\\Wauto|^auto|\\Wvoid|^void|\\Wenum|^enum|\\Wtrue|^true|\\Wchar|^char|\\Wid_t|^id_t|\\WNULL|^NULL|\\Wthis|^this|\\Wbool|^bool|\\Welse|^else|\\Wfor|^for|\\Wnew|^new|\\Wnot|^not|\\Wxor|^xor|\\Wand|^and|\\Wasm|^asm|\\Wint|^int|\\Wtry|^try|\\Wdo|^do|\\Wif|^if|\\Wor|^or)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(((?<!<)<(?!<)(?:(?:(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/)))|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<11>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?(\\()",3959"end": "\\)",3960"beginCaptures": {3961"1": {3962"patterns": [3963{3964"include": "#scope_resolution_function_call_inner_generated"3965}3966]3967},3968"2": {3969"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.call.cpp"3970},3971"3": {3972"patterns": [3973{3974"include": "#template_call_range"3975}3976]3977},3978"4": {},3979"5": {3980"name": "entity.name.function.call.cpp"3981},3982"6": {3983"patterns": [3984{3985"include": "#inline_comment"3986}3987]3988},3989"7": {3990"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"3991},3992"8": {3993"name": "comment.block.cpp"3994},3995"9": {3996"name": "comment.block.cpp punctuation.definition.comment.end.cpp"3997},3998"10": {3999"name": "meta.template.call.cpp",4000"patterns": [4001{4002"include": "#template_call_range"4003}4004]4005},4006"11": {},4007"12": {4008"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4009},4010"13": {4011"name": "comment.block.cpp"4012},4013"14": {4014"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4015},4016"15": {4017"name": "punctuation.section.arguments.begin.bracket.round.function.call.cpp"4018}4019},4020"endCaptures": {4021"0": {4022"name": "punctuation.section.arguments.end.bracket.round.function.call.cpp"4023}4024},4025"patterns": [4026{4027"include": "#evaluation_context"4028}4029]4030},4031"function_definition": {4032"begin": "(?:(?:^|\\G|(?<=;|\\}))|(?<=>|\\*\\/))\\s*+(?:((?<!\\w)template(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?((?:(?:(?:\\[\\[.*?\\]\\]|__attribute(?:__)?\\s*\\(\\s*\\(.*?\\)\\s*\\))|__declspec\\(.*?\\))|alignas\\(.*?\\))(?!\\)))?((?:((?<!\\w)(?:(?:(?:constexpr)|(?:consteval)|(?:explicit)|(?:mutable)|(?:virtual)|(?:inline)|(?:friend))|(?:(?:thread_local)|(?:volatile)|(?:register)|(?:restrict)|(?:static)|(?:extern)|(?:const)))(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*)(\\s*+((?:(?:(?:\\[\\[.*?\\]\\]|__attribute(?:__)?\\s*\\(\\s*\\(.*?\\)\\s*\\))|__declspec\\(.*?\\))|alignas\\(.*?\\))(?!\\)))?((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:((?:::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<52>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*+)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\b)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*\\b((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<52>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)?(?![\\w<:.]))(((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))?(?:(?:&|\\*)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:&|\\*))?((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?:__cdecl|__clrcall|__stdcall|__fastcall|__thiscall|__vectorcall)?)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<52>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*\\s*+)((?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*)\\b(?<!\\Wreinterpret_cast|^reinterpret_cast|\\Watomic_noexcept|^atomic_noexcept|\\Wuint_least16_t|^uint_least16_t|\\Wuint_least32_t|^uint_least32_t|\\Wuint_least64_t|^uint_least64_t|\\Watomic_cancel|^atomic_cancel|\\Watomic_commit|^atomic_commit|\\Wuint_least8_t|^uint_least8_t|\\Wuint_fast16_t|^uint_fast16_t|\\Wuint_fast32_t|^uint_fast32_t|\\Wint_least16_t|^int_least16_t|\\Wint_least32_t|^int_least32_t|\\Wint_least64_t|^int_least64_t|\\Wuint_fast64_t|^uint_fast64_t|\\Wthread_local|^thread_local|\\Wint_fast16_t|^int_fast16_t|\\Wint_fast32_t|^int_fast32_t|\\Wint_fast64_t|^int_fast64_t|\\Wsynchronized|^synchronized|\\Wuint_fast8_t|^uint_fast8_t|\\Wdynamic_cast|^dynamic_cast|\\Wint_least8_t|^int_least8_t|\\Wint_fast8_t|^int_fast8_t|\\Wstatic_cast|^static_cast|\\Wsuseconds_t|^suseconds_t|\\Wconst_cast|^const_cast|\\Wuseconds_t|^useconds_t|\\Wconstinit|^constinit|\\Wco_return|^co_return|\\Wuintmax_t|^uintmax_t|\\Wuintmax_t|^uintmax_t|\\Wuintmax_t|^uintmax_t|\\Wconstexpr|^constexpr|\\Wconsteval|^consteval|\\Wconstexpr|^constexpr|\\Wconstexpr|^constexpr|\\Wconsteval|^consteval|\\Wprotected|^protected|\\Wnamespace|^namespace|\\Wblksize_t|^blksize_t|\\Wco_return|^co_return|\\Win_addr_t|^in_addr_t|\\Win_port_t|^in_port_t|\\Wuintptr_t|^uintptr_t|\\Wtemplate|^template|\\Wnoexcept|^noexcept|\\Wnoexcept|^noexcept|\\Wcontinue|^continue|\\Wco_await|^co_await|\\Wco_yield|^co_yield|\\Wunsigned|^unsigned|\\Wu_quad_t|^u_quad_t|\\Wblkcnt_t|^blkcnt_t|\\Wuint16_t|^uint16_t|\\Wuint32_t|^uint32_t|\\Wuint64_t|^uint64_t|\\Wintptr_t|^intptr_t|\\Wintmax_t|^intmax_t|\\Wintmax_t|^intmax_t|\\Wvolatile|^volatile|\\Wregister|^register|\\Wrestrict|^restrict|\\Wexplicit|^explicit|\\Wvolatile|^volatile|\\Wnoexcept|^noexcept|\\Woperator|^operator|\\Wdecltype|^decltype|\\Wtypename|^typename|\\Wrequires|^requires|\\Wco_await|^co_await|\\Wco_yield|^co_yield|\\Wreflexpr|^reflexpr|\\Wswblk_t|^swblk_t|\\Wvirtual|^virtual|\\Wssize_t|^ssize_t|\\Wconcept|^concept|\\Wmutable|^mutable|\\Wfixpt_t|^fixpt_t|\\Wint16_t|^int16_t|\\Wint32_t|^int32_t|\\Wint64_t|^int64_t|\\Wuint8_t|^uint8_t|\\Wtypedef|^typedef|\\Wdaddr_t|^daddr_t|\\Wcaddr_t|^caddr_t|\\Wqaddr_t|^qaddr_t|\\Wdefault|^default|\\Wnlink_t|^nlink_t|\\Wsegsz_t|^segsz_t|\\Wu_short|^u_short|\\Wwchar_t|^wchar_t|\\Wprivate|^private|\\W__asm__|^__asm__|\\Walignas|^alignas|\\Walignof|^alignof|\\Wmutable|^mutable|\\Wnullptr|^nullptr|\\Wclock_t|^clock_t|\\Wmode_t|^mode_t|\\Wpublic|^public|\\Wsize_t|^size_t|\\Wdouble|^double|\\Wquad_t|^quad_t|\\Wstatic|^static|\\Wtime_t|^time_t|\\Wmodule|^module|\\Wimport|^import|\\Wexport|^export|\\Wextern|^extern|\\Winline|^inline|\\Wxor_eq|^xor_eq|\\Wand_eq|^and_eq|\\Wreturn|^return|\\Wfriend|^friend|\\Wnot_eq|^not_eq|\\Wsigned|^signed|\\Wstruct|^struct|\\Wint8_t|^int8_t|\\Wushort|^ushort|\\Wswitch|^switch|\\Wu_long|^u_long|\\Wtypeid|^typeid|\\Wu_char|^u_char|\\Wsizeof|^sizeof|\\Wbitand|^bitand|\\Wdelete|^delete|\\Wino_t|^ino_t|\\Wkey_t|^key_t|\\Wpid_t|^pid_t|\\Woff_t|^off_t|\\Wuid_t|^uid_t|\\Wshort|^short|\\Wbreak|^break|\\Wcatch|^catch|\\Wcompl|^compl|\\Wwhile|^while|\\Wfalse|^false|\\Wclass|^class|\\Wunion|^union|\\Wconst|^const|\\Wor_eq|^or_eq|\\Wconst|^const|\\Wthrow|^throw|\\Wbitor|^bitor|\\Wu_int|^u_int|\\Wusing|^using|\\Wdiv_t|^div_t|\\Wdev_t|^dev_t|\\Wgid_t|^gid_t|\\Wfloat|^float|\\Wlong|^long|\\Wgoto|^goto|\\Wuint|^uint|\\Wid_t|^id_t|\\Wcase|^case|\\Wauto|^auto|\\Wvoid|^void|\\Wenum|^enum|\\Wtrue|^true|\\Wchar|^char|\\Wid_t|^id_t|\\WNULL|^NULL|\\Wthis|^this|\\Wbool|^bool|\\Welse|^else|\\Wfor|^for|\\Wnew|^new|\\Wnot|^not|\\Wxor|^xor|\\Wand|^and|\\Wasm|^asm|\\Wint|^int|\\Wtry|^try|\\Wdo|^do|\\Wif|^if|\\Wor|^or)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?=\\()",4033"end": "(?:(?<=\\}|%>|\\?\\?>)|(?=[;>\\[\\]=]))",4034"beginCaptures": {4035"0": {4036"name": "meta.head.function.definition.cpp"4037},4038"1": {4039"name": "storage.type.template.cpp"4040},4041"2": {4042"patterns": [4043{4044"include": "#inline_comment"4045}4046]4047},4048"3": {4049"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4050},4051"4": {4052"name": "comment.block.cpp"4053},4054"5": {4055"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4056},4057"6": {4058"patterns": [4059{4060"include": "#attributes_context"4061},4062{4063"include": "#number_literal"4064}4065]4066},4067"7": {4068"patterns": [4069{4070"match": "((?<!\\w)(?:(?:(?:constexpr)|(?:consteval)|(?:explicit)|(?:mutable)|(?:virtual)|(?:inline)|(?:friend))|(?:(?:thread_local)|(?:volatile)|(?:register)|(?:restrict)|(?:static)|(?:extern)|(?:const)))(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))",4071"captures": {4072"1": {4073"name": "storage.modifier.$1.cpp"4074},4075"2": {4076"patterns": [4077{4078"include": "#inline_comment"4079}4080]4081},4082"3": {4083"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4084},4085"4": {4086"name": "comment.block.cpp"4087},4088"5": {4089"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4090}4091}4092}4093]4094},4095"8": {4096"name": "storage.modifier.$8.cpp"4097},4098"9": {4099"patterns": [4100{4101"include": "#inline_comment"4102}4103]4104},4105"10": {4106"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4107},4108"11": {4109"name": "comment.block.cpp"4110},4111"12": {4112"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4113},4114"13": {4115"name": "meta.qualified_type.cpp",4116"patterns": [4117{4118"match": "::",4119"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"4120},4121{4122"match": "(?<!\\w)(?:(?:struct)|(?:class)|(?:union)|(?:enum))(?!\\w)",4123"name": "storage.type.$0.cpp"4124},4125{4126"include": "#attributes_context"4127},4128{4129"include": "#storage_types"4130},4131{4132"include": "#number_literal"4133},4134{4135"include": "#string_context"4136},4137{4138"include": "#comma"4139},4140{4141"include": "#scope_resolution_inner_generated"4142},4143{4144"begin": "<",4145"end": ">",4146"beginCaptures": {4147"0": {4148"name": "punctuation.section.angle-brackets.begin.template.call.cpp"4149}4150},4151"endCaptures": {4152"0": {4153"name": "punctuation.section.angle-brackets.end.template.call.cpp"4154}4155},4156"name": "meta.template.call.cpp",4157"patterns": [4158{4159"include": "#template_call_context"4160}4161]4162},4163{4164"match": "(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*",4165"name": "entity.name.type.cpp"4166}4167]4168},4169"14": {4170"patterns": [4171{4172"include": "#attributes_context"4173},4174{4175"include": "#number_literal"4176}4177]4178},4179"15": {4180"patterns": [4181{4182"include": "#inline_comment"4183}4184]4185},4186"16": {4187"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4188},4189"17": {4190"name": "comment.block.cpp"4191},4192"18": {4193"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4194},4195"19": {4196"patterns": [4197{4198"include": "#inline_comment"4199}4200]4201},4202"20": {4203"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4204},4205"21": {4206"name": "comment.block.cpp"4207},4208"22": {4209"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4210},4211"23": {4212"patterns": [4213{4214"match": "::",4215"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"4216},4217{4218"match": "(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)",4219"name": "entity.name.scope-resolution.type.cpp"4220},4221{4222"include": "#template_call_range"4223}4224]4225},4226"24": {4227"patterns": [4228{4229"include": "#template_call_range"4230}4231]4232},4233"25": {},4234"26": {4235"patterns": [4236{4237"include": "#inline_comment"4238}4239]4240},4241"27": {4242"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4243},4244"28": {4245"name": "comment.block.cpp"4246},4247"29": {4248"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4249},4250"30": {},4251"31": {4252"patterns": [4253{4254"match": "\\*",4255"name": "storage.modifier.pointer.cpp"4256},4257{4258"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",4259"captures": {4260"1": {4261"patterns": [4262{4263"include": "#inline_comment"4264}4265]4266},4267"2": {4268"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4269},4270"3": {4271"name": "comment.block.cpp"4272},4273"4": {4274"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4275}4276},4277"name": "invalid.illegal.reference-type.cpp"4278},4279{4280"match": "\\&",4281"name": "storage.modifier.reference.cpp"4282}4283]4284},4285"32": {4286"patterns": [4287{4288"include": "#inline_comment"4289}4290]4291},4292"33": {4293"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4294},4295"34": {4296"name": "comment.block.cpp"4297},4298"35": {4299"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4300},4301"36": {4302"patterns": [4303{4304"include": "#inline_comment"4305}4306]4307},4308"37": {4309"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4310},4311"38": {4312"name": "comment.block.cpp"4313},4314"39": {4315"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4316},4317"40": {4318"patterns": [4319{4320"include": "#inline_comment"4321}4322]4323},4324"41": {4325"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4326},4327"42": {4328"name": "comment.block.cpp"4329},4330"43": {4331"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4332},4333"44": {4334"name": "storage.type.modifier.calling-convention.cpp"4335},4336"45": {4337"patterns": [4338{4339"include": "#inline_comment"4340}4341]4342},4343"46": {4344"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4345},4346"47": {4347"name": "comment.block.cpp"4348},4349"48": {4350"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4351},4352"49": {4353"patterns": [4354{4355"include": "#scope_resolution_function_definition_inner_generated"4356}4357]4358},4359"50": {4360"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.definition.cpp"4361},4362"51": {4363"patterns": [4364{4365"include": "#template_call_range"4366}4367]4368},4369"52": {},4370"53": {4371"name": "entity.name.function.definition.cpp"4372},4373"54": {4374"patterns": [4375{4376"include": "#inline_comment"4377}4378]4379},4380"55": {4381"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4382},4383"56": {4384"name": "comment.block.cpp"4385},4386"57": {4387"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4388}4389},4390"endCaptures": {},4391"name": "meta.function.definition.cpp",4392"patterns": [4393{4394"begin": "\\G ?",4395"end": "(?:\\{|<%|\\?\\?<|(?=;))",4396"beginCaptures": {},4397"endCaptures": {4398"0": {4399"name": "punctuation.section.block.begin.bracket.curly.function.definition.cpp"4400}4401},4402"name": "meta.head.function.definition.cpp",4403"patterns": [4404{4405"include": "#ever_present_context"4406},4407{4408"begin": "\\(",4409"end": "\\)",4410"beginCaptures": {4411"0": {4412"name": "punctuation.section.parameters.begin.bracket.round.cpp"4413}4414},4415"endCaptures": {4416"0": {4417"name": "punctuation.section.parameters.end.bracket.round.cpp"4418}4419},4420"contentName": "meta.function.definition.parameters",4421"patterns": [4422{4423"include": "#ever_present_context"4424},4425{4426"include": "#parameter_or_maybe_value"4427},4428{4429"include": "#comma"4430},4431{4432"include": "#evaluation_context"4433}4434]4435},4436{4437"match": "(?<=^|\\))(?:\\s+)?(->)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\s*+((?:(?:(?:\\[\\[.*?\\]\\]|__attribute(?:__)?\\s*\\(\\s*\\(.*?\\)\\s*\\))|__declspec\\(.*?\\))|alignas\\(.*?\\))(?!\\)))?((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:((?:::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<23>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*+)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\b)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*\\b((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<23>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)?(?![\\w<:.]))",4438"captures": {4439"1": {4440"name": "punctuation.definition.function.return-type.cpp"4441},4442"2": {4443"patterns": [4444{4445"include": "#inline_comment"4446}4447]4448},4449"3": {4450"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4451},4452"4": {4453"name": "comment.block.cpp"4454},4455"5": {4456"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4457},4458"6": {4459"name": "meta.qualified_type.cpp",4460"patterns": [4461{4462"match": "::",4463"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"4464},4465{4466"match": "(?<!\\w)(?:(?:struct)|(?:class)|(?:union)|(?:enum))(?!\\w)",4467"name": "storage.type.$0.cpp"4468},4469{4470"include": "#attributes_context"4471},4472{4473"include": "#storage_types"4474},4475{4476"include": "#number_literal"4477},4478{4479"include": "#string_context"4480},4481{4482"include": "#comma"4483},4484{4485"include": "#scope_resolution_inner_generated"4486},4487{4488"begin": "<",4489"end": ">",4490"beginCaptures": {4491"0": {4492"name": "punctuation.section.angle-brackets.begin.template.call.cpp"4493}4494},4495"endCaptures": {4496"0": {4497"name": "punctuation.section.angle-brackets.end.template.call.cpp"4498}4499},4500"name": "meta.template.call.cpp",4501"patterns": [4502{4503"include": "#template_call_context"4504}4505]4506},4507{4508"match": "(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*",4509"name": "entity.name.type.cpp"4510}4511]4512},4513"7": {4514"patterns": [4515{4516"include": "#attributes_context"4517},4518{4519"include": "#number_literal"4520}4521]4522},4523"8": {4524"patterns": [4525{4526"include": "#inline_comment"4527}4528]4529},4530"9": {4531"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4532},4533"10": {4534"name": "comment.block.cpp"4535},4536"11": {4537"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4538},4539"12": {4540"patterns": [4541{4542"include": "#inline_comment"4543}4544]4545},4546"13": {4547"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4548},4549"14": {4550"name": "comment.block.cpp"4551},4552"15": {4553"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4554},4555"16": {4556"patterns": [4557{4558"match": "::",4559"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"4560},4561{4562"match": "(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)",4563"name": "entity.name.scope-resolution.type.cpp"4564},4565{4566"include": "#template_call_range"4567}4568]4569},4570"17": {4571"patterns": [4572{4573"include": "#template_call_range"4574}4575]4576},4577"18": {},4578"19": {4579"patterns": [4580{4581"include": "#inline_comment"4582}4583]4584},4585"20": {4586"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4587},4588"21": {4589"name": "comment.block.cpp"4590},4591"22": {4592"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4593},4594"23": {}4595}4596},4597{4598"include": "$self"4599}4600]4601},4602{4603"begin": "(?<=\\{|<%|\\?\\?<)",4604"end": "\\}|%>|\\?\\?>",4605"beginCaptures": {},4606"endCaptures": {4607"0": {4608"name": "punctuation.section.block.end.bracket.curly.function.definition.cpp"4609}4610},4611"name": "meta.body.function.definition.cpp",4612"patterns": [4613{4614"include": "#function_body_context"4615}4616]4617},4618{4619"begin": "(?<=\\}|%>|\\?\\?>)[\\s]*",4620"end": "[\\s]*(?=;)",4621"beginCaptures": {},4622"endCaptures": {},4623"name": "meta.tail.function.definition.cpp",4624"patterns": [4625{4626"include": "$self"4627}4628]4629}4630]4631},4632"function_parameter_context": {4633"patterns": [4634{4635"include": "#ever_present_context"4636},4637{4638"include": "#parameter"4639},4640{4641"include": "#comma"4642}4643]4644},4645"function_pointer": {4646"begin": "(\\s*+((?:(?:(?:\\[\\[.*?\\]\\]|__attribute(?:__)?\\s*\\(\\s*\\(.*?\\)\\s*\\))|__declspec\\(.*?\\))|alignas\\(.*?\\))(?!\\)))?((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:((?:::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<18>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*+)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\b)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*\\b((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<18>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)?(?![\\w<:.]))(((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))?(?:(?:&|\\*)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:&|\\*))?((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()(\\*)(?:\\s+)?((?:(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*)?)(?:\\s+)?(?:(\\[)(\\w*)(\\])(?:\\s+)?)*(\\))(?:\\s+)?(\\()",4647"end": "(\\))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?=[{=,);>]|\\n)(?!\\()",4648"beginCaptures": {4649"1": {4650"name": "meta.qualified_type.cpp",4651"patterns": [4652{4653"match": "::",4654"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"4655},4656{4657"match": "(?<!\\w)(?:(?:struct)|(?:class)|(?:union)|(?:enum))(?!\\w)",4658"name": "storage.type.$0.cpp"4659},4660{4661"include": "#attributes_context"4662},4663{4664"include": "#storage_types"4665},4666{4667"include": "#number_literal"4668},4669{4670"include": "#string_context"4671},4672{4673"include": "#comma"4674},4675{4676"include": "#scope_resolution_inner_generated"4677},4678{4679"begin": "<",4680"end": ">",4681"beginCaptures": {4682"0": {4683"name": "punctuation.section.angle-brackets.begin.template.call.cpp"4684}4685},4686"endCaptures": {4687"0": {4688"name": "punctuation.section.angle-brackets.end.template.call.cpp"4689}4690},4691"name": "meta.template.call.cpp",4692"patterns": [4693{4694"include": "#template_call_context"4695}4696]4697},4698{4699"match": "(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*",4700"name": "entity.name.type.cpp"4701}4702]4703},4704"2": {4705"patterns": [4706{4707"include": "#attributes_context"4708},4709{4710"include": "#number_literal"4711}4712]4713},4714"3": {4715"patterns": [4716{4717"include": "#inline_comment"4718}4719]4720},4721"4": {4722"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4723},4724"5": {4725"name": "comment.block.cpp"4726},4727"6": {4728"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4729},4730"7": {4731"patterns": [4732{4733"include": "#inline_comment"4734}4735]4736},4737"8": {4738"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4739},4740"9": {4741"name": "comment.block.cpp"4742},4743"10": {4744"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4745},4746"11": {4747"patterns": [4748{4749"match": "::",4750"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"4751},4752{4753"match": "(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)",4754"name": "entity.name.scope-resolution.type.cpp"4755},4756{4757"include": "#template_call_range"4758}4759]4760},4761"12": {4762"patterns": [4763{4764"include": "#template_call_range"4765}4766]4767},4768"13": {},4769"14": {4770"patterns": [4771{4772"include": "#inline_comment"4773}4774]4775},4776"15": {4777"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4778},4779"16": {4780"name": "comment.block.cpp"4781},4782"17": {4783"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4784},4785"18": {},4786"19": {4787"patterns": [4788{4789"match": "\\*",4790"name": "storage.modifier.pointer.cpp"4791},4792{4793"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",4794"captures": {4795"1": {4796"patterns": [4797{4798"include": "#inline_comment"4799}4800]4801},4802"2": {4803"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4804},4805"3": {4806"name": "comment.block.cpp"4807},4808"4": {4809"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4810}4811},4812"name": "invalid.illegal.reference-type.cpp"4813},4814{4815"match": "\\&",4816"name": "storage.modifier.reference.cpp"4817}4818]4819},4820"20": {4821"patterns": [4822{4823"include": "#inline_comment"4824}4825]4826},4827"21": {4828"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4829},4830"22": {4831"name": "comment.block.cpp"4832},4833"23": {4834"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4835},4836"24": {4837"patterns": [4838{4839"include": "#inline_comment"4840}4841]4842},4843"25": {4844"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4845},4846"26": {4847"name": "comment.block.cpp"4848},4849"27": {4850"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4851},4852"28": {4853"patterns": [4854{4855"include": "#inline_comment"4856}4857]4858},4859"29": {4860"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4861},4862"30": {4863"name": "comment.block.cpp"4864},4865"31": {4866"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4867},4868"32": {4869"name": "punctuation.section.parens.begin.bracket.round.function.pointer.cpp"4870},4871"33": {4872"name": "punctuation.definition.function.pointer.dereference.cpp"4873},4874"34": {4875"name": "variable.other.definition.pointer.function.cpp"4876},4877"35": {4878"name": "punctuation.definition.begin.bracket.square.cpp"4879},4880"36": {4881"patterns": [4882{4883"include": "#evaluation_context"4884}4885]4886},4887"37": {4888"name": "punctuation.definition.end.bracket.square.cpp"4889},4890"38": {4891"name": "punctuation.section.parens.end.bracket.round.function.pointer.cpp"4892},4893"39": {4894"name": "punctuation.section.parameters.begin.bracket.round.function.pointer.cpp"4895}4896},4897"endCaptures": {4898"1": {4899"name": "punctuation.section.parameters.end.bracket.round.function.pointer.cpp"4900},4901"2": {4902"patterns": [4903{4904"include": "#inline_comment"4905}4906]4907},4908"3": {4909"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4910},4911"4": {4912"name": "comment.block.cpp"4913},4914"5": {4915"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4916}4917},4918"patterns": [4919{4920"include": "#function_parameter_context"4921}4922]4923},4924"function_pointer_parameter": {4925"begin": "(\\s*+((?:(?:(?:\\[\\[.*?\\]\\]|__attribute(?:__)?\\s*\\(\\s*\\(.*?\\)\\s*\\))|__declspec\\(.*?\\))|alignas\\(.*?\\))(?!\\)))?((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:((?:::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<18>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*+)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\b)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*\\b((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<18>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)?(?![\\w<:.]))(((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))?(?:(?:&|\\*)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:&|\\*))?((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()(\\*)(?:\\s+)?((?:(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*)?)(?:\\s+)?(?:(\\[)(\\w*)(\\])(?:\\s+)?)*(\\))(?:\\s+)?(\\()",4926"end": "(\\))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?=[{=,);>]|\\n)(?!\\()",4927"beginCaptures": {4928"1": {4929"name": "meta.qualified_type.cpp",4930"patterns": [4931{4932"match": "::",4933"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"4934},4935{4936"match": "(?<!\\w)(?:(?:struct)|(?:class)|(?:union)|(?:enum))(?!\\w)",4937"name": "storage.type.$0.cpp"4938},4939{4940"include": "#attributes_context"4941},4942{4943"include": "#storage_types"4944},4945{4946"include": "#number_literal"4947},4948{4949"include": "#string_context"4950},4951{4952"include": "#comma"4953},4954{4955"include": "#scope_resolution_inner_generated"4956},4957{4958"begin": "<",4959"end": ">",4960"beginCaptures": {4961"0": {4962"name": "punctuation.section.angle-brackets.begin.template.call.cpp"4963}4964},4965"endCaptures": {4966"0": {4967"name": "punctuation.section.angle-brackets.end.template.call.cpp"4968}4969},4970"name": "meta.template.call.cpp",4971"patterns": [4972{4973"include": "#template_call_context"4974}4975]4976},4977{4978"match": "(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*",4979"name": "entity.name.type.cpp"4980}4981]4982},4983"2": {4984"patterns": [4985{4986"include": "#attributes_context"4987},4988{4989"include": "#number_literal"4990}4991]4992},4993"3": {4994"patterns": [4995{4996"include": "#inline_comment"4997}4998]4999},5000"4": {5001"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5002},5003"5": {5004"name": "comment.block.cpp"5005},5006"6": {5007"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5008},5009"7": {5010"patterns": [5011{5012"include": "#inline_comment"5013}5014]5015},5016"8": {5017"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5018},5019"9": {5020"name": "comment.block.cpp"5021},5022"10": {5023"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5024},5025"11": {5026"patterns": [5027{5028"match": "::",5029"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"5030},5031{5032"match": "(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)",5033"name": "entity.name.scope-resolution.type.cpp"5034},5035{5036"include": "#template_call_range"5037}5038]5039},5040"12": {5041"patterns": [5042{5043"include": "#template_call_range"5044}5045]5046},5047"13": {},5048"14": {5049"patterns": [5050{5051"include": "#inline_comment"5052}5053]5054},5055"15": {5056"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5057},5058"16": {5059"name": "comment.block.cpp"5060},5061"17": {5062"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5063},5064"18": {},5065"19": {5066"patterns": [5067{5068"match": "\\*",5069"name": "storage.modifier.pointer.cpp"5070},5071{5072"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",5073"captures": {5074"1": {5075"patterns": [5076{5077"include": "#inline_comment"5078}5079]5080},5081"2": {5082"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5083},5084"3": {5085"name": "comment.block.cpp"5086},5087"4": {5088"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5089}5090},5091"name": "invalid.illegal.reference-type.cpp"5092},5093{5094"match": "\\&",5095"name": "storage.modifier.reference.cpp"5096}5097]5098},5099"20": {5100"patterns": [5101{5102"include": "#inline_comment"5103}5104]5105},5106"21": {5107"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5108},5109"22": {5110"name": "comment.block.cpp"5111},5112"23": {5113"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5114},5115"24": {5116"patterns": [5117{5118"include": "#inline_comment"5119}5120]5121},5122"25": {5123"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5124},5125"26": {5126"name": "comment.block.cpp"5127},5128"27": {5129"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5130},5131"28": {5132"patterns": [5133{5134"include": "#inline_comment"5135}5136]5137},5138"29": {5139"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5140},5141"30": {5142"name": "comment.block.cpp"5143},5144"31": {5145"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5146},5147"32": {5148"name": "punctuation.section.parens.begin.bracket.round.function.pointer.cpp"5149},5150"33": {5151"name": "punctuation.definition.function.pointer.dereference.cpp"5152},5153"34": {5154"name": "variable.parameter.pointer.function.cpp"5155},5156"35": {5157"name": "punctuation.definition.begin.bracket.square.cpp"5158},5159"36": {5160"patterns": [5161{5162"include": "#evaluation_context"5163}5164]5165},5166"37": {5167"name": "punctuation.definition.end.bracket.square.cpp"5168},5169"38": {5170"name": "punctuation.section.parens.end.bracket.round.function.pointer.cpp"5171},5172"39": {5173"name": "punctuation.section.parameters.begin.bracket.round.function.pointer.cpp"5174}5175},5176"endCaptures": {5177"1": {5178"name": "punctuation.section.parameters.end.bracket.round.function.pointer.cpp"5179},5180"2": {5181"patterns": [5182{5183"include": "#inline_comment"5184}5185]5186},5187"3": {5188"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5189},5190"4": {5191"name": "comment.block.cpp"5192},5193"5": {5194"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5195}5196},5197"patterns": [5198{5199"include": "#function_parameter_context"5200}5201]5202},5203"functional_specifiers_pre_parameters": {5204"match": "(?<!\\w)(?:(?:constexpr)|(?:consteval)|(?:explicit)|(?:mutable)|(?:virtual)|(?:inline)|(?:friend))(?!\\w)",5205"name": "storage.modifier.specifier.functional.pre-parameters.$0.cpp"5206},5207"gcc_attributes": {5208"begin": "__attribute(?:__)?\\s*\\(\\s*\\(",5209"end": "\\)\\s*\\)",5210"beginCaptures": {5211"0": {5212"name": "punctuation.section.attribute.begin.cpp"5213}5214},5215"endCaptures": {5216"0": {5217"name": "punctuation.section.attribute.end.cpp"5218}5219},5220"name": "support.other.attribute.cpp",5221"patterns": [5222{5223"include": "#attributes_context"5224},5225{5226"begin": "\\(",5227"end": "\\)",5228"beginCaptures": {},5229"endCaptures": {},5230"patterns": [5231{5232"include": "#attributes_context"5233},5234{5235"include": "#string_context"5236},5237{5238"include": "#ever_present_context"5239}5240]5241},5242{5243"match": "(using)\\s+((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))",5244"captures": {5245"1": {5246"name": "keyword.other.using.directive.cpp"5247},5248"2": {5249"name": "entity.name.namespace.cpp"5250}5251}5252},5253{5254"match": ",",5255"name": "punctuation.separator.attribute.cpp"5256},5257{5258"match": ":",5259"name": "punctuation.accessor.attribute.cpp"5260},5261{5262"match": "(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)(?=::)",5263"name": "entity.name.namespace.cpp"5264},5265{5266"match": "(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)",5267"name": "entity.other.attribute.$0.cpp"5268},5269{5270"include": "#number_literal"5271},5272{5273"include": "#ever_present_context"5274}5275]5276},5277"goto_statement": {5278"match": "((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)goto(?!\\w))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*)",5279"captures": {5280"1": {5281"patterns": [5282{5283"include": "#inline_comment"5284}5285]5286},5287"2": {5288"patterns": [5289{5290"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",5291"captures": {5292"1": {5293"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5294},5295"2": {5296"name": "comment.block.cpp"5297},5298"3": {5299"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5300}5301}5302}5303]5304},5305"3": {5306"name": "keyword.control.goto.cpp"5307},5308"4": {5309"patterns": [5310{5311"include": "#inline_comment"5312}5313]5314},5315"5": {5316"patterns": [5317{5318"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",5319"captures": {5320"1": {5321"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5322},5323"2": {5324"name": "comment.block.cpp"5325},5326"3": {5327"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5328}5329}5330}5331]5332},5333"6": {5334"name": "entity.name.label.call.cpp"5335}5336}5337},5338"identifier": {5339"match": "(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*"5340},5341"include": {5342"match": "^((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((#)(?:\\s+)?((?:include|include_next))\\b)(?:\\s+)?(?:(?:(?:((<)[^>]*(>?)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(?:\\n|$)|(?=\\/\\/)))|((\\\")[^\\\"]*(\\\"?)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(?:\\n|$)|(?=\\/\\/))))|(((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?:\\.(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*)*((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(?:\\n|$)|(?=(?:\\/\\/|;)))))|((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(?:\\n|$)|(?=(?:\\/\\/|;))))",5343"captures": {5344"1": {5345"patterns": [5346{5347"include": "#inline_comment"5348}5349]5350},5351"2": {5352"patterns": [5353{5354"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",5355"captures": {5356"1": {5357"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5358},5359"2": {5360"name": "comment.block.cpp"5361},5362"3": {5363"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5364}5365}5366}5367]5368},5369"3": {5370"name": "keyword.control.directive.$5.cpp"5371},5372"4": {5373"name": "punctuation.definition.directive.cpp"5374},5375"6": {5376"name": "string.quoted.other.lt-gt.include.cpp"5377},5378"7": {5379"name": "punctuation.definition.string.begin.cpp"5380},5381"8": {5382"name": "punctuation.definition.string.end.cpp"5383},5384"9": {5385"patterns": [5386{5387"include": "#inline_comment"5388}5389]5390},5391"10": {5392"patterns": [5393{5394"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",5395"captures": {5396"1": {5397"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5398},5399"2": {5400"name": "comment.block.cpp"5401},5402"3": {5403"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5404}5405}5406}5407]5408},5409"11": {5410"name": "string.quoted.double.include.cpp"5411},5412"12": {5413"name": "punctuation.definition.string.begin.cpp"5414},5415"13": {5416"name": "punctuation.definition.string.end.cpp"5417},5418"14": {5419"patterns": [5420{5421"include": "#inline_comment"5422}5423]5424},5425"15": {5426"patterns": [5427{5428"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",5429"captures": {5430"1": {5431"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5432},5433"2": {5434"name": "comment.block.cpp"5435},5436"3": {5437"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5438}5439}5440}5441]5442},5443"16": {5444"name": "entity.name.other.preprocessor.macro.include.cpp"5445},5446"17": {5447"patterns": [5448{5449"include": "#inline_comment"5450}5451]5452},5453"18": {5454"patterns": [5455{5456"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",5457"captures": {5458"1": {5459"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5460},5461"2": {5462"name": "comment.block.cpp"5463},5464"3": {5465"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5466}5467}5468}5469]5470},5471"19": {5472"patterns": [5473{5474"include": "#inline_comment"5475}5476]5477},5478"20": {5479"patterns": [5480{5481"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",5482"captures": {5483"1": {5484"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5485},5486"2": {5487"name": "comment.block.cpp"5488},5489"3": {5490"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5491}5492}5493}5494]5495},5496"21": {5497"patterns": [5498{5499"include": "#inline_comment"5500}5501]5502},5503"22": {5504"patterns": [5505{5506"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",5507"captures": {5508"1": {5509"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5510},5511"2": {5512"name": "comment.block.cpp"5513},5514"3": {5515"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5516}5517}5518}5519]5520}5521},5522"name": "meta.preprocessor.include.cpp"5523},5524"inheritance_context": {5525"patterns": [5526{5527"include": "#ever_present_context"5528},5529{5530"match": ",",5531"name": "punctuation.separator.delimiter.comma.inheritance.cpp"5532},5533{5534"match": "(?<!\\w)(?:(?:protected)|(?:private)|(?:public))(?!\\w)",5535"name": "storage.type.modifier.access.$0.cpp"5536},5537{5538"match": "(?<!\\w)virtual(?!\\w)",5539"name": "storage.type.modifier.virtual.cpp"5540},5541{5542"match": "(?<=protected|virtual|private|public|,|:)(?:\\s+)?(?!(?:(?:(?:protected)|(?:private)|(?:public))|virtual))(\\s*+((?:(?:(?:\\[\\[.*?\\]\\]|__attribute(?:__)?\\s*\\(\\s*\\(.*?\\)\\s*\\))|__declspec\\(.*?\\))|alignas\\(.*?\\))(?!\\)))?((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:((?:::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<12>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*+)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\b)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*\\b((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<12>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)?(?![\\w<:.]))",5543"captures": {5544"1": {5545"name": "meta.qualified_type.cpp",5546"patterns": [5547{5548"match": "::",5549"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"5550},5551{5552"match": "(?<!\\w)(?:(?:struct)|(?:class)|(?:union)|(?:enum))(?!\\w)",5553"name": "storage.type.$0.cpp"5554},5555{5556"include": "#attributes_context"5557},5558{5559"include": "#storage_types"5560},5561{5562"include": "#number_literal"5563},5564{5565"include": "#string_context"5566},5567{5568"include": "#comma"5569},5570{5571"include": "#scope_resolution_inner_generated"5572},5573{5574"begin": "<",5575"end": ">",5576"beginCaptures": {5577"0": {5578"name": "punctuation.section.angle-brackets.begin.template.call.cpp"5579}5580},5581"endCaptures": {5582"0": {5583"name": "punctuation.section.angle-brackets.end.template.call.cpp"5584}5585},5586"name": "meta.template.call.cpp",5587"patterns": [5588{5589"include": "#template_call_context"5590}5591]5592},5593{5594"match": "(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*",5595"name": "entity.name.type.cpp"5596}5597]5598},5599"2": {5600"patterns": [5601{5602"include": "#attributes_context"5603},5604{5605"include": "#number_literal"5606}5607]5608},5609"3": {5610"patterns": [5611{5612"include": "#inline_comment"5613}5614]5615},5616"4": {5617"patterns": [5618{5619"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",5620"captures": {5621"1": {5622"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5623},5624"2": {5625"name": "comment.block.cpp"5626},5627"3": {5628"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5629}5630}5631}5632]5633},5634"5": {5635"patterns": [5636{5637"include": "#inline_comment"5638}5639]5640},5641"6": {5642"patterns": [5643{5644"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",5645"captures": {5646"1": {5647"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5648},5649"2": {5650"name": "comment.block.cpp"5651},5652"3": {5653"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5654}5655}5656}5657]5658},5659"7": {5660"patterns": [5661{5662"match": "::",5663"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"5664},5665{5666"match": "(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)",5667"name": "entity.name.scope-resolution.type.cpp"5668},5669{5670"include": "#template_call_range"5671}5672]5673},5674"8": {5675"patterns": [5676{5677"include": "#template_call_range"5678}5679]5680},5681"9": {},5682"10": {5683"patterns": [5684{5685"include": "#inline_comment"5686}5687]5688},5689"11": {5690"patterns": [5691{5692"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",5693"captures": {5694"1": {5695"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5696},5697"2": {5698"name": "comment.block.cpp"5699},5700"3": {5701"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5702}5703}5704}5705]5706},5707"12": {}5708}5709}5710]5711},5712"inline_builtin_storage_type": {5713"match": "\\s*+(?<!\\w)(?:(?:(?:((?:(?:unsigned)|(?:wchar_t)|(?:double)|(?:signed)|(?:short)|(?:float)|(?:auto)|(?:void)|(?:long)|(?:char)|(?:bool)|(?:int)))|((?:(?:uint_least32_t)|(?:uint_least64_t)|(?:uint_least16_t)|(?:uint_fast64_t)|(?:uint_least8_t)|(?:int_least64_t)|(?:int_least32_t)|(?:int_least16_t)|(?:uint_fast16_t)|(?:uint_fast32_t)|(?:int_least8_t)|(?:int_fast16_t)|(?:int_fast32_t)|(?:int_fast64_t)|(?:uint_fast8_t)|(?:int_fast8_t)|(?:suseconds_t)|(?:useconds_t)|(?:uintmax_t)|(?:uintmax_t)|(?:in_port_t)|(?:uintmax_t)|(?:in_addr_t)|(?:blksize_t)|(?:uintptr_t)|(?:intmax_t)|(?:intptr_t)|(?:blkcnt_t)|(?:intmax_t)|(?:u_quad_t)|(?:uint16_t)|(?:uint32_t)|(?:uint64_t)|(?:ssize_t)|(?:fixpt_t)|(?:qaddr_t)|(?:u_short)|(?:int16_t)|(?:int32_t)|(?:int64_t)|(?:uint8_t)|(?:daddr_t)|(?:caddr_t)|(?:swblk_t)|(?:clock_t)|(?:segsz_t)|(?:nlink_t)|(?:time_t)|(?:u_long)|(?:ushort)|(?:quad_t)|(?:mode_t)|(?:size_t)|(?:u_char)|(?:int8_t)|(?:u_int)|(?:uid_t)|(?:off_t)|(?:pid_t)|(?:gid_t)|(?:dev_t)|(?:div_t)|(?:key_t)|(?:ino_t)|(?:id_t)|(?:id_t)|(?:uint))))|((?:(?:pthread_rwlockattr_t)|(?:pthread_mutexattr_t)|(?:pthread_condattr_t)|(?:pthread_rwlock_t)|(?:pthread_mutex_t)|(?:pthread_cond_t)|(?:pthread_attr_t)|(?:pthread_once_t)|(?:pthread_key_t)|(?:pthread_t))))|([a-zA-Z_]\\w*_t))(?!\\w)",5714"captures": {5715"1": {5716"name": "storage.type.primitive.cpp storage.type.built-in.primitive.cpp"5717},5718"2": {5719"name": "storage.type.cpp storage.type.built-in.cpp"5720},5721"3": {5722"name": "support.type.posix-reserved.pthread.cpp support.type.built-in.posix-reserved.pthread.cpp"5723},5724"4": {5725"name": "support.type.posix-reserved.cpp support.type.built-in.posix-reserved.cpp"5726}5727}5728},5729"inline_comment": {5730"match": "(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))",5731"captures": {5732"1": {5733"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5734},5735"2": {5736"name": "comment.block.cpp"5737},5738"3": {5739"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5740}5741}5742},5743"invalid_comment_end": {5744"match": "\\*\\/",5745"name": "invalid.illegal.unexpected.punctuation.definition.comment.end.cpp"5746},5747"label": {5748"match": "((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))\\b(?<!case|default)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(:)",5749"captures": {5750"1": {5751"patterns": [5752{5753"include": "#inline_comment"5754}5755]5756},5757"2": {5758"patterns": [5759{5760"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",5761"captures": {5762"1": {5763"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5764},5765"2": {5766"name": "comment.block.cpp"5767},5768"3": {5769"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5770}5771}5772}5773]5774},5775"3": {5776"name": "entity.name.label.cpp"5777},5778"4": {5779"patterns": [5780{5781"include": "#inline_comment"5782}5783]5784},5785"5": {5786"patterns": [5787{5788"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",5789"captures": {5790"1": {5791"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5792},5793"2": {5794"name": "comment.block.cpp"5795},5796"3": {5797"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5798}5799}5800}5801]5802},5803"6": {5804"name": "punctuation.separator.label.cpp"5805}5806}5807},5808"lambdas": {5809"begin": "(?:(?<=[^\\s]|^)(?<![\\w\\]\\)\\[\\*&\">])|(?<=\\Wreturn|^return))(?:\\s+)?(\\[(?!\\[| *+\"| *+\\d))((?:[^\\[\\]]|((?<!\\[)\\[(?!\\[)(?:[^\\[\\]]*+\\g<3>?)++\\]))*+)(\\](?!((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))[\\[\\];=]))",5810"end": "(?<=[;}])",5811"beginCaptures": {5812"1": {5813"name": "punctuation.definition.capture.begin.lambda.cpp"5814},5815"2": {5816"name": "meta.lambda.capture.cpp",5817"patterns": [5818{5819"include": "#the_this_keyword"5820},5821{5822"match": "((?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(?:(?=\\]|\\z|$)|(,))|(\\=))",5823"captures": {5824"1": {5825"name": "variable.parameter.capture.cpp"5826},5827"2": {5828"patterns": [5829{5830"include": "#inline_comment"5831}5832]5833},5834"3": {5835"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5836},5837"4": {5838"name": "comment.block.cpp"5839},5840"5": {5841"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5842},5843"6": {5844"name": "punctuation.separator.delimiter.comma.cpp"5845},5846"7": {5847"name": "keyword.operator.assignment.cpp"5848}5849}5850},5851{5852"include": "#evaluation_context"5853}5854]5855},5856"3": {},5857"4": {5858"name": "punctuation.definition.capture.end.lambda.cpp"5859},5860"5": {5861"patterns": [5862{5863"include": "#inline_comment"5864}5865]5866},5867"6": {5868"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5869},5870"7": {5871"name": "comment.block.cpp"5872},5873"8": {5874"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5875}5876},5877"endCaptures": {},5878"patterns": [5879{5880"begin": "\\(",5881"end": "\\)",5882"beginCaptures": {5883"0": {5884"name": "punctuation.definition.parameters.begin.lambda.cpp"5885}5886},5887"endCaptures": {5888"0": {5889"name": "punctuation.definition.parameters.end.lambda.cpp"5890}5891},5892"name": "meta.function.definition.parameters.lambda.cpp",5893"patterns": [5894{5895"include": "#function_parameter_context"5896}5897]5898},5899{5900"match": "(?<!\\w)(?:(?:constexpr)|(?:consteval)|(?:mutable))(?!\\w)",5901"name": "storage.modifier.lambda.$0.cpp"5902},5903{5904"begin": "->",5905"end": "(?=\\{)",5906"beginCaptures": {5907"0": {5908"name": "punctuation.definition.lambda.return-type.cpp"5909}5910},5911"endCaptures": {},5912"patterns": [5913{5914"include": "#comments"5915},5916{5917"match": "\\S+",5918"name": "storage.type.return-type.lambda.cpp"5919}5920]5921},5922{5923"begin": "\\{",5924"end": "\\}",5925"beginCaptures": {5926"0": {5927"name": "punctuation.section.block.begin.bracket.curly.lambda.cpp"5928}5929},5930"endCaptures": {5931"0": {5932"name": "punctuation.section.block.end.bracket.curly.lambda.cpp"5933}5934},5935"name": "meta.function.definition.body.lambda.cpp",5936"patterns": [5937{5938"include": "$self"5939}5940]5941}5942]5943},5944"language_constants": {5945"match": "(?<!\\w)(?:(?:nullptr)|(?:false)|(?:NULL)|(?:true))(?!\\w)",5946"name": "constant.language.$0.cpp"5947},5948"line": {5949"begin": "^((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(#)(?:\\s+)?line\\b",5950"end": "(?<!\\\\)(?:(?=\\n)|(?<=^\\n|[^\\\\]\\n)(?=$))",5951"beginCaptures": {5952"0": {5953"name": "keyword.control.directive.line.cpp"5954},5955"1": {5956"patterns": [5957{5958"include": "#inline_comment"5959}5960]5961},5962"2": {5963"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5964},5965"3": {5966"name": "comment.block.cpp"5967},5968"4": {5969"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5970},5971"5": {5972"name": "punctuation.definition.directive.cpp"5973}5974},5975"endCaptures": {},5976"name": "meta.preprocessor.line.cpp",5977"patterns": [5978{5979"include": "#string_context"5980},5981{5982"include": "#preprocessor_number_literal"5983},5984{5985"include": "#line_continuation_character"5986}5987]5988},5989"line_comment": {5990"begin": "\\s*+(\\/\\/)",5991"end": "(?<!\\\\)(?:(?=\\n)|(?<=^\\n|[^\\\\]\\n)(?=$))",5992"beginCaptures": {5993"1": {5994"name": "punctuation.definition.comment.cpp"5995}5996},5997"endCaptures": {},5998"name": "comment.line.double-slash.cpp",5999"patterns": [6000{6001"include": "#line_continuation_character"6002}6003]6004},6005"line_continuation_character": {6006"match": "\\\\\\n",6007"name": "constant.character.escape.line-continuation.cpp"6008},6009"macro": {6010"begin": "(^((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(#)(?:\\s+)?define\\b)(?:\\s+)?((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))",6011"end": "(?<!\\\\)(?:(?=\\n)|(?<=^\\n|[^\\\\]\\n)(?=$))",6012"beginCaptures": {6013"1": {6014"name": "keyword.control.directive.define.cpp"6015},6016"2": {6017"patterns": [6018{6019"include": "#inline_comment"6020}6021]6022},6023"3": {6024"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"6025},6026"4": {6027"name": "comment.block.cpp"6028},6029"5": {6030"name": "comment.block.cpp punctuation.definition.comment.end.cpp"6031},6032"6": {6033"name": "punctuation.definition.directive.cpp"6034},6035"7": {6036"name": "entity.name.function.preprocessor.cpp"6037}6038},6039"endCaptures": {},6040"name": "meta.preprocessor.macro.cpp",6041"patterns": [6042{6043"match": "\\G(?:\\s+)?(\\()([^\\(]*)(\\))",6044"captures": {6045"1": {6046"name": "punctuation.definition.parameters.begin.preprocessor.cpp"6047},6048"2": {6049"name": "meta.function.preprocessor.parameters.cpp",6050"patterns": [6051{6052"match": "(?<=[(,])(?:\\s+)?((?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*)(?:\\s+)?",6053"captures": {6054"1": {6055"name": "variable.parameter.preprocessor.cpp"6056}6057}6058},6059{6060"match": ",",6061"name": "punctuation.separator.parameters.cpp"6062},6063{6064"match": "\\.\\.\\.",6065"name": "punctuation.vararg-ellipses.variable.parameter.preprocessor.cpp"6066}6067]6068},6069"3": {6070"name": "punctuation.definition.parameters.end.preprocessor.cpp"6071}6072}6073},6074{6075"include": "#macro_context"6076},6077{6078"include": "#macro_argument"6079}6080]6081},6082"macro_argument": {6083"match": "##?(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)",6084"name": "variable.other.macro.argument.cpp"6085},6086"macro_context": {6087"patterns": [6088{6089"include": "source.cpp.embedded.macro"6090}6091]6092},6093"macro_name": {6094"match": "(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)",6095"name": "entity.name.function.preprocessor.cpp"6096},6097"member_access": {6098"match": "(?:((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)this(?!\\w))|((?:(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*|(?<=\\]|\\)))(?:\\s+)?))(?:((?:\\.\\*|\\.))|((?:->\\*|->)))((?:(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?:\\s+)?(?:(?:\\.\\*|\\.)|(?:->\\*|->))(?:\\s+)?)*)(?:\\s+)?(\\b(?!uint_least32_t[^\\w]|uint_least16_t[^\\w]|uint_least64_t[^\\w]|int_least32_t[^\\w]|int_least64_t[^\\w]|uint_fast32_t[^\\w]|uint_fast64_t[^\\w]|uint_least8_t[^\\w]|uint_fast16_t[^\\w]|int_least16_t[^\\w]|int_fast16_t[^\\w]|int_least8_t[^\\w]|uint_fast8_t[^\\w]|int_fast64_t[^\\w]|int_fast32_t[^\\w]|int_fast8_t[^\\w]|suseconds_t[^\\w]|useconds_t[^\\w]|in_addr_t[^\\w]|uintmax_t[^\\w]|uintmax_t[^\\w]|uintmax_t[^\\w]|in_port_t[^\\w]|uintptr_t[^\\w]|blksize_t[^\\w]|uint32_t[^\\w]|uint64_t[^\\w]|u_quad_t[^\\w]|intmax_t[^\\w]|intmax_t[^\\w]|unsigned[^\\w]|blkcnt_t[^\\w]|uint16_t[^\\w]|intptr_t[^\\w]|swblk_t[^\\w]|wchar_t[^\\w]|u_short[^\\w]|qaddr_t[^\\w]|caddr_t[^\\w]|daddr_t[^\\w]|fixpt_t[^\\w]|nlink_t[^\\w]|segsz_t[^\\w]|clock_t[^\\w]|ssize_t[^\\w]|int16_t[^\\w]|int32_t[^\\w]|int64_t[^\\w]|uint8_t[^\\w]|int8_t[^\\w]|mode_t[^\\w]|quad_t[^\\w]|ushort[^\\w]|u_long[^\\w]|u_char[^\\w]|double[^\\w]|signed[^\\w]|time_t[^\\w]|size_t[^\\w]|key_t[^\\w]|div_t[^\\w]|ino_t[^\\w]|uid_t[^\\w]|gid_t[^\\w]|off_t[^\\w]|pid_t[^\\w]|float[^\\w]|dev_t[^\\w]|u_int[^\\w]|short[^\\w]|bool[^\\w]|id_t[^\\w]|uint[^\\w]|long[^\\w]|char[^\\w]|void[^\\w]|auto[^\\w]|id_t[^\\w]|int[^\\w])(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*\\b(?!\\())",6099"captures": {6100"1": {6101"patterns": [6102{6103"include": "#inline_comment"6104}6105]6106},6107"2": {6108"patterns": [6109{6110"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",6111"captures": {6112"1": {6113"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"6114},6115"2": {6116"name": "comment.block.cpp"6117},6118"3": {6119"name": "comment.block.cpp punctuation.definition.comment.end.cpp"6120}6121}6122}6123]6124},6125"3": {6126"name": "variable.language.this.cpp"6127},6128"4": {6129"name": "variable.other.object.access.cpp"6130},6131"5": {6132"name": "punctuation.separator.dot-access.cpp"6133},6134"6": {6135"name": "punctuation.separator.pointer-access.cpp"6136},6137"7": {6138"patterns": [6139{6140"match": "(?<=(?:\\.\\*|\\.|->|->\\*))(?:\\s+)?(?:((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)this(?!\\w))|((?:(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*|(?<=\\]|\\)))(?:\\s+)?))(?:((?:\\.\\*|\\.))|((?:->\\*|->)))",6141"captures": {6142"1": {6143"patterns": [6144{6145"include": "#inline_comment"6146}6147]6148},6149"2": {6150"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"6151},6152"3": {6153"name": "comment.block.cpp"6154},6155"4": {6156"name": "comment.block.cpp punctuation.definition.comment.end.cpp"6157},6158"5": {6159"name": "variable.language.this.cpp"6160},6161"6": {6162"name": "variable.other.object.property.cpp"6163},6164"7": {6165"name": "punctuation.separator.dot-access.cpp"6166},6167"8": {6168"name": "punctuation.separator.pointer-access.cpp"6169}6170}6171},6172{6173"match": "(?:((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)this(?!\\w))|((?:(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*|(?<=\\]|\\)))(?:\\s+)?))(?:((?:\\.\\*|\\.))|((?:->\\*|->)))",6174"captures": {6175"1": {6176"patterns": [6177{6178"include": "#inline_comment"6179}6180]6181},6182"2": {6183"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"6184},6185"3": {6186"name": "comment.block.cpp"6187},6188"4": {6189"name": "comment.block.cpp punctuation.definition.comment.end.cpp"6190},6191"5": {6192"name": "variable.language.this.cpp"6193},6194"6": {6195"name": "variable.other.object.access.cpp"6196},6197"7": {6198"name": "punctuation.separator.dot-access.cpp"6199},6200"8": {6201"name": "punctuation.separator.pointer-access.cpp"6202}6203}6204},6205{6206"include": "#member_access"6207},6208{6209"include": "#method_access"6210}6211]6212},6213"8": {6214"name": "variable.other.property.cpp"6215}6216}6217},6218"memory_operators": {6219"match": "((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?:(?:(delete)(?:\\s+)?(\\[\\])|(delete))|(new))(?!\\w))",6220"captures": {6221"1": {6222"patterns": [6223{6224"include": "#inline_comment"6225}6226]6227},6228"2": {6229"patterns": [6230{6231"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",6232"captures": {6233"1": {6234"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"6235},6236"2": {6237"name": "comment.block.cpp"6238},6239"3": {6240"name": "comment.block.cpp punctuation.definition.comment.end.cpp"6241}6242}6243}6244]6245},6246"3": {6247"name": "keyword.operator.wordlike.cpp"6248},6249"4": {6250"name": "keyword.operator.delete.array.cpp"6251},6252"5": {6253"name": "keyword.operator.delete.array.bracket.cpp"6254},6255"6": {6256"name": "keyword.operator.delete.cpp"6257},6258"7": {6259"name": "keyword.operator.new.cpp"6260}6261}6262},6263"method_access": {6264"begin": "(?:((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)this(?!\\w))|((?:(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*|(?<=\\]|\\)))(?:\\s+)?))(?:((?:\\.\\*|\\.))|((?:->\\*|->)))((?:(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?:\\s+)?(?:(?:\\.\\*|\\.)|(?:->\\*|->))(?:\\s+)?)*)(?:\\s+)?(~?(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*)(?:\\s+)?(\\()",6265"end": "\\)",6266"beginCaptures": {6267"1": {6268"patterns": [6269{6270"include": "#inline_comment"6271}6272]6273},6274"2": {6275"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"6276},6277"3": {6278"name": "comment.block.cpp"6279},6280"4": {6281"name": "comment.block.cpp punctuation.definition.comment.end.cpp"6282},6283"5": {6284"name": "variable.language.this.cpp"6285},6286"6": {6287"name": "variable.other.object.access.cpp"6288},6289"7": {6290"name": "punctuation.separator.dot-access.cpp"6291},6292"8": {6293"name": "punctuation.separator.pointer-access.cpp"6294},6295"9": {6296"patterns": [6297{6298"match": "(?<=(?:\\.\\*|\\.|->|->\\*))(?:\\s+)?(?:((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)this(?!\\w))|((?:(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*|(?<=\\]|\\)))(?:\\s+)?))(?:((?:\\.\\*|\\.))|((?:->\\*|->)))",6299"captures": {6300"1": {6301"patterns": [6302{6303"include": "#inline_comment"6304}6305]6306},6307"2": {6308"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"6309},6310"3": {6311"name": "comment.block.cpp"6312},6313"4": {6314"name": "comment.block.cpp punctuation.definition.comment.end.cpp"6315},6316"5": {6317"name": "variable.language.this.cpp"6318},6319"6": {6320"name": "variable.other.object.property.cpp"6321},6322"7": {6323"name": "punctuation.separator.dot-access.cpp"6324},6325"8": {6326"name": "punctuation.separator.pointer-access.cpp"6327}6328}6329},6330{6331"match": "(?:((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)this(?!\\w))|((?:(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*|(?<=\\]|\\)))(?:\\s+)?))(?:((?:\\.\\*|\\.))|((?:->\\*|->)))",6332"captures": {6333"1": {6334"patterns": [6335{6336"include": "#inline_comment"6337}6338]6339},6340"2": {6341"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"6342},6343"3": {6344"name": "comment.block.cpp"6345},6346"4": {6347"name": "comment.block.cpp punctuation.definition.comment.end.cpp"6348},6349"5": {6350"name": "variable.language.this.cpp"6351},6352"6": {6353"name": "variable.other.object.access.cpp"6354},6355"7": {6356"name": "punctuation.separator.dot-access.cpp"6357},6358"8": {6359"name": "punctuation.separator.pointer-access.cpp"6360}6361}6362},6363{6364"include": "#member_access"6365},6366{6367"include": "#method_access"6368}6369]6370},6371"10": {6372"name": "entity.name.function.member.cpp"6373},6374"11": {6375"name": "punctuation.section.arguments.begin.bracket.round.function.member.cpp"6376}6377},6378"endCaptures": {6379"0": {6380"name": "punctuation.section.arguments.end.bracket.round.function.member.cpp"6381}6382},6383"patterns": [6384{6385"include": "#evaluation_context"6386}6387]6388},6389"misc_keywords": {6390"match": "((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:(?:constinit)|(?:requires)|(?:typedef)|(?:concept)|(?:export)|(?:module))(?!\\w))",6391"captures": {6392"1": {6393"patterns": [6394{6395"include": "#inline_comment"6396}6397]6398},6399"2": {6400"patterns": [6401{6402"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",6403"captures": {6404"1": {6405"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"6406},6407"2": {6408"name": "comment.block.cpp"6409},6410"3": {6411"name": "comment.block.cpp punctuation.definition.comment.end.cpp"6412}6413}6414}6415]6416},6417"3": {6418"name": "keyword.other.$3.cpp"6419}6420}6421},6422"ms_attributes": {6423"begin": "__declspec\\(",6424"end": "\\)",6425"beginCaptures": {6426"0": {6427"name": "punctuation.section.attribute.begin.cpp"6428}6429},6430"endCaptures": {6431"0": {6432"name": "punctuation.section.attribute.end.cpp"6433}6434},6435"name": "support.other.attribute.cpp",6436"patterns": [6437{6438"include": "#attributes_context"6439},6440{6441"begin": "\\(",6442"end": "\\)",6443"beginCaptures": {},6444"endCaptures": {},6445"patterns": [6446{6447"include": "#attributes_context"6448},6449{6450"include": "#string_context"6451},6452{6453"include": "#ever_present_context"6454}6455]6456},6457{6458"match": "(using)\\s+((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))",6459"captures": {6460"1": {6461"name": "keyword.other.using.directive.cpp"6462},6463"2": {6464"name": "entity.name.namespace.cpp"6465}6466}6467},6468{6469"match": ",",6470"name": "punctuation.separator.attribute.cpp"6471},6472{6473"match": ":",6474"name": "punctuation.accessor.attribute.cpp"6475},6476{6477"match": "(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)(?=::)",6478"name": "entity.name.namespace.cpp"6479},6480{6481"match": "(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)",6482"name": "entity.other.attribute.$0.cpp"6483},6484{6485"include": "#number_literal"6486},6487{6488"include": "#ever_present_context"6489}6490]6491},6492"namespace_alias": {6493"match": "(?<!\\w)(namespace)\\s+((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))(?:\\s+)?(\\=)(?:\\s+)?(((::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<8>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*\\s*+)(?:\\s+)?((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))(?:\\s+)?(?:(;)|\\n))",6494"captures": {6495"1": {6496"name": "keyword.other.namespace.alias.cpp storage.type.namespace.alias.cpp"6497},6498"2": {6499"name": "entity.name.namespace.alias.cpp"6500},6501"3": {6502"name": "keyword.operator.assignment.cpp"6503},6504"4": {6505"name": "meta.declaration.namespace.alias.value.cpp"6506},6507"5": {6508"patterns": [6509{6510"include": "#scope_resolution_namespace_alias_inner_generated"6511}6512]6513},6514"6": {6515"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.alias.cpp"6516},6517"7": {6518"patterns": [6519{6520"include": "#template_call_range"6521}6522]6523},6524"9": {6525"name": "entity.name.namespace.cpp"6526},6527"10": {6528"name": "punctuation.terminator.statement.cpp"6529}6530},6531"name": "meta.declaration.namespace.alias.cpp"6532},6533"namespace_block": {6534"begin": "((?<!\\w)namespace(?!\\w))",6535"end": "(?:(?<=\\}|%>|\\?\\?>)|(?=[;>\\[\\]=]))",6536"beginCaptures": {6537"0": {6538"name": "meta.head.namespace.cpp"6539},6540"1": {6541"name": "keyword.other.namespace.definition.cpp storage.type.namespace.definition.cpp"6542}6543},6544"endCaptures": {},6545"name": "meta.block.namespace.cpp",6546"patterns": [6547{6548"begin": "\\G ?",6549"end": "(?:\\{|<%|\\?\\?<|(?=;))",6550"beginCaptures": {},6551"endCaptures": {6552"0": {6553"name": "punctuation.section.block.begin.bracket.curly.namespace.cpp"6554}6555},6556"name": "meta.head.namespace.cpp",6557"patterns": [6558{6559"include": "#ever_present_context"6560},6561{6562"include": "#attributes_context"6563},6564{6565"match": "((::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<4>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*\\s*+)(?:\\s+)?((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))(?:\\s+)?(?:(::)(?:\\s+)?(inline))?",6566"captures": {6567"1": {6568"patterns": [6569{6570"include": "#scope_resolution_namespace_block_inner_generated"6571}6572]6573},6574"2": {6575"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.block.cpp"6576},6577"3": {6578"patterns": [6579{6580"include": "#template_call_range"6581}6582]6583},6584"4": {},6585"5": {6586"name": "entity.name.namespace.cpp"6587},6588"6": {6589"name": "punctuation.separator.scope-resolution.namespace.block.cpp"6590},6591"7": {6592"name": "storage.modifier.inline.cpp"6593}6594}6595}6596]6597},6598{6599"begin": "(?<=\\{|<%|\\?\\?<)",6600"end": "\\}|%>|\\?\\?>",6601"beginCaptures": {},6602"endCaptures": {6603"0": {6604"name": "punctuation.section.block.end.bracket.curly.namespace.cpp"6605}6606},6607"name": "meta.body.namespace.cpp",6608"patterns": [6609{6610"include": "$self"6611}6612]6613},6614{6615"begin": "(?<=\\}|%>|\\?\\?>)[\\s]*",6616"end": "[\\s]*(?=;)",6617"beginCaptures": {},6618"endCaptures": {},6619"name": "meta.tail.namespace.cpp",6620"patterns": [6621{6622"include": "$self"6623}6624]6625}6626]6627},6628"noexcept_operator": {6629"begin": "((?<!\\w)noexcept(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()",6630"end": "\\)",6631"beginCaptures": {6632"1": {6633"name": "keyword.operator.functionlike.cpp keyword.operator.noexcept.cpp"6634},6635"2": {6636"patterns": [6637{6638"include": "#inline_comment"6639}6640]6641},6642"3": {6643"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"6644},6645"4": {6646"name": "comment.block.cpp"6647},6648"5": {6649"name": "comment.block.cpp punctuation.definition.comment.end.cpp"6650},6651"6": {6652"name": "punctuation.section.arguments.begin.bracket.round.operator.noexcept.cpp"6653}6654},6655"endCaptures": {6656"0": {6657"name": "punctuation.section.arguments.end.bracket.round.operator.noexcept.cpp"6658}6659},6660"contentName": "meta.arguments.operator.noexcept",6661"patterns": [6662{6663"include": "#evaluation_context"6664}6665]6666},6667"number_literal": {6668"match": "(?<!\\w)\\.?\\d(?:(?:[0-9a-zA-Z_\\.]|')|(?<=[eEpP])[+-])*",6669"captures": {6670"0": {6671"patterns": [6672{6673"begin": "(?=.)",6674"end": "$",6675"beginCaptures": {},6676"endCaptures": {},6677"patterns": [6678{6679"match": "(\\G0[xX])([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)?((?:(?<=[0-9a-fA-F])\\.|\\.(?=[0-9a-fA-F])))([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)?(?:(?<!')([pP])(\\+?)(\\-?)([0-9](?:[0-9]|(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))*))?([lLfF](?!\\w))?((?:\\w(?<![0-9a-fA-FpP])\\w*)?$)",6680"captures": {6681"1": {6682"name": "keyword.other.unit.hexadecimal.cpp"6683},6684"2": {6685"name": "constant.numeric.hexadecimal.cpp",6686"patterns": [6687{6688"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",6689"name": "punctuation.separator.constant.numeric.cpp"6690}6691]6692},6693"3": {6694"name": "punctuation.separator.constant.numeric.cpp"6695},6696"4": {6697"name": "constant.numeric.hexadecimal.cpp"6698},6699"5": {6700"name": "constant.numeric.hexadecimal.cpp",6701"patterns": [6702{6703"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",6704"name": "punctuation.separator.constant.numeric.cpp"6705}6706]6707},6708"6": {6709"name": "punctuation.separator.constant.numeric.cpp"6710},6711"7": {6712"name": "keyword.other.unit.exponent.hexadecimal.cpp"6713},6714"8": {6715"name": "keyword.operator.plus.exponent.hexadecimal.cpp"6716},6717"9": {6718"name": "keyword.operator.minus.exponent.hexadecimal.cpp"6719},6720"10": {6721"name": "constant.numeric.exponent.hexadecimal.cpp",6722"patterns": [6723{6724"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",6725"name": "punctuation.separator.constant.numeric.cpp"6726}6727]6728},6729"11": {6730"name": "keyword.other.suffix.literal.built-in.floating-point.cpp keyword.other.unit.suffix.floating-point.cpp"6731},6732"12": {6733"name": "keyword.other.suffix.literal.user-defined.integer.cpp keyword.other.unit.user-defined.cpp"6734}6735}6736},6737{6738"match": "\\G(?=[0-9.])(?!0[xXbB])([0-9](?:[0-9]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)?((?:(?<=[0-9])\\.|\\.(?=[0-9])))([0-9](?:[0-9]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)?(?:(?<!')([eE])(\\+?)(\\-?)([0-9](?:[0-9]|(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))*))?([lLfF](?!\\w))?((?:\\w(?<![0-9eE])\\w*)?$)",6739"captures": {6740"1": {6741"name": "constant.numeric.decimal.cpp",6742"patterns": [6743{6744"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",6745"name": "punctuation.separator.constant.numeric.cpp"6746}6747]6748},6749"2": {6750"name": "punctuation.separator.constant.numeric.cpp"6751},6752"3": {6753"name": "constant.numeric.decimal.point.cpp"6754},6755"4": {6756"name": "constant.numeric.decimal.cpp",6757"patterns": [6758{6759"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",6760"name": "punctuation.separator.constant.numeric.cpp"6761}6762]6763},6764"5": {6765"name": "punctuation.separator.constant.numeric.cpp"6766},6767"6": {6768"name": "keyword.other.unit.exponent.decimal.cpp"6769},6770"7": {6771"name": "keyword.operator.plus.exponent.decimal.cpp"6772},6773"8": {6774"name": "keyword.operator.minus.exponent.decimal.cpp"6775},6776"9": {6777"name": "constant.numeric.exponent.decimal.cpp",6778"patterns": [6779{6780"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",6781"name": "punctuation.separator.constant.numeric.cpp"6782}6783]6784},6785"10": {6786"name": "keyword.other.suffix.literal.built-in.floating-point.cpp keyword.other.unit.suffix.floating-point.cpp"6787},6788"11": {6789"name": "keyword.other.suffix.literal.user-defined.integer.cpp keyword.other.unit.user-defined.cpp"6790}6791}6792},6793{6794"match": "(\\G0[bB])([01](?:[01]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)((?:[uU]|(?:[uU]ll?)|(?:[uU]LL?)|(?:ll?[uU]?)|(?:LL?[uU]?)|[fF])(?!\\w))?((?:\\w(?<![0-9])\\w*)?$)",6795"captures": {6796"1": {6797"name": "keyword.other.unit.binary.cpp"6798},6799"2": {6800"name": "constant.numeric.binary.cpp",6801"patterns": [6802{6803"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",6804"name": "punctuation.separator.constant.numeric.cpp"6805}6806]6807},6808"3": {6809"name": "punctuation.separator.constant.numeric.cpp"6810},6811"4": {6812"name": "keyword.other.suffix.literal.built-in.integer.cpp keyword.other.unit.suffix.integer.cpp"6813},6814"5": {6815"name": "keyword.other.suffix.literal.user-defined.integer.cpp keyword.other.unit.user-defined.cpp"6816}6817}6818},6819{6820"match": "(\\G0)((?:[0-7]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))+)((?:[uU]|(?:[uU]ll?)|(?:[uU]LL?)|(?:ll?[uU]?)|(?:LL?[uU]?)|[fF])(?!\\w))?((?:\\w(?<![0-9])\\w*)?$)",6821"captures": {6822"1": {6823"name": "keyword.other.unit.octal.cpp"6824},6825"2": {6826"name": "constant.numeric.octal.cpp",6827"patterns": [6828{6829"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",6830"name": "punctuation.separator.constant.numeric.cpp"6831}6832]6833},6834"3": {6835"name": "punctuation.separator.constant.numeric.cpp"6836},6837"4": {6838"name": "keyword.other.suffix.literal.built-in.integer.cpp keyword.other.unit.suffix.integer.cpp"6839},6840"5": {6841"name": "keyword.other.suffix.literal.user-defined.integer.cpp keyword.other.unit.user-defined.cpp"6842}6843}6844},6845{6846"match": "(\\G0[xX])([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)(?:(?<!')([pP])(\\+?)(\\-?)([0-9](?:[0-9]|(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))*))?((?:[uU]|(?:[uU]ll?)|(?:[uU]LL?)|(?:ll?[uU]?)|(?:LL?[uU]?)|[fF])(?!\\w))?((?:\\w(?<![0-9a-fA-FpP])\\w*)?$)",6847"captures": {6848"1": {6849"name": "keyword.other.unit.hexadecimal.cpp"6850},6851"2": {6852"name": "constant.numeric.hexadecimal.cpp",6853"patterns": [6854{6855"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",6856"name": "punctuation.separator.constant.numeric.cpp"6857}6858]6859},6860"3": {6861"name": "punctuation.separator.constant.numeric.cpp"6862},6863"4": {6864"name": "keyword.other.unit.exponent.hexadecimal.cpp"6865},6866"5": {6867"name": "keyword.operator.plus.exponent.hexadecimal.cpp"6868},6869"6": {6870"name": "keyword.operator.minus.exponent.hexadecimal.cpp"6871},6872"7": {6873"name": "constant.numeric.exponent.hexadecimal.cpp",6874"patterns": [6875{6876"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",6877"name": "punctuation.separator.constant.numeric.cpp"6878}6879]6880},6881"8": {6882"name": "keyword.other.suffix.literal.built-in.integer.cpp keyword.other.unit.suffix.integer.cpp"6883},6884"9": {6885"name": "keyword.other.suffix.literal.user-defined.integer.cpp keyword.other.unit.user-defined.cpp"6886}6887}6888},6889{6890"match": "\\G(?=[0-9.])(?!0[xXbB])([0-9](?:[0-9]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)(?:(?<!')([eE])(\\+?)(\\-?)([0-9](?:[0-9]|(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))*))?((?:[uU]|(?:[uU]ll?)|(?:[uU]LL?)|(?:ll?[uU]?)|(?:LL?[uU]?)|[fF])(?!\\w))?((?:\\w(?<![0-9eE])\\w*)?$)",6891"captures": {6892"1": {6893"name": "constant.numeric.decimal.cpp",6894"patterns": [6895{6896"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",6897"name": "punctuation.separator.constant.numeric.cpp"6898}6899]6900},6901"2": {6902"name": "punctuation.separator.constant.numeric.cpp"6903},6904"3": {6905"name": "keyword.other.unit.exponent.decimal.cpp"6906},6907"4": {6908"name": "keyword.operator.plus.exponent.decimal.cpp"6909},6910"5": {6911"name": "keyword.operator.minus.exponent.decimal.cpp"6912},6913"6": {6914"name": "constant.numeric.exponent.decimal.cpp",6915"patterns": [6916{6917"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",6918"name": "punctuation.separator.constant.numeric.cpp"6919}6920]6921},6922"7": {6923"name": "keyword.other.suffix.literal.built-in.integer.cpp keyword.other.unit.suffix.integer.cpp"6924},6925"8": {6926"name": "keyword.other.suffix.literal.user-defined.integer.cpp keyword.other.unit.user-defined.cpp"6927}6928}6929},6930{6931"match": "(?:(?:[0-9a-zA-Z_\\.]|')|(?<=[eEpP])[+-])+",6932"name": "invalid.illegal.constant.numeric.cpp"6933}6934]6935}6936]6937}6938}6939},6940"operator_overload": {6941"begin": "((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(\\s*+((?:(?:(?:\\[\\[.*?\\]\\]|__attribute(?:__)?\\s*\\(\\s*\\(.*?\\)\\s*\\))|__declspec\\(.*?\\))|alignas\\(.*?\\))(?!\\)))?((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:((?:::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<55>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*+)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\b)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*\\b((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<55>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)?(?![\\w<:.]))(((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))?(?:(?:&|\\*)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:&|\\*))?((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?((?:__cdecl|__clrcall|__stdcall|__fastcall|__thiscall|__vectorcall)?)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?:::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<55>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*+)(operator)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?:::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<55>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*+)(?:(?:((?:(?:delete\\[\\])|(?:delete)|(?:new\\[\\])|(?:<=>)|(?:<<=)|(?:new)|(?:>>=)|(?:\\->\\*)|(?:\\/=)|(?:%=)|(?:&=)|(?:>=)|(?:\\|=)|(?:\\+\\+)|(?:\\-\\-)|(?:\\(\\))|(?:\\[\\])|(?:\\->)|(?:\\+\\+)|(?:<<)|(?:>>)|(?:\\-\\-)|(?:<=)|(?:\\^=)|(?:==)|(?:!=)|(?:&&)|(?:\\|\\|)|(?:\\+=)|(?:\\-=)|(?:\\*=)|,|\\+|\\-|!|~|\\*|&|\\*|\\/|%|\\+|\\-|<|>|&|\\^|\\||=))|((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)(((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))?(?:(?:&|\\*)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:&|\\*))?((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?:\\[\\])?)))|(\"\")((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?=\\<|\\()",6942"end": "(?:(?<=\\}|%>|\\?\\?>)|(?=[;>\\[\\]=]))",6943"beginCaptures": {6944"0": {6945"name": "meta.head.function.definition.special.operator-overload.cpp"6946},6947"1": {6948"patterns": [6949{6950"include": "#inline_comment"6951}6952]6953},6954"2": {6955"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"6956},6957"3": {6958"name": "comment.block.cpp"6959},6960"4": {6961"name": "comment.block.cpp punctuation.definition.comment.end.cpp"6962},6963"5": {6964"name": "meta.qualified_type.cpp",6965"patterns": [6966{6967"match": "::",6968"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"6969},6970{6971"match": "(?<!\\w)(?:(?:struct)|(?:class)|(?:union)|(?:enum))(?!\\w)",6972"name": "storage.type.$0.cpp"6973},6974{6975"include": "#attributes_context"6976},6977{6978"include": "#storage_types"6979},6980{6981"include": "#number_literal"6982},6983{6984"include": "#string_context"6985},6986{6987"include": "#comma"6988},6989{6990"include": "#scope_resolution_inner_generated"6991},6992{6993"begin": "<",6994"end": ">",6995"beginCaptures": {6996"0": {6997"name": "punctuation.section.angle-brackets.begin.template.call.cpp"6998}6999},7000"endCaptures": {7001"0": {7002"name": "punctuation.section.angle-brackets.end.template.call.cpp"7003}7004},7005"name": "meta.template.call.cpp",7006"patterns": [7007{7008"include": "#template_call_context"7009}7010]7011},7012{7013"match": "(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*",7014"name": "entity.name.type.cpp"7015}7016]7017},7018"6": {7019"patterns": [7020{7021"include": "#attributes_context"7022},7023{7024"include": "#number_literal"7025}7026]7027},7028"7": {7029"patterns": [7030{7031"include": "#inline_comment"7032}7033]7034},7035"8": {7036"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7037},7038"9": {7039"name": "comment.block.cpp"7040},7041"10": {7042"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7043},7044"11": {7045"patterns": [7046{7047"include": "#inline_comment"7048}7049]7050},7051"12": {7052"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7053},7054"13": {7055"name": "comment.block.cpp"7056},7057"14": {7058"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7059},7060"15": {7061"patterns": [7062{7063"match": "::",7064"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"7065},7066{7067"match": "(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)",7068"name": "entity.name.scope-resolution.type.cpp"7069},7070{7071"include": "#template_call_range"7072}7073]7074},7075"16": {7076"patterns": [7077{7078"include": "#template_call_range"7079}7080]7081},7082"17": {},7083"18": {7084"patterns": [7085{7086"include": "#inline_comment"7087}7088]7089},7090"19": {7091"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7092},7093"20": {7094"name": "comment.block.cpp"7095},7096"21": {7097"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7098},7099"22": {},7100"23": {7101"patterns": [7102{7103"match": "\\*",7104"name": "storage.modifier.pointer.cpp"7105},7106{7107"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",7108"captures": {7109"1": {7110"patterns": [7111{7112"include": "#inline_comment"7113}7114]7115},7116"2": {7117"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7118},7119"3": {7120"name": "comment.block.cpp"7121},7122"4": {7123"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7124}7125},7126"name": "invalid.illegal.reference-type.cpp"7127},7128{7129"match": "\\&",7130"name": "storage.modifier.reference.cpp"7131}7132]7133},7134"24": {7135"patterns": [7136{7137"include": "#inline_comment"7138}7139]7140},7141"25": {7142"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7143},7144"26": {7145"name": "comment.block.cpp"7146},7147"27": {7148"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7149},7150"28": {7151"patterns": [7152{7153"include": "#inline_comment"7154}7155]7156},7157"29": {7158"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7159},7160"30": {7161"name": "comment.block.cpp"7162},7163"31": {7164"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7165},7166"32": {7167"patterns": [7168{7169"include": "#inline_comment"7170}7171]7172},7173"33": {7174"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7175},7176"34": {7177"name": "comment.block.cpp"7178},7179"35": {7180"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7181},7182"36": {7183"name": "storage.type.modifier.calling-convention.cpp"7184},7185"37": {7186"patterns": [7187{7188"include": "#inline_comment"7189}7190]7191},7192"38": {7193"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7194},7195"39": {7196"name": "comment.block.cpp"7197},7198"40": {7199"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7200},7201"41": {7202"patterns": [7203{7204"include": "#inline_comment"7205}7206]7207},7208"42": {7209"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7210},7211"43": {7212"name": "comment.block.cpp"7213},7214"44": {7215"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7216},7217"45": {7218"patterns": [7219{7220"match": "::",7221"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.operator.cpp"7222},7223{7224"match": "(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)",7225"name": "entity.name.scope-resolution.operator.cpp"7226},7227{7228"include": "#template_call_range"7229}7230]7231},7232"46": {7233"patterns": [7234{7235"include": "#template_call_range"7236}7237]7238},7239"47": {},7240"48": {7241"name": "keyword.other.operator.overload.cpp"7242},7243"49": {7244"patterns": [7245{7246"include": "#inline_comment"7247}7248]7249},7250"50": {7251"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7252},7253"51": {7254"name": "comment.block.cpp"7255},7256"52": {7257"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7258},7259"53": {7260"patterns": [7261{7262"match": "::",7263"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.operator-overload.cpp"7264},7265{7266"match": "(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)",7267"name": "entity.name.scope-resolution.operator-overload.cpp"7268},7269{7270"include": "#template_call_range"7271}7272]7273},7274"54": {7275"patterns": [7276{7277"include": "#template_call_range"7278}7279]7280},7281"55": {},7282"56": {7283"name": "entity.name.operator.cpp"7284},7285"57": {7286"name": "entity.name.operator.type.cpp"7287},7288"58": {7289"patterns": [7290{7291"match": "\\*",7292"name": "entity.name.operator.type.pointer.cpp"7293},7294{7295"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",7296"captures": {7297"1": {7298"patterns": [7299{7300"include": "#inline_comment"7301}7302]7303},7304"2": {7305"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7306},7307"3": {7308"name": "comment.block.cpp"7309},7310"4": {7311"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7312}7313},7314"name": "invalid.illegal.reference-type.cpp"7315},7316{7317"match": "\\&",7318"name": "entity.name.operator.type.reference.cpp"7319}7320]7321},7322"59": {7323"patterns": [7324{7325"include": "#inline_comment"7326}7327]7328},7329"60": {7330"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7331},7332"61": {7333"name": "comment.block.cpp"7334},7335"62": {7336"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7337},7338"63": {7339"patterns": [7340{7341"include": "#inline_comment"7342}7343]7344},7345"64": {7346"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7347},7348"65": {7349"name": "comment.block.cpp"7350},7351"66": {7352"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7353},7354"67": {7355"patterns": [7356{7357"include": "#inline_comment"7358}7359]7360},7361"68": {7362"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7363},7364"69": {7365"name": "comment.block.cpp"7366},7367"70": {7368"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7369},7370"71": {7371"name": "entity.name.operator.type.array.cpp"7372},7373"72": {7374"name": "entity.name.operator.custom-literal.cpp"7375},7376"73": {7377"patterns": [7378{7379"include": "#inline_comment"7380}7381]7382},7383"74": {7384"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7385},7386"75": {7387"name": "comment.block.cpp"7388},7389"76": {7390"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7391},7392"77": {7393"name": "entity.name.operator.custom-literal.cpp"7394},7395"78": {7396"patterns": [7397{7398"include": "#inline_comment"7399}7400]7401},7402"79": {7403"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7404},7405"80": {7406"name": "comment.block.cpp"7407},7408"81": {7409"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7410}7411},7412"endCaptures": {},7413"name": "meta.function.definition.special.operator-overload.cpp",7414"patterns": [7415{7416"begin": "\\G ?",7417"end": "(?:\\{|<%|\\?\\?<|(?=;))",7418"beginCaptures": {},7419"endCaptures": {7420"0": {7421"name": "punctuation.section.block.begin.bracket.curly.function.definition.special.operator-overload.cpp"7422}7423},7424"name": "meta.head.function.definition.special.operator-overload.cpp",7425"patterns": [7426{7427"include": "#ever_present_context"7428},7429{7430"include": "#template_call_range"7431},7432{7433"begin": "\\(",7434"end": "\\)",7435"beginCaptures": {7436"0": {7437"name": "punctuation.section.parameters.begin.bracket.round.special.operator-overload.cpp"7438}7439},7440"endCaptures": {7441"0": {7442"name": "punctuation.section.parameters.end.bracket.round.special.operator-overload.cpp"7443}7444},7445"contentName": "meta.function.definition.parameters.special.operator-overload",7446"patterns": [7447{7448"include": "#function_parameter_context"7449},7450{7451"include": "#evaluation_context"7452}7453]7454},7455{7456"include": "#qualifiers_and_specifiers_post_parameters"7457},7458{7459"match": "(\\=)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(default)|(delete))",7460"captures": {7461"1": {7462"name": "keyword.operator.assignment.cpp"7463},7464"2": {7465"patterns": [7466{7467"include": "#inline_comment"7468}7469]7470},7471"3": {7472"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7473},7474"4": {7475"name": "comment.block.cpp"7476},7477"5": {7478"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7479},7480"6": {7481"name": "keyword.other.default.function.cpp"7482},7483"7": {7484"name": "keyword.other.delete.function.cpp"7485}7486}7487},7488{7489"include": "$self"7490}7491]7492},7493{7494"begin": "(?<=\\{|<%|\\?\\?<)",7495"end": "\\}|%>|\\?\\?>",7496"beginCaptures": {},7497"endCaptures": {7498"0": {7499"name": "punctuation.section.block.end.bracket.curly.function.definition.special.operator-overload.cpp"7500}7501},7502"name": "meta.body.function.definition.special.operator-overload.cpp",7503"patterns": [7504{7505"include": "#function_body_context"7506}7507]7508},7509{7510"begin": "(?<=\\}|%>|\\?\\?>)[\\s]*",7511"end": "[\\s]*(?=;)",7512"beginCaptures": {},7513"endCaptures": {},7514"name": "meta.tail.function.definition.special.operator-overload.cpp",7515"patterns": [7516{7517"include": "$self"7518}7519]7520}7521]7522},7523"operators": {7524"patterns": [7525{7526"begin": "((?<!\\w)sizeof(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()",7527"end": "\\)",7528"beginCaptures": {7529"1": {7530"name": "keyword.operator.functionlike.cpp keyword.operator.sizeof.cpp"7531},7532"2": {7533"patterns": [7534{7535"include": "#inline_comment"7536}7537]7538},7539"3": {7540"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7541},7542"4": {7543"name": "comment.block.cpp"7544},7545"5": {7546"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7547},7548"6": {7549"name": "punctuation.section.arguments.begin.bracket.round.operator.sizeof.cpp"7550}7551},7552"endCaptures": {7553"0": {7554"name": "punctuation.section.arguments.end.bracket.round.operator.sizeof.cpp"7555}7556},7557"contentName": "meta.arguments.operator.sizeof",7558"patterns": [7559{7560"include": "#evaluation_context"7561}7562]7563},7564{7565"begin": "((?<!\\w)alignof(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()",7566"end": "\\)",7567"beginCaptures": {7568"1": {7569"name": "keyword.operator.functionlike.cpp keyword.operator.alignof.cpp"7570},7571"2": {7572"patterns": [7573{7574"include": "#inline_comment"7575}7576]7577},7578"3": {7579"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7580},7581"4": {7582"name": "comment.block.cpp"7583},7584"5": {7585"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7586},7587"6": {7588"name": "punctuation.section.arguments.begin.bracket.round.operator.alignof.cpp"7589}7590},7591"endCaptures": {7592"0": {7593"name": "punctuation.section.arguments.end.bracket.round.operator.alignof.cpp"7594}7595},7596"contentName": "meta.arguments.operator.alignof",7597"patterns": [7598{7599"include": "#evaluation_context"7600}7601]7602},7603{7604"begin": "((?<!\\w)alignas(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()",7605"end": "\\)",7606"beginCaptures": {7607"1": {7608"name": "keyword.operator.functionlike.cpp keyword.operator.alignas.cpp"7609},7610"2": {7611"patterns": [7612{7613"include": "#inline_comment"7614}7615]7616},7617"3": {7618"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7619},7620"4": {7621"name": "comment.block.cpp"7622},7623"5": {7624"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7625},7626"6": {7627"name": "punctuation.section.arguments.begin.bracket.round.operator.alignas.cpp"7628}7629},7630"endCaptures": {7631"0": {7632"name": "punctuation.section.arguments.end.bracket.round.operator.alignas.cpp"7633}7634},7635"contentName": "meta.arguments.operator.alignas",7636"patterns": [7637{7638"include": "#evaluation_context"7639}7640]7641},7642{7643"begin": "((?<!\\w)typeid(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()",7644"end": "\\)",7645"beginCaptures": {7646"1": {7647"name": "keyword.operator.functionlike.cpp keyword.operator.typeid.cpp"7648},7649"2": {7650"patterns": [7651{7652"include": "#inline_comment"7653}7654]7655},7656"3": {7657"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7658},7659"4": {7660"name": "comment.block.cpp"7661},7662"5": {7663"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7664},7665"6": {7666"name": "punctuation.section.arguments.begin.bracket.round.operator.typeid.cpp"7667}7668},7669"endCaptures": {7670"0": {7671"name": "punctuation.section.arguments.end.bracket.round.operator.typeid.cpp"7672}7673},7674"contentName": "meta.arguments.operator.typeid",7675"patterns": [7676{7677"include": "#evaluation_context"7678}7679]7680},7681{7682"begin": "((?<!\\w)noexcept(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()",7683"end": "\\)",7684"beginCaptures": {7685"1": {7686"name": "keyword.operator.functionlike.cpp keyword.operator.noexcept.cpp"7687},7688"2": {7689"patterns": [7690{7691"include": "#inline_comment"7692}7693]7694},7695"3": {7696"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7697},7698"4": {7699"name": "comment.block.cpp"7700},7701"5": {7702"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7703},7704"6": {7705"name": "punctuation.section.arguments.begin.bracket.round.operator.noexcept.cpp"7706}7707},7708"endCaptures": {7709"0": {7710"name": "punctuation.section.arguments.end.bracket.round.operator.noexcept.cpp"7711}7712},7713"contentName": "meta.arguments.operator.noexcept",7714"patterns": [7715{7716"include": "#evaluation_context"7717}7718]7719},7720{7721"begin": "(\\bsizeof\\.\\.\\.)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()",7722"end": "\\)",7723"beginCaptures": {7724"1": {7725"name": "keyword.operator.functionlike.cpp keyword.operator.sizeof.variadic.cpp"7726},7727"2": {7728"patterns": [7729{7730"include": "#inline_comment"7731}7732]7733},7734"3": {7735"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7736},7737"4": {7738"name": "comment.block.cpp"7739},7740"5": {7741"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7742},7743"6": {7744"name": "punctuation.section.arguments.begin.bracket.round.operator.sizeof.variadic.cpp"7745}7746},7747"endCaptures": {7748"0": {7749"name": "punctuation.section.arguments.end.bracket.round.operator.sizeof.variadic.cpp"7750}7751},7752"contentName": "meta.arguments.operator.sizeof.variadic",7753"patterns": [7754{7755"include": "#evaluation_context"7756}7757]7758},7759{7760"match": "--",7761"name": "keyword.operator.decrement.cpp"7762},7763{7764"match": "\\+\\+",7765"name": "keyword.operator.increment.cpp"7766},7767{7768"match": "%=|\\+=|-=|\\*=|(?<!\\()\\/=",7769"name": "keyword.operator.assignment.compound.cpp"7770},7771{7772"match": "&=|\\^=|<<=|>>=|\\|=",7773"name": "keyword.operator.assignment.compound.bitwise.cpp"7774},7775{7776"match": "<<|>>",7777"name": "keyword.operator.bitwise.shift.cpp"7778},7779{7780"match": "!=|<=|>=|==|<|>",7781"name": "keyword.operator.comparison.cpp"7782},7783{7784"match": "&&|!|\\|\\|",7785"name": "keyword.operator.logical.cpp"7786},7787{7788"match": "&|\\||\\^|~",7789"name": "keyword.operator.bitwise.cpp"7790},7791{7792"include": "#assignment_operator"7793},7794{7795"match": "%|\\*|\\/|-|\\+",7796"name": "keyword.operator.arithmetic.cpp"7797},7798{7799"include": "#ternary_operator"7800}7801]7802},7803"over_qualified_types": {7804"patterns": [7805{7806"match": "(\\bstruct)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))?(?:(?:&|\\*)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:&|\\*))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?((?:(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))?)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:\\[((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))\\]((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?(?=,|\\)|\\n)",7807"captures": {7808"1": {7809"name": "storage.type.struct.parameter.cpp"7810},7811"2": {7812"patterns": [7813{7814"include": "#inline_comment"7815}7816]7817},7818"3": {7819"patterns": [7820{7821"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",7822"captures": {7823"1": {7824"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7825},7826"2": {7827"name": "comment.block.cpp"7828},7829"3": {7830"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7831}7832}7833}7834]7835},7836"4": {7837"name": "entity.name.type.struct.parameter.cpp"7838},7839"5": {7840"patterns": [7841{7842"include": "#inline_comment"7843}7844]7845},7846"6": {7847"patterns": [7848{7849"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",7850"captures": {7851"1": {7852"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7853},7854"2": {7855"name": "comment.block.cpp"7856},7857"3": {7858"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7859}7860}7861}7862]7863},7864"7": {7865"patterns": [7866{7867"match": "\\*",7868"name": "storage.modifier.pointer.cpp"7869},7870{7871"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",7872"captures": {7873"1": {7874"patterns": [7875{7876"include": "#inline_comment"7877}7878]7879},7880"2": {7881"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7882},7883"3": {7884"name": "comment.block.cpp"7885},7886"4": {7887"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7888}7889},7890"name": "invalid.illegal.reference-type.cpp"7891},7892{7893"match": "\\&",7894"name": "storage.modifier.reference.cpp"7895}7896]7897},7898"8": {7899"patterns": [7900{7901"include": "#inline_comment"7902}7903]7904},7905"9": {7906"patterns": [7907{7908"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",7909"captures": {7910"1": {7911"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7912},7913"2": {7914"name": "comment.block.cpp"7915},7916"3": {7917"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7918}7919}7920}7921]7922},7923"10": {7924"patterns": [7925{7926"include": "#inline_comment"7927}7928]7929},7930"11": {7931"patterns": [7932{7933"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",7934"captures": {7935"1": {7936"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7937},7938"2": {7939"name": "comment.block.cpp"7940},7941"3": {7942"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7943}7944}7945}7946]7947},7948"12": {7949"patterns": [7950{7951"include": "#inline_comment"7952}7953]7954},7955"13": {7956"patterns": [7957{7958"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",7959"captures": {7960"1": {7961"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7962},7963"2": {7964"name": "comment.block.cpp"7965},7966"3": {7967"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7968}7969}7970}7971]7972},7973"14": {7974"name": "variable.other.object.declare.cpp"7975},7976"15": {7977"patterns": [7978{7979"include": "#inline_comment"7980}7981]7982},7983"16": {7984"patterns": [7985{7986"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",7987"captures": {7988"1": {7989"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7990},7991"2": {7992"name": "comment.block.cpp"7993},7994"3": {7995"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7996}7997}7998}7999]8000},8001"17": {8002"patterns": [8003{8004"include": "#inline_comment"8005}8006]8007},8008"18": {8009"patterns": [8010{8011"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8012"captures": {8013"1": {8014"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8015},8016"2": {8017"name": "comment.block.cpp"8018},8019"3": {8020"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8021}8022}8023}8024]8025},8026"19": {8027"patterns": [8028{8029"include": "#inline_comment"8030}8031]8032},8033"20": {8034"patterns": [8035{8036"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8037"captures": {8038"1": {8039"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8040},8041"2": {8042"name": "comment.block.cpp"8043},8044"3": {8045"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8046}8047}8048}8049]8050}8051}8052},8053{8054"match": "(\\benum)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))?(?:(?:&|\\*)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:&|\\*))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?((?:(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))?)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:\\[((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))\\]((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?(?=,|\\)|\\n)",8055"captures": {8056"1": {8057"name": "storage.type.enum.parameter.cpp"8058},8059"2": {8060"patterns": [8061{8062"include": "#inline_comment"8063}8064]8065},8066"3": {8067"patterns": [8068{8069"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8070"captures": {8071"1": {8072"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8073},8074"2": {8075"name": "comment.block.cpp"8076},8077"3": {8078"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8079}8080}8081}8082]8083},8084"4": {8085"name": "entity.name.type.enum.parameter.cpp"8086},8087"5": {8088"patterns": [8089{8090"include": "#inline_comment"8091}8092]8093},8094"6": {8095"patterns": [8096{8097"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8098"captures": {8099"1": {8100"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8101},8102"2": {8103"name": "comment.block.cpp"8104},8105"3": {8106"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8107}8108}8109}8110]8111},8112"7": {8113"patterns": [8114{8115"match": "\\*",8116"name": "storage.modifier.pointer.cpp"8117},8118{8119"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",8120"captures": {8121"1": {8122"patterns": [8123{8124"include": "#inline_comment"8125}8126]8127},8128"2": {8129"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8130},8131"3": {8132"name": "comment.block.cpp"8133},8134"4": {8135"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8136}8137},8138"name": "invalid.illegal.reference-type.cpp"8139},8140{8141"match": "\\&",8142"name": "storage.modifier.reference.cpp"8143}8144]8145},8146"8": {8147"patterns": [8148{8149"include": "#inline_comment"8150}8151]8152},8153"9": {8154"patterns": [8155{8156"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8157"captures": {8158"1": {8159"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8160},8161"2": {8162"name": "comment.block.cpp"8163},8164"3": {8165"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8166}8167}8168}8169]8170},8171"10": {8172"patterns": [8173{8174"include": "#inline_comment"8175}8176]8177},8178"11": {8179"patterns": [8180{8181"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8182"captures": {8183"1": {8184"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8185},8186"2": {8187"name": "comment.block.cpp"8188},8189"3": {8190"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8191}8192}8193}8194]8195},8196"12": {8197"patterns": [8198{8199"include": "#inline_comment"8200}8201]8202},8203"13": {8204"patterns": [8205{8206"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8207"captures": {8208"1": {8209"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8210},8211"2": {8212"name": "comment.block.cpp"8213},8214"3": {8215"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8216}8217}8218}8219]8220},8221"14": {8222"name": "variable.other.object.declare.cpp"8223},8224"15": {8225"patterns": [8226{8227"include": "#inline_comment"8228}8229]8230},8231"16": {8232"patterns": [8233{8234"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8235"captures": {8236"1": {8237"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8238},8239"2": {8240"name": "comment.block.cpp"8241},8242"3": {8243"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8244}8245}8246}8247]8248},8249"17": {8250"patterns": [8251{8252"include": "#inline_comment"8253}8254]8255},8256"18": {8257"patterns": [8258{8259"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8260"captures": {8261"1": {8262"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8263},8264"2": {8265"name": "comment.block.cpp"8266},8267"3": {8268"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8269}8270}8271}8272]8273},8274"19": {8275"patterns": [8276{8277"include": "#inline_comment"8278}8279]8280},8281"20": {8282"patterns": [8283{8284"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8285"captures": {8286"1": {8287"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8288},8289"2": {8290"name": "comment.block.cpp"8291},8292"3": {8293"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8294}8295}8296}8297]8298}8299}8300},8301{8302"match": "(\\bunion)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))?(?:(?:&|\\*)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:&|\\*))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?((?:(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))?)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:\\[((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))\\]((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?(?=,|\\)|\\n)",8303"captures": {8304"1": {8305"name": "storage.type.union.parameter.cpp"8306},8307"2": {8308"patterns": [8309{8310"include": "#inline_comment"8311}8312]8313},8314"3": {8315"patterns": [8316{8317"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8318"captures": {8319"1": {8320"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8321},8322"2": {8323"name": "comment.block.cpp"8324},8325"3": {8326"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8327}8328}8329}8330]8331},8332"4": {8333"name": "entity.name.type.union.parameter.cpp"8334},8335"5": {8336"patterns": [8337{8338"include": "#inline_comment"8339}8340]8341},8342"6": {8343"patterns": [8344{8345"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8346"captures": {8347"1": {8348"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8349},8350"2": {8351"name": "comment.block.cpp"8352},8353"3": {8354"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8355}8356}8357}8358]8359},8360"7": {8361"patterns": [8362{8363"match": "\\*",8364"name": "storage.modifier.pointer.cpp"8365},8366{8367"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",8368"captures": {8369"1": {8370"patterns": [8371{8372"include": "#inline_comment"8373}8374]8375},8376"2": {8377"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8378},8379"3": {8380"name": "comment.block.cpp"8381},8382"4": {8383"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8384}8385},8386"name": "invalid.illegal.reference-type.cpp"8387},8388{8389"match": "\\&",8390"name": "storage.modifier.reference.cpp"8391}8392]8393},8394"8": {8395"patterns": [8396{8397"include": "#inline_comment"8398}8399]8400},8401"9": {8402"patterns": [8403{8404"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8405"captures": {8406"1": {8407"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8408},8409"2": {8410"name": "comment.block.cpp"8411},8412"3": {8413"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8414}8415}8416}8417]8418},8419"10": {8420"patterns": [8421{8422"include": "#inline_comment"8423}8424]8425},8426"11": {8427"patterns": [8428{8429"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8430"captures": {8431"1": {8432"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8433},8434"2": {8435"name": "comment.block.cpp"8436},8437"3": {8438"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8439}8440}8441}8442]8443},8444"12": {8445"patterns": [8446{8447"include": "#inline_comment"8448}8449]8450},8451"13": {8452"patterns": [8453{8454"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8455"captures": {8456"1": {8457"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8458},8459"2": {8460"name": "comment.block.cpp"8461},8462"3": {8463"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8464}8465}8466}8467]8468},8469"14": {8470"name": "variable.other.object.declare.cpp"8471},8472"15": {8473"patterns": [8474{8475"include": "#inline_comment"8476}8477]8478},8479"16": {8480"patterns": [8481{8482"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8483"captures": {8484"1": {8485"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8486},8487"2": {8488"name": "comment.block.cpp"8489},8490"3": {8491"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8492}8493}8494}8495]8496},8497"17": {8498"patterns": [8499{8500"include": "#inline_comment"8501}8502]8503},8504"18": {8505"patterns": [8506{8507"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8508"captures": {8509"1": {8510"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8511},8512"2": {8513"name": "comment.block.cpp"8514},8515"3": {8516"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8517}8518}8519}8520]8521},8522"19": {8523"patterns": [8524{8525"include": "#inline_comment"8526}8527]8528},8529"20": {8530"patterns": [8531{8532"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8533"captures": {8534"1": {8535"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8536},8537"2": {8538"name": "comment.block.cpp"8539},8540"3": {8541"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8542}8543}8544}8545]8546}8547}8548},8549{8550"match": "(\\bclass)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))?(?:(?:&|\\*)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:&|\\*))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?((?:(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))?)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:\\[((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))\\]((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?(?=,|\\)|\\n)",8551"captures": {8552"1": {8553"name": "storage.type.class.parameter.cpp"8554},8555"2": {8556"patterns": [8557{8558"include": "#inline_comment"8559}8560]8561},8562"3": {8563"patterns": [8564{8565"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8566"captures": {8567"1": {8568"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8569},8570"2": {8571"name": "comment.block.cpp"8572},8573"3": {8574"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8575}8576}8577}8578]8579},8580"4": {8581"name": "entity.name.type.class.parameter.cpp"8582},8583"5": {8584"patterns": [8585{8586"include": "#inline_comment"8587}8588]8589},8590"6": {8591"patterns": [8592{8593"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8594"captures": {8595"1": {8596"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8597},8598"2": {8599"name": "comment.block.cpp"8600},8601"3": {8602"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8603}8604}8605}8606]8607},8608"7": {8609"patterns": [8610{8611"match": "\\*",8612"name": "storage.modifier.pointer.cpp"8613},8614{8615"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",8616"captures": {8617"1": {8618"patterns": [8619{8620"include": "#inline_comment"8621}8622]8623},8624"2": {8625"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8626},8627"3": {8628"name": "comment.block.cpp"8629},8630"4": {8631"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8632}8633},8634"name": "invalid.illegal.reference-type.cpp"8635},8636{8637"match": "\\&",8638"name": "storage.modifier.reference.cpp"8639}8640]8641},8642"8": {8643"patterns": [8644{8645"include": "#inline_comment"8646}8647]8648},8649"9": {8650"patterns": [8651{8652"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8653"captures": {8654"1": {8655"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8656},8657"2": {8658"name": "comment.block.cpp"8659},8660"3": {8661"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8662}8663}8664}8665]8666},8667"10": {8668"patterns": [8669{8670"include": "#inline_comment"8671}8672]8673},8674"11": {8675"patterns": [8676{8677"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8678"captures": {8679"1": {8680"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8681},8682"2": {8683"name": "comment.block.cpp"8684},8685"3": {8686"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8687}8688}8689}8690]8691},8692"12": {8693"patterns": [8694{8695"include": "#inline_comment"8696}8697]8698},8699"13": {8700"patterns": [8701{8702"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8703"captures": {8704"1": {8705"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8706},8707"2": {8708"name": "comment.block.cpp"8709},8710"3": {8711"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8712}8713}8714}8715]8716},8717"14": {8718"name": "variable.other.object.declare.cpp"8719},8720"15": {8721"patterns": [8722{8723"include": "#inline_comment"8724}8725]8726},8727"16": {8728"patterns": [8729{8730"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8731"captures": {8732"1": {8733"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8734},8735"2": {8736"name": "comment.block.cpp"8737},8738"3": {8739"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8740}8741}8742}8743]8744},8745"17": {8746"patterns": [8747{8748"include": "#inline_comment"8749}8750]8751},8752"18": {8753"patterns": [8754{8755"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8756"captures": {8757"1": {8758"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8759},8760"2": {8761"name": "comment.block.cpp"8762},8763"3": {8764"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8765}8766}8767}8768]8769},8770"19": {8771"patterns": [8772{8773"include": "#inline_comment"8774}8775]8776},8777"20": {8778"patterns": [8779{8780"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8781"captures": {8782"1": {8783"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8784},8785"2": {8786"name": "comment.block.cpp"8787},8788"3": {8789"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8790}8791}8792}8793]8794}8795}8796}8797]8798},8799"parameter": {8800"begin": "((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?=\\w)",8801"end": "(?:(?=\\))|(,))",8802"beginCaptures": {8803"1": {8804"patterns": [8805{8806"include": "#inline_comment"8807}8808]8809},8810"2": {8811"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8812},8813"3": {8814"name": "comment.block.cpp"8815},8816"4": {8817"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8818}8819},8820"endCaptures": {8821"1": {8822"name": "punctuation.separator.delimiter.comma.cpp"8823}8824},8825"name": "meta.parameter.cpp",8826"patterns": [8827{8828"include": "#ever_present_context"8829},8830{8831"include": "#string_context"8832},8833{8834"include": "#function_pointer_parameter"8835},8836{8837"include": "#decltype"8838},8839{8840"include": "#vararg_ellipses"8841},8842{8843"match": "((?:((?:(?:thread_local)|(?:volatile)|(?:register)|(?:restrict)|(?:static)|(?:extern)|(?:const)))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))+)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:\\s*+(?<!\\w)(?:(?:(?:((?:(?:unsigned)|(?:wchar_t)|(?:double)|(?:signed)|(?:short)|(?:float)|(?:auto)|(?:void)|(?:long)|(?:char)|(?:bool)|(?:int)))|((?:(?:uint_least32_t)|(?:uint_least64_t)|(?:uint_least16_t)|(?:uint_fast64_t)|(?:uint_least8_t)|(?:int_least64_t)|(?:int_least32_t)|(?:int_least16_t)|(?:uint_fast16_t)|(?:uint_fast32_t)|(?:int_least8_t)|(?:int_fast16_t)|(?:int_fast32_t)|(?:int_fast64_t)|(?:uint_fast8_t)|(?:int_fast8_t)|(?:suseconds_t)|(?:useconds_t)|(?:uintmax_t)|(?:uintmax_t)|(?:in_port_t)|(?:uintmax_t)|(?:in_addr_t)|(?:blksize_t)|(?:uintptr_t)|(?:intmax_t)|(?:intptr_t)|(?:blkcnt_t)|(?:intmax_t)|(?:u_quad_t)|(?:uint16_t)|(?:uint32_t)|(?:uint64_t)|(?:ssize_t)|(?:fixpt_t)|(?:qaddr_t)|(?:u_short)|(?:int16_t)|(?:int32_t)|(?:int64_t)|(?:uint8_t)|(?:daddr_t)|(?:caddr_t)|(?:swblk_t)|(?:clock_t)|(?:segsz_t)|(?:nlink_t)|(?:time_t)|(?:u_long)|(?:ushort)|(?:quad_t)|(?:mode_t)|(?:size_t)|(?:u_char)|(?:int8_t)|(?:u_int)|(?:uid_t)|(?:off_t)|(?:pid_t)|(?:gid_t)|(?:dev_t)|(?:div_t)|(?:key_t)|(?:ino_t)|(?:id_t)|(?:id_t)|(?:uint))))|((?:(?:pthread_rwlockattr_t)|(?:pthread_mutexattr_t)|(?:pthread_condattr_t)|(?:pthread_rwlock_t)|(?:pthread_mutex_t)|(?:pthread_cond_t)|(?:pthread_attr_t)|(?:pthread_once_t)|(?:pthread_key_t)|(?:pthread_t))))|([a-zA-Z_]\\w*_t))(?!\\w)|((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\b\\b(?<!\\Wthread_local|^thread_local|\\Wvolatile|^volatile|\\Wregister|^register|\\Wrestrict|^restrict|\\Wstatic|^static|\\Wextern|^extern|\\Wconst|^const)))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?=,|\\)|=)",8844"captures": {8845"1": {8846"patterns": [8847{8848"include": "#storage_types"8849}8850]8851},8852"2": {8853"name": "storage.modifier.specifier.parameter.cpp"8854},8855"3": {8856"patterns": [8857{8858"include": "#inline_comment"8859}8860]8861},8862"4": {8863"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8864},8865"5": {8866"name": "comment.block.cpp"8867},8868"6": {8869"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8870},8871"7": {8872"patterns": [8873{8874"include": "#inline_comment"8875}8876]8877},8878"8": {8879"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8880},8881"9": {8882"name": "comment.block.cpp"8883},8884"10": {8885"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8886},8887"11": {8888"name": "storage.type.primitive.cpp storage.type.built-in.primitive.cpp"8889},8890"12": {8891"name": "storage.type.cpp storage.type.built-in.cpp"8892},8893"13": {8894"name": "support.type.posix-reserved.pthread.cpp support.type.built-in.posix-reserved.pthread.cpp"8895},8896"14": {8897"name": "support.type.posix-reserved.cpp support.type.built-in.posix-reserved.cpp"8898},8899"15": {8900"name": "entity.name.type.parameter.cpp"8901},8902"16": {8903"patterns": [8904{8905"include": "#inline_comment"8906}8907]8908},8909"17": {8910"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8911},8912"18": {8913"name": "comment.block.cpp"8914},8915"19": {8916"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8917}8918}8919},8920{8921"include": "#storage_types"8922},8923{8924"include": "#scope_resolution_parameter_inner_generated"8925},8926{8927"match": "(?:(?:struct)|(?:class)|(?:union)|(?:enum))",8928"name": "storage.type.$0.cpp"8929},8930{8931"begin": "(?<==)",8932"end": "(?:(?=\\))|(,))",8933"beginCaptures": {},8934"endCaptures": {8935"1": {8936"name": "punctuation.separator.delimiter.comma.cpp"8937}8938},8939"patterns": [8940{8941"include": "#evaluation_context"8942}8943]8944},8945{8946"match": "\\=",8947"name": "keyword.operator.assignment.cpp"8948},8949{8950"match": "(?<!\\s|\\(|,|:)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?=\\)|,|\\[|=|\\n)",8951"captures": {8952"1": {8953"patterns": [8954{8955"include": "#inline_comment"8956}8957]8958},8959"2": {8960"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8961},8962"3": {8963"name": "comment.block.cpp"8964},8965"4": {8966"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8967},8968"5": {8969"name": "variable.parameter.cpp"8970},8971"6": {8972"patterns": [8973{8974"include": "#inline_comment"8975}8976]8977},8978"7": {8979"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8980},8981"8": {8982"name": "comment.block.cpp"8983},8984"9": {8985"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8986}8987}8988},8989{8990"include": "#attributes_context"8991},8992{8993"begin": "\\[",8994"end": "\\]",8995"beginCaptures": {8996"0": {8997"name": "punctuation.definition.begin.bracket.square.array.type.cpp"8998}8999},9000"endCaptures": {9001"0": {9002"name": "punctuation.definition.end.bracket.square.array.type.cpp"9003}9004},9005"name": "meta.bracket.square.array.cpp",9006"patterns": [9007{9008"include": "#evaluation_context"9009}9010]9011},9012{9013"match": "(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*\\b(?<!\\Wstruct|^struct|\\Wclass|^class|\\Wunion|^union|\\Wenum|^enum)",9014"name": "entity.name.type.parameter.cpp"9015},9016{9017"include": "#template_call_range"9018},9019{9020"match": "((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))?(?:(?:&|\\*)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:&|\\*)",9021"captures": {9022"0": {9023"patterns": [9024{9025"match": "\\*",9026"name": "storage.modifier.pointer.cpp"9027},9028{9029"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",9030"captures": {9031"1": {9032"patterns": [9033{9034"include": "#inline_comment"9035}9036]9037},9038"2": {9039"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9040},9041"3": {9042"name": "comment.block.cpp"9043},9044"4": {9045"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9046}9047},9048"name": "invalid.illegal.reference-type.cpp"9049},9050{9051"match": "\\&",9052"name": "storage.modifier.reference.cpp"9053}9054]9055},9056"1": {9057"patterns": [9058{9059"include": "#inline_comment"9060}9061]9062},9063"2": {9064"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9065},9066"3": {9067"name": "comment.block.cpp"9068},9069"4": {9070"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9071},9072"5": {9073"patterns": [9074{9075"include": "#inline_comment"9076}9077]9078},9079"6": {9080"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9081},9082"7": {9083"name": "comment.block.cpp"9084},9085"8": {9086"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9087}9088}9089},9090{9091"include": "#ever_present_context"9092}9093]9094},9095"parameter_class": {9096"match": "(\\bclass)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))?(?:(?:&|\\*)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:&|\\*))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?((?:(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))?)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:\\[((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))\\]((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?(?=,|\\)|\\n)",9097"captures": {9098"1": {9099"name": "storage.type.class.parameter.cpp"9100},9101"2": {9102"patterns": [9103{9104"include": "#inline_comment"9105}9106]9107},9108"3": {9109"patterns": [9110{9111"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9112"captures": {9113"1": {9114"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9115},9116"2": {9117"name": "comment.block.cpp"9118},9119"3": {9120"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9121}9122}9123}9124]9125},9126"4": {9127"name": "entity.name.type.class.parameter.cpp"9128},9129"5": {9130"patterns": [9131{9132"include": "#inline_comment"9133}9134]9135},9136"6": {9137"patterns": [9138{9139"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9140"captures": {9141"1": {9142"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9143},9144"2": {9145"name": "comment.block.cpp"9146},9147"3": {9148"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9149}9150}9151}9152]9153},9154"7": {9155"patterns": [9156{9157"match": "\\*",9158"name": "storage.modifier.pointer.cpp"9159},9160{9161"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",9162"captures": {9163"1": {9164"patterns": [9165{9166"include": "#inline_comment"9167}9168]9169},9170"2": {9171"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9172},9173"3": {9174"name": "comment.block.cpp"9175},9176"4": {9177"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9178}9179},9180"name": "invalid.illegal.reference-type.cpp"9181},9182{9183"match": "\\&",9184"name": "storage.modifier.reference.cpp"9185}9186]9187},9188"8": {9189"patterns": [9190{9191"include": "#inline_comment"9192}9193]9194},9195"9": {9196"patterns": [9197{9198"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9199"captures": {9200"1": {9201"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9202},9203"2": {9204"name": "comment.block.cpp"9205},9206"3": {9207"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9208}9209}9210}9211]9212},9213"10": {9214"patterns": [9215{9216"include": "#inline_comment"9217}9218]9219},9220"11": {9221"patterns": [9222{9223"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9224"captures": {9225"1": {9226"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9227},9228"2": {9229"name": "comment.block.cpp"9230},9231"3": {9232"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9233}9234}9235}9236]9237},9238"12": {9239"patterns": [9240{9241"include": "#inline_comment"9242}9243]9244},9245"13": {9246"patterns": [9247{9248"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9249"captures": {9250"1": {9251"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9252},9253"2": {9254"name": "comment.block.cpp"9255},9256"3": {9257"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9258}9259}9260}9261]9262},9263"14": {9264"name": "variable.other.object.declare.cpp"9265},9266"15": {9267"patterns": [9268{9269"include": "#inline_comment"9270}9271]9272},9273"16": {9274"patterns": [9275{9276"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9277"captures": {9278"1": {9279"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9280},9281"2": {9282"name": "comment.block.cpp"9283},9284"3": {9285"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9286}9287}9288}9289]9290},9291"17": {9292"patterns": [9293{9294"include": "#inline_comment"9295}9296]9297},9298"18": {9299"patterns": [9300{9301"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9302"captures": {9303"1": {9304"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9305},9306"2": {9307"name": "comment.block.cpp"9308},9309"3": {9310"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9311}9312}9313}9314]9315},9316"19": {9317"patterns": [9318{9319"include": "#inline_comment"9320}9321]9322},9323"20": {9324"patterns": [9325{9326"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9327"captures": {9328"1": {9329"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9330},9331"2": {9332"name": "comment.block.cpp"9333},9334"3": {9335"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9336}9337}9338}9339]9340}9341}9342},9343"parameter_enum": {9344"match": "(\\benum)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))?(?:(?:&|\\*)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:&|\\*))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?((?:(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))?)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:\\[((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))\\]((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?(?=,|\\)|\\n)",9345"captures": {9346"1": {9347"name": "storage.type.enum.parameter.cpp"9348},9349"2": {9350"patterns": [9351{9352"include": "#inline_comment"9353}9354]9355},9356"3": {9357"patterns": [9358{9359"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9360"captures": {9361"1": {9362"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9363},9364"2": {9365"name": "comment.block.cpp"9366},9367"3": {9368"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9369}9370}9371}9372]9373},9374"4": {9375"name": "entity.name.type.enum.parameter.cpp"9376},9377"5": {9378"patterns": [9379{9380"include": "#inline_comment"9381}9382]9383},9384"6": {9385"patterns": [9386{9387"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9388"captures": {9389"1": {9390"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9391},9392"2": {9393"name": "comment.block.cpp"9394},9395"3": {9396"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9397}9398}9399}9400]9401},9402"7": {9403"patterns": [9404{9405"match": "\\*",9406"name": "storage.modifier.pointer.cpp"9407},9408{9409"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",9410"captures": {9411"1": {9412"patterns": [9413{9414"include": "#inline_comment"9415}9416]9417},9418"2": {9419"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9420},9421"3": {9422"name": "comment.block.cpp"9423},9424"4": {9425"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9426}9427},9428"name": "invalid.illegal.reference-type.cpp"9429},9430{9431"match": "\\&",9432"name": "storage.modifier.reference.cpp"9433}9434]9435},9436"8": {9437"patterns": [9438{9439"include": "#inline_comment"9440}9441]9442},9443"9": {9444"patterns": [9445{9446"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9447"captures": {9448"1": {9449"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9450},9451"2": {9452"name": "comment.block.cpp"9453},9454"3": {9455"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9456}9457}9458}9459]9460},9461"10": {9462"patterns": [9463{9464"include": "#inline_comment"9465}9466]9467},9468"11": {9469"patterns": [9470{9471"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9472"captures": {9473"1": {9474"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9475},9476"2": {9477"name": "comment.block.cpp"9478},9479"3": {9480"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9481}9482}9483}9484]9485},9486"12": {9487"patterns": [9488{9489"include": "#inline_comment"9490}9491]9492},9493"13": {9494"patterns": [9495{9496"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9497"captures": {9498"1": {9499"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9500},9501"2": {9502"name": "comment.block.cpp"9503},9504"3": {9505"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9506}9507}9508}9509]9510},9511"14": {9512"name": "variable.other.object.declare.cpp"9513},9514"15": {9515"patterns": [9516{9517"include": "#inline_comment"9518}9519]9520},9521"16": {9522"patterns": [9523{9524"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9525"captures": {9526"1": {9527"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9528},9529"2": {9530"name": "comment.block.cpp"9531},9532"3": {9533"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9534}9535}9536}9537]9538},9539"17": {9540"patterns": [9541{9542"include": "#inline_comment"9543}9544]9545},9546"18": {9547"patterns": [9548{9549"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9550"captures": {9551"1": {9552"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9553},9554"2": {9555"name": "comment.block.cpp"9556},9557"3": {9558"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9559}9560}9561}9562]9563},9564"19": {9565"patterns": [9566{9567"include": "#inline_comment"9568}9569]9570},9571"20": {9572"patterns": [9573{9574"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9575"captures": {9576"1": {9577"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9578},9579"2": {9580"name": "comment.block.cpp"9581},9582"3": {9583"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9584}9585}9586}9587]9588}9589}9590},9591"parameter_or_maybe_value": {9592"begin": "((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?=\\w)",9593"end": "(?:(?=\\))|(,))",9594"beginCaptures": {9595"1": {9596"patterns": [9597{9598"include": "#inline_comment"9599}9600]9601},9602"2": {9603"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9604},9605"3": {9606"name": "comment.block.cpp"9607},9608"4": {9609"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9610}9611},9612"endCaptures": {9613"1": {9614"name": "punctuation.separator.delimiter.comma.cpp"9615}9616},9617"name": "meta.parameter.cpp",9618"patterns": [9619{9620"include": "#ever_present_context"9621},9622{9623"include": "#function_pointer_parameter"9624},9625{9626"include": "#memory_operators"9627},9628{9629"include": "#builtin_storage_type_initilizer"9630},9631{9632"include": "#curly_initializer"9633},9634{9635"include": "#decltype"9636},9637{9638"include": "#vararg_ellipses"9639},9640{9641"match": "((?:((?:(?:thread_local)|(?:volatile)|(?:register)|(?:restrict)|(?:static)|(?:extern)|(?:const)))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))+)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:\\s*+(?<!\\w)(?:(?:(?:((?:(?:unsigned)|(?:wchar_t)|(?:double)|(?:signed)|(?:short)|(?:float)|(?:auto)|(?:void)|(?:long)|(?:char)|(?:bool)|(?:int)))|((?:(?:uint_least32_t)|(?:uint_least64_t)|(?:uint_least16_t)|(?:uint_fast64_t)|(?:uint_least8_t)|(?:int_least64_t)|(?:int_least32_t)|(?:int_least16_t)|(?:uint_fast16_t)|(?:uint_fast32_t)|(?:int_least8_t)|(?:int_fast16_t)|(?:int_fast32_t)|(?:int_fast64_t)|(?:uint_fast8_t)|(?:int_fast8_t)|(?:suseconds_t)|(?:useconds_t)|(?:uintmax_t)|(?:uintmax_t)|(?:in_port_t)|(?:uintmax_t)|(?:in_addr_t)|(?:blksize_t)|(?:uintptr_t)|(?:intmax_t)|(?:intptr_t)|(?:blkcnt_t)|(?:intmax_t)|(?:u_quad_t)|(?:uint16_t)|(?:uint32_t)|(?:uint64_t)|(?:ssize_t)|(?:fixpt_t)|(?:qaddr_t)|(?:u_short)|(?:int16_t)|(?:int32_t)|(?:int64_t)|(?:uint8_t)|(?:daddr_t)|(?:caddr_t)|(?:swblk_t)|(?:clock_t)|(?:segsz_t)|(?:nlink_t)|(?:time_t)|(?:u_long)|(?:ushort)|(?:quad_t)|(?:mode_t)|(?:size_t)|(?:u_char)|(?:int8_t)|(?:u_int)|(?:uid_t)|(?:off_t)|(?:pid_t)|(?:gid_t)|(?:dev_t)|(?:div_t)|(?:key_t)|(?:ino_t)|(?:id_t)|(?:id_t)|(?:uint))))|((?:(?:pthread_rwlockattr_t)|(?:pthread_mutexattr_t)|(?:pthread_condattr_t)|(?:pthread_rwlock_t)|(?:pthread_mutex_t)|(?:pthread_cond_t)|(?:pthread_attr_t)|(?:pthread_once_t)|(?:pthread_key_t)|(?:pthread_t))))|([a-zA-Z_]\\w*_t))(?!\\w)|((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\b\\b(?<!\\Wthread_local|^thread_local|\\Wvolatile|^volatile|\\Wregister|^register|\\Wrestrict|^restrict|\\Wstatic|^static|\\Wextern|^extern|\\Wconst|^const)))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?=,|\\)|=)",9642"captures": {9643"1": {9644"patterns": [9645{9646"include": "#storage_types"9647}9648]9649},9650"2": {9651"name": "storage.modifier.specifier.parameter.cpp"9652},9653"3": {9654"patterns": [9655{9656"include": "#inline_comment"9657}9658]9659},9660"4": {9661"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9662},9663"5": {9664"name": "comment.block.cpp"9665},9666"6": {9667"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9668},9669"7": {9670"patterns": [9671{9672"include": "#inline_comment"9673}9674]9675},9676"8": {9677"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9678},9679"9": {9680"name": "comment.block.cpp"9681},9682"10": {9683"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9684},9685"11": {9686"name": "storage.type.primitive.cpp storage.type.built-in.primitive.cpp"9687},9688"12": {9689"name": "storage.type.cpp storage.type.built-in.cpp"9690},9691"13": {9692"name": "support.type.posix-reserved.pthread.cpp support.type.built-in.posix-reserved.pthread.cpp"9693},9694"14": {9695"name": "support.type.posix-reserved.cpp support.type.built-in.posix-reserved.cpp"9696},9697"15": {9698"name": "entity.name.type.parameter.cpp"9699},9700"16": {9701"patterns": [9702{9703"include": "#inline_comment"9704}9705]9706},9707"17": {9708"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9709},9710"18": {9711"name": "comment.block.cpp"9712},9713"19": {9714"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9715}9716}9717},9718{9719"include": "#storage_types"9720},9721{9722"include": "#function_call"9723},9724{9725"include": "#scope_resolution_parameter_inner_generated"9726},9727{9728"match": "(?:(?:struct)|(?:class)|(?:union)|(?:enum))",9729"name": "storage.type.$0.cpp"9730},9731{9732"begin": "(?<==)",9733"end": "(?:(?=\\))|(,))",9734"beginCaptures": {},9735"endCaptures": {9736"1": {9737"name": "punctuation.separator.delimiter.comma.cpp"9738}9739},9740"patterns": [9741{9742"include": "#evaluation_context"9743}9744]9745},9746{9747"match": "(?<!\\s|\\(|,|:)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?=(?:\\)|,|\\[|=|\\/\\/|(?:\\n|$)))",9748"captures": {9749"1": {9750"patterns": [9751{9752"include": "#inline_comment"9753}9754]9755},9756"2": {9757"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9758},9759"3": {9760"name": "comment.block.cpp"9761},9762"4": {9763"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9764},9765"5": {9766"name": "variable.parameter.cpp"9767},9768"6": {9769"patterns": [9770{9771"include": "#inline_comment"9772}9773]9774},9775"7": {9776"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9777},9778"8": {9779"name": "comment.block.cpp"9780},9781"9": {9782"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9783}9784}9785},9786{9787"include": "#attributes_context"9788},9789{9790"begin": "\\[",9791"end": "\\]",9792"beginCaptures": {9793"0": {9794"name": "punctuation.definition.begin.bracket.square.array.type.cpp"9795}9796},9797"endCaptures": {9798"0": {9799"name": "punctuation.definition.end.bracket.square.array.type.cpp"9800}9801},9802"name": "meta.bracket.square.array.cpp",9803"patterns": [9804{9805"include": "#evaluation_context"9806}9807]9808},9809{9810"match": "(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*\\b(?<!\\Wstruct|^struct|\\Wclass|^class|\\Wunion|^union|\\Wenum|^enum)",9811"name": "entity.name.type.parameter.cpp"9812},9813{9814"include": "#template_call_range"9815},9816{9817"match": "((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))?(?:(?:&|\\*)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:&|\\*)",9818"captures": {9819"0": {9820"patterns": [9821{9822"match": "\\*",9823"name": "storage.modifier.pointer.cpp"9824},9825{9826"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",9827"captures": {9828"1": {9829"patterns": [9830{9831"include": "#inline_comment"9832}9833]9834},9835"2": {9836"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9837},9838"3": {9839"name": "comment.block.cpp"9840},9841"4": {9842"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9843}9844},9845"name": "invalid.illegal.reference-type.cpp"9846},9847{9848"match": "\\&",9849"name": "storage.modifier.reference.cpp"9850}9851]9852},9853"1": {9854"patterns": [9855{9856"include": "#inline_comment"9857}9858]9859},9860"2": {9861"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9862},9863"3": {9864"name": "comment.block.cpp"9865},9866"4": {9867"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9868},9869"5": {9870"patterns": [9871{9872"include": "#inline_comment"9873}9874]9875},9876"6": {9877"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9878},9879"7": {9880"name": "comment.block.cpp"9881},9882"8": {9883"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9884}9885}9886},9887{9888"include": "#evaluation_context"9889},9890{9891"include": "#ever_present_context"9892}9893]9894},9895"parameter_struct": {9896"match": "(\\bstruct)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))?(?:(?:&|\\*)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:&|\\*))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?((?:(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))?)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:\\[((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))\\]((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?(?=,|\\)|\\n)",9897"captures": {9898"1": {9899"name": "storage.type.struct.parameter.cpp"9900},9901"2": {9902"patterns": [9903{9904"include": "#inline_comment"9905}9906]9907},9908"3": {9909"patterns": [9910{9911"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9912"captures": {9913"1": {9914"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9915},9916"2": {9917"name": "comment.block.cpp"9918},9919"3": {9920"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9921}9922}9923}9924]9925},9926"4": {9927"name": "entity.name.type.struct.parameter.cpp"9928},9929"5": {9930"patterns": [9931{9932"include": "#inline_comment"9933}9934]9935},9936"6": {9937"patterns": [9938{9939"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9940"captures": {9941"1": {9942"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9943},9944"2": {9945"name": "comment.block.cpp"9946},9947"3": {9948"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9949}9950}9951}9952]9953},9954"7": {9955"patterns": [9956{9957"match": "\\*",9958"name": "storage.modifier.pointer.cpp"9959},9960{9961"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",9962"captures": {9963"1": {9964"patterns": [9965{9966"include": "#inline_comment"9967}9968]9969},9970"2": {9971"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9972},9973"3": {9974"name": "comment.block.cpp"9975},9976"4": {9977"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9978}9979},9980"name": "invalid.illegal.reference-type.cpp"9981},9982{9983"match": "\\&",9984"name": "storage.modifier.reference.cpp"9985}9986]9987},9988"8": {9989"patterns": [9990{9991"include": "#inline_comment"9992}9993]9994},9995"9": {9996"patterns": [9997{9998"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9999"captures": {10000"1": {10001"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10002},10003"2": {10004"name": "comment.block.cpp"10005},10006"3": {10007"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10008}10009}10010}10011]10012},10013"10": {10014"patterns": [10015{10016"include": "#inline_comment"10017}10018]10019},10020"11": {10021"patterns": [10022{10023"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10024"captures": {10025"1": {10026"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10027},10028"2": {10029"name": "comment.block.cpp"10030},10031"3": {10032"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10033}10034}10035}10036]10037},10038"12": {10039"patterns": [10040{10041"include": "#inline_comment"10042}10043]10044},10045"13": {10046"patterns": [10047{10048"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10049"captures": {10050"1": {10051"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10052},10053"2": {10054"name": "comment.block.cpp"10055},10056"3": {10057"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10058}10059}10060}10061]10062},10063"14": {10064"name": "variable.other.object.declare.cpp"10065},10066"15": {10067"patterns": [10068{10069"include": "#inline_comment"10070}10071]10072},10073"16": {10074"patterns": [10075{10076"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10077"captures": {10078"1": {10079"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10080},10081"2": {10082"name": "comment.block.cpp"10083},10084"3": {10085"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10086}10087}10088}10089]10090},10091"17": {10092"patterns": [10093{10094"include": "#inline_comment"10095}10096]10097},10098"18": {10099"patterns": [10100{10101"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10102"captures": {10103"1": {10104"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10105},10106"2": {10107"name": "comment.block.cpp"10108},10109"3": {10110"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10111}10112}10113}10114]10115},10116"19": {10117"patterns": [10118{10119"include": "#inline_comment"10120}10121]10122},10123"20": {10124"patterns": [10125{10126"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10127"captures": {10128"1": {10129"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10130},10131"2": {10132"name": "comment.block.cpp"10133},10134"3": {10135"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10136}10137}10138}10139]10140}10141}10142},10143"parameter_union": {10144"match": "(\\bunion)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))?(?:(?:&|\\*)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:&|\\*))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?((?:(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))?)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:\\[((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))\\]((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?(?=,|\\)|\\n)",10145"captures": {10146"1": {10147"name": "storage.type.union.parameter.cpp"10148},10149"2": {10150"patterns": [10151{10152"include": "#inline_comment"10153}10154]10155},10156"3": {10157"patterns": [10158{10159"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10160"captures": {10161"1": {10162"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10163},10164"2": {10165"name": "comment.block.cpp"10166},10167"3": {10168"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10169}10170}10171}10172]10173},10174"4": {10175"name": "entity.name.type.union.parameter.cpp"10176},10177"5": {10178"patterns": [10179{10180"include": "#inline_comment"10181}10182]10183},10184"6": {10185"patterns": [10186{10187"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10188"captures": {10189"1": {10190"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10191},10192"2": {10193"name": "comment.block.cpp"10194},10195"3": {10196"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10197}10198}10199}10200]10201},10202"7": {10203"patterns": [10204{10205"match": "\\*",10206"name": "storage.modifier.pointer.cpp"10207},10208{10209"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",10210"captures": {10211"1": {10212"patterns": [10213{10214"include": "#inline_comment"10215}10216]10217},10218"2": {10219"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10220},10221"3": {10222"name": "comment.block.cpp"10223},10224"4": {10225"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10226}10227},10228"name": "invalid.illegal.reference-type.cpp"10229},10230{10231"match": "\\&",10232"name": "storage.modifier.reference.cpp"10233}10234]10235},10236"8": {10237"patterns": [10238{10239"include": "#inline_comment"10240}10241]10242},10243"9": {10244"patterns": [10245{10246"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10247"captures": {10248"1": {10249"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10250},10251"2": {10252"name": "comment.block.cpp"10253},10254"3": {10255"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10256}10257}10258}10259]10260},10261"10": {10262"patterns": [10263{10264"include": "#inline_comment"10265}10266]10267},10268"11": {10269"patterns": [10270{10271"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10272"captures": {10273"1": {10274"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10275},10276"2": {10277"name": "comment.block.cpp"10278},10279"3": {10280"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10281}10282}10283}10284]10285},10286"12": {10287"patterns": [10288{10289"include": "#inline_comment"10290}10291]10292},10293"13": {10294"patterns": [10295{10296"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10297"captures": {10298"1": {10299"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10300},10301"2": {10302"name": "comment.block.cpp"10303},10304"3": {10305"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10306}10307}10308}10309]10310},10311"14": {10312"name": "variable.other.object.declare.cpp"10313},10314"15": {10315"patterns": [10316{10317"include": "#inline_comment"10318}10319]10320},10321"16": {10322"patterns": [10323{10324"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10325"captures": {10326"1": {10327"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10328},10329"2": {10330"name": "comment.block.cpp"10331},10332"3": {10333"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10334}10335}10336}10337]10338},10339"17": {10340"patterns": [10341{10342"include": "#inline_comment"10343}10344]10345},10346"18": {10347"patterns": [10348{10349"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10350"captures": {10351"1": {10352"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10353},10354"2": {10355"name": "comment.block.cpp"10356},10357"3": {10358"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10359}10360}10361}10362]10363},10364"19": {10365"patterns": [10366{10367"include": "#inline_comment"10368}10369]10370},10371"20": {10372"patterns": [10373{10374"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10375"captures": {10376"1": {10377"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10378},10379"2": {10380"name": "comment.block.cpp"10381},10382"3": {10383"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10384}10385}10386}10387]10388}10389}10390},10391"parentheses": {10392"begin": "\\(",10393"end": "\\)",10394"beginCaptures": {10395"0": {10396"name": "punctuation.section.parens.begin.bracket.round.cpp"10397}10398},10399"endCaptures": {10400"0": {10401"name": "punctuation.section.parens.end.bracket.round.cpp"10402}10403},10404"name": "meta.parens.cpp",10405"patterns": [10406{10407"include": "#over_qualified_types"10408},10409{10410"match": "(?<!:):(?!:)",10411"name": "punctuation.separator.colon.range-based.cpp"10412},10413{10414"include": "#evaluation_context"10415}10416]10417},10418"pragma": {10419"begin": "^((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(#)(?:\\s+)?pragma\\b",10420"end": "(?<!\\\\)(?:(?=\\n)|(?<=^\\n|[^\\\\]\\n)(?=$))",10421"beginCaptures": {10422"0": {10423"name": "keyword.control.directive.pragma.cpp"10424},10425"1": {10426"patterns": [10427{10428"include": "#inline_comment"10429}10430]10431},10432"2": {10433"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10434},10435"3": {10436"name": "comment.block.cpp"10437},10438"4": {10439"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10440},10441"5": {10442"name": "punctuation.definition.directive.cpp"10443}10444},10445"endCaptures": {},10446"name": "meta.preprocessor.pragma.cpp",10447"patterns": [10448{10449"include": "#comments"10450},10451{10452"include": "#string_context"10453},10454{10455"match": "[a-zA-Z_$][\\w\\-$]*",10456"name": "entity.other.attribute-name.pragma.preprocessor.cpp"10457},10458{10459"include": "#preprocessor_number_literal"10460},10461{10462"include": "#line_continuation_character"10463}10464]10465},10466"pragma_mark": {10467"match": "(^((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(#)(?:\\s+)?pragma\\s+mark)\\s+(.*)",10468"captures": {10469"1": {10470"name": "keyword.control.directive.pragma.pragma-mark.cpp"10471},10472"2": {10473"patterns": [10474{10475"include": "#inline_comment"10476}10477]10478},10479"3": {10480"patterns": [10481{10482"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10483"captures": {10484"1": {10485"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10486},10487"2": {10488"name": "comment.block.cpp"10489},10490"3": {10491"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10492}10493}10494}10495]10496},10497"4": {10498"name": "punctuation.definition.directive.cpp"10499},10500"5": {10501"name": "entity.name.tag.pragma-mark.cpp"10502}10503},10504"name": "meta.preprocessor.pragma.cpp"10505},10506"predefined_macros": {10507"patterns": [10508{10509"match": "\\b(__cplusplus|__DATE__|__FILE__|__LINE__|__STDC__|__STDC_HOSTED__|__STDC_NO_COMPLEX__|__STDC_VERSION__|__STDCPP_THREADS__|__TIME__|NDEBUG|__OBJC__|__ASSEMBLER__|__ATOM__|__AVX__|__AVX2__|_CHAR_UNSIGNED|__CLR_VER|_CONTROL_FLOW_GUARD|__COUNTER__|__cplusplus_cli|__cplusplus_winrt|_CPPRTTI|_CPPUNWIND|_DEBUG|_DLL|__FUNCDNAME__|__FUNCSIG__|__FUNCTION__|_INTEGRAL_MAX_BITS|__INTELLISENSE__|_ISO_VOLATILE|_KERNEL_MODE|_M_AMD64|_M_ARM|_M_ARM_ARMV7VE|_M_ARM_FP|_M_ARM64|_M_CEE|_M_CEE_PURE|_M_CEE_SAFE|_M_FP_EXCEPT|_M_FP_FAST|_M_FP_PRECISE|_M_FP_STRICT|_M_IX86|_M_IX86_FP|_M_X64|_MANAGED|_MSC_BUILD|_MSC_EXTENSIONS|_MSC_FULL_VER|_MSC_VER|_MSVC_LANG|__MSVC_RUNTIME_CHECKS|_MT|_NATIVE_WCHAR_T_DEFINED|_OPENMP|_PREFAST|__TIMESTAMP__|_VC_NO_DEFAULTLIB|_WCHAR_T_DEFINED|_WIN32|_WIN64|_WINRT_DLL|_ATL_VER|_MFC_VER|__GFORTRAN__|__GNUC__|__GNUC_MINOR__|__GNUC_PATCHLEVEL__|__GNUG__|__STRICT_ANSI__|__BASE_FILE__|__INCLUDE_LEVEL__|__ELF__|__VERSION__|__OPTIMIZE__|__OPTIMIZE_SIZE__|__NO_INLINE__|__GNUC_STDC_INLINE__|__CHAR_UNSIGNED__|__WCHAR_UNSIGNED__|__REGISTER_PREFIX__|__REGISTER_PREFIX__|__SIZE_TYPE__|__PTRDIFF_TYPE__|__WCHAR_TYPE__|__WINT_TYPE__|__INTMAX_TYPE__|__UINTMAX_TYPE__|__SIG_ATOMIC_TYPE__|__INT8_TYPE__|__INT16_TYPE__|__INT32_TYPE__|__INT64_TYPE__|__UINT8_TYPE__|__UINT16_TYPE__|__UINT32_TYPE__|__UINT64_TYPE__|__INT_LEAST8_TYPE__|__INT_LEAST16_TYPE__|__INT_LEAST32_TYPE__|__INT_LEAST64_TYPE__|__UINT_LEAST8_TYPE__|__UINT_LEAST16_TYPE__|__UINT_LEAST32_TYPE__|__UINT_LEAST64_TYPE__|__INT_FAST8_TYPE__|__INT_FAST16_TYPE__|__INT_FAST32_TYPE__|__INT_FAST64_TYPE__|__UINT_FAST8_TYPE__|__UINT_FAST16_TYPE__|__UINT_FAST32_TYPE__|__UINT_FAST64_TYPE__|__INTPTR_TYPE__|__UINTPTR_TYPE__|__CHAR_BIT__|__SCHAR_MAX__|__WCHAR_MAX__|__SHRT_MAX__|__INT_MAX__|__LONG_MAX__|__LONG_LONG_MAX__|__WINT_MAX__|__SIZE_MAX__|__PTRDIFF_MAX__|__INTMAX_MAX__|__UINTMAX_MAX__|__SIG_ATOMIC_MAX__|__INT8_MAX__|__INT16_MAX__|__INT32_MAX__|__INT64_MAX__|__UINT8_MAX__|__UINT16_MAX__|__UINT32_MAX__|__UINT64_MAX__|__INT_LEAST8_MAX__|__INT_LEAST16_MAX__|__INT_LEAST32_MAX__|__INT_LEAST64_MAX__|__UINT_LEAST8_MAX__|__UINT_LEAST16_MAX__|__UINT_LEAST32_MAX__|__UINT_LEAST64_MAX__|__INT_FAST8_MAX__|__INT_FAST16_MAX__|__INT_FAST32_MAX__|__INT_FAST64_MAX__|__UINT_FAST8_MAX__|__UINT_FAST16_MAX__|__UINT_FAST32_MAX__|__UINT_FAST64_MAX__|__INTPTR_MAX__|__UINTPTR_MAX__|__WCHAR_MIN__|__WINT_MIN__|__SIG_ATOMIC_MIN__|__SCHAR_WIDTH__|__SHRT_WIDTH__|__INT_WIDTH__|__LONG_WIDTH__|__LONG_LONG_WIDTH__|__PTRDIFF_WIDTH__|__SIG_ATOMIC_WIDTH__|__SIZE_WIDTH__|__WCHAR_WIDTH__|__WINT_WIDTH__|__INT_LEAST8_WIDTH__|__INT_LEAST16_WIDTH__|__INT_LEAST32_WIDTH__|__INT_LEAST64_WIDTH__|__INT_FAST8_WIDTH__|__INT_FAST16_WIDTH__|__INT_FAST32_WIDTH__|__INT_FAST64_WIDTH__|__INTPTR_WIDTH__|__INTMAX_WIDTH__|__SIZEOF_INT__|__SIZEOF_LONG__|__SIZEOF_LONG_LONG__|__SIZEOF_SHORT__|__SIZEOF_POINTER__|__SIZEOF_FLOAT__|__SIZEOF_DOUBLE__|__SIZEOF_LONG_DOUBLE__|__SIZEOF_SIZE_T__|__SIZEOF_WCHAR_T__|__SIZEOF_WINT_T__|__SIZEOF_PTRDIFF_T__|__BYTE_ORDER__|__ORDER_LITTLE_ENDIAN__|__ORDER_BIG_ENDIAN__|__ORDER_PDP_ENDIAN__|__FLOAT_WORD_ORDER__|__DEPRECATED|__EXCEPTIONS|__GXX_RTTI|__USING_SJLJ_EXCEPTIONS__|__GXX_EXPERIMENTAL_CXX0X__|__GXX_WEAK__|__NEXT_RUNTIME__|__LP64__|_LP64|__SSP__|__SSP_ALL__|__SSP_STRONG__|__SSP_EXPLICIT__|__SANITIZE_ADDRESS__|__SANITIZE_THREAD__|__GCC_HAVE_SYNC_COMPARE_AND_SWAP_1|__GCC_HAVE_SYNC_COMPARE_AND_SWAP_2|__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4|__GCC_HAVE_SYNC_COMPARE_AND_SWAP_8|__GCC_HAVE_SYNC_COMPARE_AND_SWAP_16|__HAVE_SPECULATION_SAFE_VALUE|__GCC_HAVE_DWARF2_CFI_ASM|__FP_FAST_FMA|__FP_FAST_FMAF|__FP_FAST_FMAL|__FP_FAST_FMAF16|__FP_FAST_FMAF32|__FP_FAST_FMAF64|__FP_FAST_FMAF128|__FP_FAST_FMAF32X|__FP_FAST_FMAF64X|__FP_FAST_FMAF128X|__GCC_IEC_559|__GCC_IEC_559_COMPLEX|__NO_MATH_ERRNO__|__has_builtin|__has_feature|__has_extension|__has_cpp_attribute|__has_c_attribute|__has_attribute|__has_declspec_attribute|__is_identifier|__has_include|__has_include_next|__has_warning|__BASE_FILE__|__FILE_NAME__|__clang__|__clang_major__|__clang_minor__|__clang_patchlevel__|__clang_version__|__fp16|_Float16)\\b",10510"captures": {10511"1": {10512"name": "entity.name.other.preprocessor.macro.predefined.$1.cpp"10513}10514}10515},10516{10517"match": "\\b__([A-Z_]+)__\\b",10518"name": "entity.name.other.preprocessor.macro.predefined.probably.$1.cpp"10519}10520]10521},10522"preprocessor_conditional_context": {10523"patterns": [10524{10525"include": "#preprocessor_conditional_defined"10526},10527{10528"include": "#comments"10529},10530{10531"include": "#language_constants"10532},10533{10534"include": "#string_context"10535},10536{10537"include": "#d9bc4796b0b_preprocessor_number_literal"10538},10539{10540"include": "#operators"10541},10542{10543"include": "#predefined_macros"10544},10545{10546"include": "#macro_name"10547},10548{10549"include": "#line_continuation_character"10550}10551]10552},10553"preprocessor_conditional_defined": {10554"begin": "((?<!\\w)defined(?!\\w))(\\()",10555"end": "(?:\\)|(?<!\\\\)(?:(?=\\n)|(?<=^\\n|[^\\\\]\\n)(?=$)))",10556"beginCaptures": {10557"1": {10558"name": "keyword.control.directive.conditional.defined.cpp"10559},10560"2": {10561"name": "punctuation.section.parens.control.defined.cpp"10562}10563},10564"endCaptures": {10565"0": {10566"name": "punctuation.section.parens.control.defined.cpp"10567}10568},10569"patterns": [10570{10571"include": "#macro_name"10572}10573]10574},10575"preprocessor_conditional_parentheses": {10576"begin": "\\(",10577"end": "\\)",10578"beginCaptures": {10579"0": {10580"name": "punctuation.section.parens.begin.bracket.round.cpp"10581}10582},10583"endCaptures": {10584"0": {10585"name": "punctuation.section.parens.end.bracket.round.cpp"10586}10587},10588"name": "meta.parens.preprocessor.conditional.cpp"10589},10590"preprocessor_conditional_range": {10591"begin": "^((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(#)(?:\\s+)?((?:(?:ifndef|ifdef)|if))",10592"end": "(?<!\\\\)(?:(?=\\n)|(?<=^\\n|[^\\\\]\\n)(?=$))",10593"beginCaptures": {10594"0": {10595"name": "keyword.control.directive.conditional.$6.cpp"10596},10597"1": {10598"patterns": [10599{10600"include": "#inline_comment"10601}10602]10603},10604"2": {10605"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10606},10607"3": {10608"name": "comment.block.cpp"10609},10610"4": {10611"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10612},10613"5": {10614"name": "punctuation.definition.directive.cpp"10615},10616"6": {}10617},10618"endCaptures": {},10619"contentName": "meta.preprocessor.conditional",10620"patterns": [10621{10622"include": "#preprocessor_conditional_context"10623}10624]10625},10626"preprocessor_conditional_standalone": {10627"match": "^((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(#)(?:\\s+)?((?<!\\w)(?:endif|else|elif)(?!\\w))",10628"captures": {10629"1": {10630"patterns": [10631{10632"include": "#inline_comment"10633}10634]10635},10636"2": {10637"patterns": [10638{10639"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10640"captures": {10641"1": {10642"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10643},10644"2": {10645"name": "comment.block.cpp"10646},10647"3": {10648"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10649}10650}10651}10652]10653},10654"3": {10655"name": "punctuation.definition.directive.cpp"10656}10657},10658"name": "keyword.control.directive.$4.cpp"10659},10660"preprocessor_context": {10661"patterns": [10662{10663"include": "#pragma_mark"10664},10665{10666"include": "#pragma"10667},10668{10669"include": "#include"10670},10671{10672"include": "#line"10673},10674{10675"include": "#diagnostic"10676},10677{10678"include": "#undef"10679},10680{10681"include": "#preprocessor_conditional_range"10682},10683{10684"include": "#single_line_macro"10685},10686{10687"include": "#macro"10688},10689{10690"include": "#preprocessor_conditional_standalone"10691},10692{10693"include": "#macro_argument"10694}10695]10696},10697"qualified_type": {10698"match": "\\s*+((?:(?:(?:\\[\\[.*?\\]\\]|__attribute(?:__)?\\s*\\(\\s*\\(.*?\\)\\s*\\))|__declspec\\(.*?\\))|alignas\\(.*?\\))(?!\\)))?((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:((?:::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<11>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*+)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\b)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*\\b((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<11>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)?(?![\\w<:.])",10699"captures": {10700"0": {10701"patterns": [10702{10703"match": "::",10704"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"10705},10706{10707"match": "(?<!\\w)(?:(?:struct)|(?:class)|(?:union)|(?:enum))(?!\\w)",10708"name": "storage.type.$0.cpp"10709},10710{10711"include": "#attributes_context"10712},10713{10714"include": "#storage_types"10715},10716{10717"include": "#number_literal"10718},10719{10720"include": "#string_context"10721},10722{10723"include": "#comma"10724},10725{10726"include": "#scope_resolution_inner_generated"10727},10728{10729"begin": "<",10730"end": ">",10731"beginCaptures": {10732"0": {10733"name": "punctuation.section.angle-brackets.begin.template.call.cpp"10734}10735},10736"endCaptures": {10737"0": {10738"name": "punctuation.section.angle-brackets.end.template.call.cpp"10739}10740},10741"name": "meta.template.call.cpp",10742"patterns": [10743{10744"include": "#template_call_context"10745}10746]10747},10748{10749"match": "(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*",10750"name": "entity.name.type.cpp"10751}10752]10753},10754"1": {10755"patterns": [10756{10757"include": "#attributes_context"10758},10759{10760"include": "#number_literal"10761}10762]10763},10764"2": {10765"patterns": [10766{10767"include": "#inline_comment"10768}10769]10770},10771"3": {10772"patterns": [10773{10774"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10775"captures": {10776"1": {10777"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10778},10779"2": {10780"name": "comment.block.cpp"10781},10782"3": {10783"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10784}10785}10786}10787]10788},10789"4": {10790"patterns": [10791{10792"include": "#inline_comment"10793}10794]10795},10796"5": {10797"patterns": [10798{10799"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10800"captures": {10801"1": {10802"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10803},10804"2": {10805"name": "comment.block.cpp"10806},10807"3": {10808"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10809}10810}10811}10812]10813},10814"6": {10815"patterns": [10816{10817"match": "::",10818"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"10819},10820{10821"match": "(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)",10822"name": "entity.name.scope-resolution.type.cpp"10823},10824{10825"include": "#template_call_range"10826}10827]10828},10829"7": {10830"patterns": [10831{10832"include": "#template_call_range"10833}10834]10835},10836"9": {10837"patterns": [10838{10839"include": "#inline_comment"10840}10841]10842},10843"10": {10844"patterns": [10845{10846"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10847"captures": {10848"1": {10849"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10850},10851"2": {10852"name": "comment.block.cpp"10853},10854"3": {10855"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10856}10857}10858}10859]10860}10861},10862"name": "meta.qualified_type.cpp"10863},10864"qualifiers_and_specifiers_post_parameters": {10865"match": "((?:(?:(?:(?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)(?<!\\w)(?:(?:override)|(?:volatile)|(?:noexcept)|(?:final)|(?:const))(?!\\w))+)(?=\\s*(?:\\{|;|\\n|\\r|=))",10866"captures": {10867"1": {10868"patterns": [10869{10870"match": "((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:(?:override)|(?:volatile)|(?:noexcept)|(?:final)|(?:const))(?!\\w))",10871"captures": {10872"1": {10873"patterns": [10874{10875"include": "#inline_comment"10876}10877]10878},10879"2": {10880"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10881},10882"3": {10883"name": "comment.block.cpp"10884},10885"4": {10886"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10887},10888"5": {10889"name": "storage.modifier.specifier.functional.post-parameters.$5.cpp"10890}10891}10892}10893]10894}10895}10896},10897"scope_resolution": {10898"match": "(::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<3>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*\\s*+",10899"captures": {10900"0": {10901"patterns": [10902{10903"include": "#scope_resolution_inner_generated"10904}10905]10906},10907"1": {10908"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"10909},10910"2": {10911"patterns": [10912{10913"include": "#template_call_range"10914}10915]10916}10917}10918},10919"scope_resolution_function_call": {10920"match": "(::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<3>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*\\s*+",10921"captures": {10922"0": {10923"patterns": [10924{10925"include": "#scope_resolution_function_call_inner_generated"10926}10927]10928},10929"1": {10930"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.call.cpp"10931},10932"2": {10933"patterns": [10934{10935"include": "#template_call_range"10936}10937]10938}10939}10940},10941"scope_resolution_function_call_inner_generated": {10942"match": "((::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<7>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*\\s*+)((?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))\\s*+(((?<!<)<(?!<)(?:(?:(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/)))|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<7>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?(::)",10943"captures": {10944"1": {10945"patterns": [10946{10947"include": "#scope_resolution_function_call_inner_generated"10948}10949]10950},10951"2": {10952"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.call.cpp"10953},10954"3": {10955"patterns": [10956{10957"include": "#template_call_range"10958}10959]10960},10961"4": {},10962"5": {10963"name": "entity.name.scope-resolution.function.call.cpp"10964},10965"6": {10966"name": "meta.template.call.cpp",10967"patterns": [10968{10969"include": "#template_call_range"10970}10971]10972},10973"7": {},10974"8": {10975"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10976},10977"9": {10978"name": "comment.block.cpp"10979},10980"10": {10981"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10982},10983"11": {10984"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.call.cpp"10985}10986}10987},10988"scope_resolution_function_definition": {10989"match": "(::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<3>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*\\s*+",10990"captures": {10991"0": {10992"patterns": [10993{10994"include": "#scope_resolution_function_definition_inner_generated"10995}10996]10997},10998"1": {10999"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.definition.cpp"11000},11001"2": {11002"patterns": [11003{11004"include": "#template_call_range"11005}11006]11007}11008}11009},11010"scope_resolution_function_definition_inner_generated": {11011"match": "((::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<7>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*\\s*+)((?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))\\s*+(((?<!<)<(?!<)(?:(?:(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/)))|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<7>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?(::)",11012"captures": {11013"1": {11014"patterns": [11015{11016"include": "#scope_resolution_function_definition_inner_generated"11017}11018]11019},11020"2": {11021"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.definition.cpp"11022},11023"3": {11024"patterns": [11025{11026"include": "#template_call_range"11027}11028]11029},11030"4": {},11031"5": {11032"name": "entity.name.scope-resolution.function.definition.cpp"11033},11034"6": {11035"name": "meta.template.call.cpp",11036"patterns": [11037{11038"include": "#template_call_range"11039}11040]11041},11042"7": {},11043"8": {11044"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"11045},11046"9": {11047"name": "comment.block.cpp"11048},11049"10": {11050"name": "comment.block.cpp punctuation.definition.comment.end.cpp"11051},11052"11": {11053"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.definition.cpp"11054}11055}11056},11057"scope_resolution_function_definition_operator_overload": {11058"match": "(::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<3>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*\\s*+",11059"captures": {11060"0": {11061"patterns": [11062{11063"include": "#scope_resolution_function_definition_operator_overload_inner_generated"11064}11065]11066},11067"1": {11068"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.definition.operator-overload.cpp"11069},11070"2": {11071"patterns": [11072{11073"include": "#template_call_range"11074}11075]11076}11077}11078},11079"scope_resolution_function_definition_operator_overload_inner_generated": {11080"match": "((::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<7>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*\\s*+)((?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))\\s*+(((?<!<)<(?!<)(?:(?:(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/)))|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<7>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?(::)",11081"captures": {11082"1": {11083"patterns": [11084{11085"include": "#scope_resolution_function_definition_operator_overload_inner_generated"11086}11087]11088},11089"2": {11090"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.definition.operator-overload.cpp"11091},11092"3": {11093"patterns": [11094{11095"include": "#template_call_range"11096}11097]11098},11099"4": {},11100"5": {11101"name": "entity.name.scope-resolution.function.definition.operator-overload.cpp"11102},11103"6": {11104"name": "meta.template.call.cpp",11105"patterns": [11106{11107"include": "#template_call_range"11108}11109]11110},11111"7": {},11112"8": {11113"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"11114},11115"9": {11116"name": "comment.block.cpp"11117},11118"10": {11119"name": "comment.block.cpp punctuation.definition.comment.end.cpp"11120},11121"11": {11122"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.definition.operator-overload.cpp"11123}11124}11125},11126"scope_resolution_inner_generated": {11127"match": "((::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<7>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*\\s*+)((?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))\\s*+(((?<!<)<(?!<)(?:(?:(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/)))|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<7>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?(::)",11128"captures": {11129"1": {11130"patterns": [11131{11132"include": "#scope_resolution_inner_generated"11133}11134]11135},11136"2": {11137"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"11138},11139"3": {11140"patterns": [11141{11142"include": "#template_call_range"11143}11144]11145},11146"4": {},11147"5": {11148"name": "entity.name.scope-resolution.cpp"11149},11150"6": {11151"name": "meta.template.call.cpp",11152"patterns": [11153{11154"include": "#template_call_range"11155}11156]11157},11158"7": {},11159"8": {11160"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"11161},11162"9": {11163"name": "comment.block.cpp"11164},11165"10": {11166"name": "comment.block.cpp punctuation.definition.comment.end.cpp"11167},11168"11": {11169"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"11170}11171}11172},11173"scope_resolution_namespace_alias": {11174"match": "(::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<3>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*\\s*+",11175"captures": {11176"0": {11177"patterns": [11178{11179"include": "#scope_resolution_namespace_alias_inner_generated"11180}11181]11182},11183"1": {11184"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.alias.cpp"11185},11186"2": {11187"patterns": [11188{11189"include": "#template_call_range"11190}11191]11192}11193}11194},11195"scope_resolution_namespace_alias_inner_generated": {11196"match": "((::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<7>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*\\s*+)((?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))\\s*+(((?<!<)<(?!<)(?:(?:(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/)))|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<7>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?(::)",11197"captures": {11198"1": {11199"patterns": [11200{11201"include": "#scope_resolution_namespace_alias_inner_generated"11202}11203]11204},11205"2": {11206"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.alias.cpp"11207},11208"3": {11209"patterns": [11210{11211"include": "#template_call_range"11212}11213]11214},11215"4": {},11216"5": {11217"name": "entity.name.scope-resolution.namespace.alias.cpp"11218},11219"6": {11220"name": "meta.template.call.cpp",11221"patterns": [11222{11223"include": "#template_call_range"11224}11225]11226},11227"7": {},11228"8": {11229"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"11230},11231"9": {11232"name": "comment.block.cpp"11233},11234"10": {11235"name": "comment.block.cpp punctuation.definition.comment.end.cpp"11236},11237"11": {11238"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.alias.cpp"11239}11240}11241},11242"scope_resolution_namespace_block": {11243"match": "(::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<3>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*\\s*+",11244"captures": {11245"0": {11246"patterns": [11247{11248"include": "#scope_resolution_namespace_block_inner_generated"11249}11250]11251},11252"1": {11253"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.block.cpp"11254},11255"2": {11256"patterns": [11257{11258"include": "#template_call_range"11259}11260]11261}11262}11263},11264"scope_resolution_namespace_block_inner_generated": {11265"match": "((::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<7>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*\\s*+)((?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))\\s*+(((?<!<)<(?!<)(?:(?:(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/)))|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<7>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?(::)",11266"captures": {11267"1": {11268"patterns": [11269{11270"include": "#scope_resolution_namespace_block_inner_generated"11271}11272]11273},11274"2": {11275"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.block.cpp"11276},11277"3": {11278"patterns": [11279{11280"include": "#template_call_range"11281}11282]11283},11284"4": {},11285"5": {11286"name": "entity.name.scope-resolution.namespace.block.cpp"11287},11288"6": {11289"name": "meta.template.call.cpp",11290"patterns": [11291{11292"include": "#template_call_range"11293}11294]11295},11296"7": {},11297"8": {11298"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"11299},11300"9": {11301"name": "comment.block.cpp"11302},11303"10": {11304"name": "comment.block.cpp punctuation.definition.comment.end.cpp"11305},11306"11": {11307"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.block.cpp"11308}11309}11310},11311"scope_resolution_namespace_using": {11312"match": "(::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<3>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*\\s*+",11313"captures": {11314"0": {11315"patterns": [11316{11317"include": "#scope_resolution_namespace_using_inner_generated"11318}11319]11320},11321"1": {11322"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.using.cpp"11323},11324"2": {11325"patterns": [11326{11327"include": "#template_call_range"11328}11329]11330}11331}11332},11333"scope_resolution_namespace_using_inner_generated": {11334"match": "((::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<7>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*\\s*+)((?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))\\s*+(((?<!<)<(?!<)(?:(?:(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/)))|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<7>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?(::)",11335"captures": {11336"1": {11337"patterns": [11338{11339"include": "#scope_resolution_namespace_using_inner_generated"11340}11341]11342},11343"2": {11344"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.using.cpp"11345},11346"3": {11347"patterns": [11348{11349"include": "#template_call_range"11350}11351]11352},11353"4": {},11354"5": {11355"name": "entity.name.scope-resolution.namespace.using.cpp"11356},11357"6": {11358"name": "meta.template.call.cpp",11359"patterns": [11360{11361"include": "#template_call_range"11362}11363]11364},11365"7": {},11366"8": {11367"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"11368},11369"9": {11370"name": "comment.block.cpp"11371},11372"10": {11373"name": "comment.block.cpp punctuation.definition.comment.end.cpp"11374},11375"11": {11376"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.using.cpp"11377}11378}11379},11380"scope_resolution_parameter": {11381"match": "(::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<3>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*\\s*+",11382"captures": {11383"0": {11384"patterns": [11385{11386"include": "#scope_resolution_parameter_inner_generated"11387}11388]11389},11390"1": {11391"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.parameter.cpp"11392},11393"2": {11394"patterns": [11395{11396"include": "#template_call_range"11397}11398]11399}11400}11401},11402"scope_resolution_parameter_inner_generated": {11403"match": "((::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<7>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*\\s*+)((?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))\\s*+(((?<!<)<(?!<)(?:(?:(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/)))|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<7>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?(::)",11404"captures": {11405"1": {11406"patterns": [11407{11408"include": "#scope_resolution_parameter_inner_generated"11409}11410]11411},11412"2": {11413"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.parameter.cpp"11414},11415"3": {11416"patterns": [11417{11418"include": "#template_call_range"11419}11420]11421},11422"4": {},11423"5": {11424"name": "entity.name.scope-resolution.parameter.cpp"11425},11426"6": {11427"name": "meta.template.call.cpp",11428"patterns": [11429{11430"include": "#template_call_range"11431}11432]11433},11434"7": {},11435"8": {11436"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"11437},11438"9": {11439"name": "comment.block.cpp"11440},11441"10": {11442"name": "comment.block.cpp punctuation.definition.comment.end.cpp"11443},11444"11": {11445"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.parameter.cpp"11446}11447}11448},11449"scope_resolution_template_call": {11450"match": "(::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<3>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*\\s*+",11451"captures": {11452"0": {11453"patterns": [11454{11455"include": "#scope_resolution_template_call_inner_generated"11456}11457]11458},11459"1": {11460"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.template.call.cpp"11461},11462"2": {11463"patterns": [11464{11465"include": "#template_call_range"11466}11467]11468}11469}11470},11471"scope_resolution_template_call_inner_generated": {11472"match": "((::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<7>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*\\s*+)((?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))\\s*+(((?<!<)<(?!<)(?:(?:(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/)))|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<7>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?(::)",11473"captures": {11474"1": {11475"patterns": [11476{11477"include": "#scope_resolution_template_call_inner_generated"11478}11479]11480},11481"2": {11482"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.template.call.cpp"11483},11484"3": {11485"patterns": [11486{11487"include": "#template_call_range"11488}11489]11490},11491"4": {},11492"5": {11493"name": "entity.name.scope-resolution.template.call.cpp"11494},11495"6": {11496"name": "meta.template.call.cpp",11497"patterns": [11498{11499"include": "#template_call_range"11500}11501]11502},11503"7": {},11504"8": {11505"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"11506},11507"9": {11508"name": "comment.block.cpp"11509},11510"10": {11511"name": "comment.block.cpp punctuation.definition.comment.end.cpp"11512},11513"11": {11514"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.template.call.cpp"11515}11516}11517},11518"scope_resolution_template_definition": {11519"match": "(::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<3>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*\\s*+",11520"captures": {11521"0": {11522"patterns": [11523{11524"include": "#scope_resolution_template_definition_inner_generated"11525}11526]11527},11528"1": {11529"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.template.definition.cpp"11530},11531"2": {11532"patterns": [11533{11534"include": "#template_call_range"11535}11536]11537}11538}11539},11540"scope_resolution_template_definition_inner_generated": {11541"match": "((::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<7>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*\\s*+)((?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))\\s*+(((?<!<)<(?!<)(?:(?:(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/)))|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<7>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?(::)",11542"captures": {11543"1": {11544"patterns": [11545{11546"include": "#scope_resolution_template_definition_inner_generated"11547}11548]11549},11550"2": {11551"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.template.definition.cpp"11552},11553"3": {11554"patterns": [11555{11556"include": "#template_call_range"11557}11558]11559},11560"4": {},11561"5": {11562"name": "entity.name.scope-resolution.template.definition.cpp"11563},11564"6": {11565"name": "meta.template.call.cpp",11566"patterns": [11567{11568"include": "#template_call_range"11569}11570]11571},11572"7": {},11573"8": {11574"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"11575},11576"9": {11577"name": "comment.block.cpp"11578},11579"10": {11580"name": "comment.block.cpp punctuation.definition.comment.end.cpp"11581},11582"11": {11583"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.template.definition.cpp"11584}11585}11586},11587"semicolon": {11588"match": ";",11589"name": "punctuation.terminator.statement.cpp"11590},11591"simple_type": {11592"match": "(\\s*+((?:(?:(?:\\[\\[.*?\\]\\]|__attribute(?:__)?\\s*\\(\\s*\\(.*?\\)\\s*\\))|__declspec\\(.*?\\))|alignas\\(.*?\\))(?!\\)))?((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:((?:::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<12>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*+)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\b)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*\\b((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<12>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)?(?![\\w<:.]))(((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))?(?:(?:&|\\*)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:&|\\*))?",11593"captures": {11594"1": {11595"name": "meta.qualified_type.cpp",11596"patterns": [11597{11598"match": "::",11599"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"11600},11601{11602"match": "(?<!\\w)(?:(?:struct)|(?:class)|(?:union)|(?:enum))(?!\\w)",11603"name": "storage.type.$0.cpp"11604},11605{11606"include": "#attributes_context"11607},11608{11609"include": "#storage_types"11610},11611{11612"include": "#number_literal"11613},11614{11615"include": "#string_context"11616},11617{11618"include": "#comma"11619},11620{11621"include": "#scope_resolution_inner_generated"11622},11623{11624"begin": "<",11625"end": ">",11626"beginCaptures": {11627"0": {11628"name": "punctuation.section.angle-brackets.begin.template.call.cpp"11629}11630},11631"endCaptures": {11632"0": {11633"name": "punctuation.section.angle-brackets.end.template.call.cpp"11634}11635},11636"name": "meta.template.call.cpp",11637"patterns": [11638{11639"include": "#template_call_context"11640}11641]11642},11643{11644"match": "(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*",11645"name": "entity.name.type.cpp"11646}11647]11648},11649"2": {11650"patterns": [11651{11652"include": "#attributes_context"11653},11654{11655"include": "#number_literal"11656}11657]11658},11659"3": {11660"patterns": [11661{11662"include": "#inline_comment"11663}11664]11665},11666"4": {11667"patterns": [11668{11669"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",11670"captures": {11671"1": {11672"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"11673},11674"2": {11675"name": "comment.block.cpp"11676},11677"3": {11678"name": "comment.block.cpp punctuation.definition.comment.end.cpp"11679}11680}11681}11682]11683},11684"5": {11685"patterns": [11686{11687"include": "#inline_comment"11688}11689]11690},11691"6": {11692"patterns": [11693{11694"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",11695"captures": {11696"1": {11697"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"11698},11699"2": {11700"name": "comment.block.cpp"11701},11702"3": {11703"name": "comment.block.cpp punctuation.definition.comment.end.cpp"11704}11705}11706}11707]11708},11709"7": {11710"patterns": [11711{11712"match": "::",11713"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"11714},11715{11716"match": "(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)",11717"name": "entity.name.scope-resolution.type.cpp"11718},11719{11720"include": "#template_call_range"11721}11722]11723},11724"8": {11725"patterns": [11726{11727"include": "#template_call_range"11728}11729]11730},11731"9": {},11732"10": {11733"patterns": [11734{11735"include": "#inline_comment"11736}11737]11738},11739"11": {11740"patterns": [11741{11742"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",11743"captures": {11744"1": {11745"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"11746},11747"2": {11748"name": "comment.block.cpp"11749},11750"3": {11751"name": "comment.block.cpp punctuation.definition.comment.end.cpp"11752}11753}11754}11755]11756},11757"12": {},11758"13": {11759"patterns": [11760{11761"match": "\\*",11762"name": "storage.modifier.pointer.cpp"11763},11764{11765"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",11766"captures": {11767"1": {11768"patterns": [11769{11770"include": "#inline_comment"11771}11772]11773},11774"2": {11775"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"11776},11777"3": {11778"name": "comment.block.cpp"11779},11780"4": {11781"name": "comment.block.cpp punctuation.definition.comment.end.cpp"11782}11783},11784"name": "invalid.illegal.reference-type.cpp"11785},11786{11787"match": "\\&",11788"name": "storage.modifier.reference.cpp"11789}11790]11791},11792"14": {11793"patterns": [11794{11795"include": "#inline_comment"11796}11797]11798},11799"15": {11800"patterns": [11801{11802"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",11803"captures": {11804"1": {11805"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"11806},11807"2": {11808"name": "comment.block.cpp"11809},11810"3": {11811"name": "comment.block.cpp punctuation.definition.comment.end.cpp"11812}11813}11814}11815]11816},11817"16": {11818"patterns": [11819{11820"include": "#inline_comment"11821}11822]11823},11824"17": {11825"patterns": [11826{11827"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",11828"captures": {11829"1": {11830"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"11831},11832"2": {11833"name": "comment.block.cpp"11834},11835"3": {11836"name": "comment.block.cpp punctuation.definition.comment.end.cpp"11837}11838}11839}11840]11841}11842}11843},11844"single_line_macro": {11845"match": "^((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))#define.*(?<![\\\\])(?:\\n|$)",11846"captures": {11847"0": {11848"patterns": [11849{11850"include": "#macro"11851},11852{11853"include": "#comments"11854}11855]11856},11857"1": {11858"patterns": [11859{11860"include": "#inline_comment"11861}11862]11863},11864"2": {11865"patterns": [11866{11867"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",11868"captures": {11869"1": {11870"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"11871},11872"2": {11873"name": "comment.block.cpp"11874},11875"3": {11876"name": "comment.block.cpp punctuation.definition.comment.end.cpp"11877}11878}11879}11880]11881}11882}11883},11884"sizeof_operator": {11885"begin": "((?<!\\w)sizeof(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()",11886"end": "\\)",11887"beginCaptures": {11888"1": {11889"name": "keyword.operator.functionlike.cpp keyword.operator.sizeof.cpp"11890},11891"2": {11892"patterns": [11893{11894"include": "#inline_comment"11895}11896]11897},11898"3": {11899"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"11900},11901"4": {11902"name": "comment.block.cpp"11903},11904"5": {11905"name": "comment.block.cpp punctuation.definition.comment.end.cpp"11906},11907"6": {11908"name": "punctuation.section.arguments.begin.bracket.round.operator.sizeof.cpp"11909}11910},11911"endCaptures": {11912"0": {11913"name": "punctuation.section.arguments.end.bracket.round.operator.sizeof.cpp"11914}11915},11916"contentName": "meta.arguments.operator.sizeof",11917"patterns": [11918{11919"include": "#evaluation_context"11920}11921]11922},11923"sizeof_variadic_operator": {11924"begin": "(\\bsizeof\\.\\.\\.)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()",11925"end": "\\)",11926"beginCaptures": {11927"1": {11928"name": "keyword.operator.functionlike.cpp keyword.operator.sizeof.variadic.cpp"11929},11930"2": {11931"patterns": [11932{11933"include": "#inline_comment"11934}11935]11936},11937"3": {11938"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"11939},11940"4": {11941"name": "comment.block.cpp"11942},11943"5": {11944"name": "comment.block.cpp punctuation.definition.comment.end.cpp"11945},11946"6": {11947"name": "punctuation.section.arguments.begin.bracket.round.operator.sizeof.variadic.cpp"11948}11949},11950"endCaptures": {11951"0": {11952"name": "punctuation.section.arguments.end.bracket.round.operator.sizeof.variadic.cpp"11953}11954},11955"contentName": "meta.arguments.operator.sizeof.variadic",11956"patterns": [11957{11958"include": "#evaluation_context"11959}11960]11961},11962"square_brackets": {11963"name": "meta.bracket.square.access",11964"begin": "([a-zA-Z_][a-zA-Z_0-9]*|(?<=[\\]\\)]))?(\\[)(?!\\])",11965"beginCaptures": {11966"1": {11967"name": "variable.other.object"11968},11969"2": {11970"name": "punctuation.definition.begin.bracket.square"11971}11972},11973"end": "\\]",11974"endCaptures": {11975"0": {11976"name": "punctuation.definition.end.bracket.square"11977}11978},11979"patterns": [11980{11981"include": "#evaluation_context"11982}11983]11984},11985"standard_declares": {11986"patterns": [11987{11988"match": "((?<!\\w)struct(?!\\w))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))(((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))?(?:(?:&|\\*)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:&|\\*))?((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))\\b(?!override\\W|override\\$|final\\W|final\\$)((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?=\\S)(?![:{a-zA-Z])",11989"captures": {11990"1": {11991"name": "storage.type.struct.declare.cpp"11992},11993"2": {11994"patterns": [11995{11996"include": "#inline_comment"11997}11998]11999},12000"3": {12001"patterns": [12002{12003"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",12004"captures": {12005"1": {12006"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12007},12008"2": {12009"name": "comment.block.cpp"12010},12011"3": {12012"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12013}12014}12015}12016]12017},12018"4": {12019"name": "entity.name.type.struct.cpp"12020},12021"5": {12022"patterns": [12023{12024"match": "\\*",12025"name": "storage.modifier.pointer.cpp"12026},12027{12028"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",12029"captures": {12030"1": {12031"patterns": [12032{12033"include": "#inline_comment"12034}12035]12036},12037"2": {12038"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12039},12040"3": {12041"name": "comment.block.cpp"12042},12043"4": {12044"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12045}12046},12047"name": "invalid.illegal.reference-type.cpp"12048},12049{12050"match": "\\&",12051"name": "storage.modifier.reference.cpp"12052}12053]12054},12055"6": {12056"patterns": [12057{12058"include": "#inline_comment"12059}12060]12061},12062"7": {12063"patterns": [12064{12065"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",12066"captures": {12067"1": {12068"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12069},12070"2": {12071"name": "comment.block.cpp"12072},12073"3": {12074"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12075}12076}12077}12078]12079},12080"8": {12081"patterns": [12082{12083"include": "#inline_comment"12084}12085]12086},12087"9": {12088"patterns": [12089{12090"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",12091"captures": {12092"1": {12093"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12094},12095"2": {12096"name": "comment.block.cpp"12097},12098"3": {12099"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12100}12101}12102}12103]12104},12105"10": {12106"patterns": [12107{12108"include": "#inline_comment"12109}12110]12111},12112"11": {12113"patterns": [12114{12115"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",12116"captures": {12117"1": {12118"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12119},12120"2": {12121"name": "comment.block.cpp"12122},12123"3": {12124"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12125}12126}12127}12128]12129},12130"12": {12131"name": "variable.other.object.declare.cpp"12132},12133"13": {12134"patterns": [12135{12136"include": "#inline_comment"12137}12138]12139},12140"14": {12141"patterns": [12142{12143"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",12144"captures": {12145"1": {12146"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12147},12148"2": {12149"name": "comment.block.cpp"12150},12151"3": {12152"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12153}12154}12155}12156]12157}12158}12159},12160{12161"match": "((?<!\\w)union(?!\\w))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))(((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))?(?:(?:&|\\*)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:&|\\*))?((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))\\b(?!override\\W|override\\$|final\\W|final\\$)((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?=\\S)(?![:{a-zA-Z])",12162"captures": {12163"1": {12164"name": "storage.type.union.declare.cpp"12165},12166"2": {12167"patterns": [12168{12169"include": "#inline_comment"12170}12171]12172},12173"3": {12174"patterns": [12175{12176"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",12177"captures": {12178"1": {12179"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12180},12181"2": {12182"name": "comment.block.cpp"12183},12184"3": {12185"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12186}12187}12188}12189]12190},12191"4": {12192"name": "entity.name.type.union.cpp"12193},12194"5": {12195"patterns": [12196{12197"match": "\\*",12198"name": "storage.modifier.pointer.cpp"12199},12200{12201"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",12202"captures": {12203"1": {12204"patterns": [12205{12206"include": "#inline_comment"12207}12208]12209},12210"2": {12211"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12212},12213"3": {12214"name": "comment.block.cpp"12215},12216"4": {12217"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12218}12219},12220"name": "invalid.illegal.reference-type.cpp"12221},12222{12223"match": "\\&",12224"name": "storage.modifier.reference.cpp"12225}12226]12227},12228"6": {12229"patterns": [12230{12231"include": "#inline_comment"12232}12233]12234},12235"7": {12236"patterns": [12237{12238"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",12239"captures": {12240"1": {12241"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12242},12243"2": {12244"name": "comment.block.cpp"12245},12246"3": {12247"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12248}12249}12250}12251]12252},12253"8": {12254"patterns": [12255{12256"include": "#inline_comment"12257}12258]12259},12260"9": {12261"patterns": [12262{12263"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",12264"captures": {12265"1": {12266"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12267},12268"2": {12269"name": "comment.block.cpp"12270},12271"3": {12272"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12273}12274}12275}12276]12277},12278"10": {12279"patterns": [12280{12281"include": "#inline_comment"12282}12283]12284},12285"11": {12286"patterns": [12287{12288"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",12289"captures": {12290"1": {12291"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12292},12293"2": {12294"name": "comment.block.cpp"12295},12296"3": {12297"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12298}12299}12300}12301]12302},12303"12": {12304"name": "variable.other.object.declare.cpp"12305},12306"13": {12307"patterns": [12308{12309"include": "#inline_comment"12310}12311]12312},12313"14": {12314"patterns": [12315{12316"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",12317"captures": {12318"1": {12319"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12320},12321"2": {12322"name": "comment.block.cpp"12323},12324"3": {12325"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12326}12327}12328}12329]12330}12331}12332},12333{12334"match": "((?<!\\w)enum(?!\\w))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))(((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))?(?:(?:&|\\*)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:&|\\*))?((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))\\b(?!override\\W|override\\$|final\\W|final\\$)((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?=\\S)(?![:{a-zA-Z])",12335"captures": {12336"1": {12337"name": "storage.type.enum.declare.cpp"12338},12339"2": {12340"patterns": [12341{12342"include": "#inline_comment"12343}12344]12345},12346"3": {12347"patterns": [12348{12349"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",12350"captures": {12351"1": {12352"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12353},12354"2": {12355"name": "comment.block.cpp"12356},12357"3": {12358"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12359}12360}12361}12362]12363},12364"4": {12365"name": "entity.name.type.enum.cpp"12366},12367"5": {12368"patterns": [12369{12370"match": "\\*",12371"name": "storage.modifier.pointer.cpp"12372},12373{12374"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",12375"captures": {12376"1": {12377"patterns": [12378{12379"include": "#inline_comment"12380}12381]12382},12383"2": {12384"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12385},12386"3": {12387"name": "comment.block.cpp"12388},12389"4": {12390"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12391}12392},12393"name": "invalid.illegal.reference-type.cpp"12394},12395{12396"match": "\\&",12397"name": "storage.modifier.reference.cpp"12398}12399]12400},12401"6": {12402"patterns": [12403{12404"include": "#inline_comment"12405}12406]12407},12408"7": {12409"patterns": [12410{12411"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",12412"captures": {12413"1": {12414"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12415},12416"2": {12417"name": "comment.block.cpp"12418},12419"3": {12420"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12421}12422}12423}12424]12425},12426"8": {12427"patterns": [12428{12429"include": "#inline_comment"12430}12431]12432},12433"9": {12434"patterns": [12435{12436"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",12437"captures": {12438"1": {12439"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12440},12441"2": {12442"name": "comment.block.cpp"12443},12444"3": {12445"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12446}12447}12448}12449]12450},12451"10": {12452"patterns": [12453{12454"include": "#inline_comment"12455}12456]12457},12458"11": {12459"patterns": [12460{12461"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",12462"captures": {12463"1": {12464"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12465},12466"2": {12467"name": "comment.block.cpp"12468},12469"3": {12470"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12471}12472}12473}12474]12475},12476"12": {12477"name": "variable.other.object.declare.cpp"12478},12479"13": {12480"patterns": [12481{12482"include": "#inline_comment"12483}12484]12485},12486"14": {12487"patterns": [12488{12489"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",12490"captures": {12491"1": {12492"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12493},12494"2": {12495"name": "comment.block.cpp"12496},12497"3": {12498"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12499}12500}12501}12502]12503}12504}12505},12506{12507"match": "((?<!\\w)class(?!\\w))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))(((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))?(?:(?:&|\\*)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:&|\\*))?((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))\\b(?!override\\W|override\\$|final\\W|final\\$)((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?=\\S)(?![:{a-zA-Z])",12508"captures": {12509"1": {12510"name": "storage.type.class.declare.cpp"12511},12512"2": {12513"patterns": [12514{12515"include": "#inline_comment"12516}12517]12518},12519"3": {12520"patterns": [12521{12522"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",12523"captures": {12524"1": {12525"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12526},12527"2": {12528"name": "comment.block.cpp"12529},12530"3": {12531"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12532}12533}12534}12535]12536},12537"4": {12538"name": "entity.name.type.class.cpp"12539},12540"5": {12541"patterns": [12542{12543"match": "\\*",12544"name": "storage.modifier.pointer.cpp"12545},12546{12547"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",12548"captures": {12549"1": {12550"patterns": [12551{12552"include": "#inline_comment"12553}12554]12555},12556"2": {12557"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12558},12559"3": {12560"name": "comment.block.cpp"12561},12562"4": {12563"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12564}12565},12566"name": "invalid.illegal.reference-type.cpp"12567},12568{12569"match": "\\&",12570"name": "storage.modifier.reference.cpp"12571}12572]12573},12574"6": {12575"patterns": [12576{12577"include": "#inline_comment"12578}12579]12580},12581"7": {12582"patterns": [12583{12584"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",12585"captures": {12586"1": {12587"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12588},12589"2": {12590"name": "comment.block.cpp"12591},12592"3": {12593"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12594}12595}12596}12597]12598},12599"8": {12600"patterns": [12601{12602"include": "#inline_comment"12603}12604]12605},12606"9": {12607"patterns": [12608{12609"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",12610"captures": {12611"1": {12612"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12613},12614"2": {12615"name": "comment.block.cpp"12616},12617"3": {12618"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12619}12620}12621}12622]12623},12624"10": {12625"patterns": [12626{12627"include": "#inline_comment"12628}12629]12630},12631"11": {12632"patterns": [12633{12634"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",12635"captures": {12636"1": {12637"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12638},12639"2": {12640"name": "comment.block.cpp"12641},12642"3": {12643"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12644}12645}12646}12647]12648},12649"12": {12650"name": "variable.other.object.declare.cpp"12651},12652"13": {12653"patterns": [12654{12655"include": "#inline_comment"12656}12657]12658},12659"14": {12660"patterns": [12661{12662"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",12663"captures": {12664"1": {12665"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12666},12667"2": {12668"name": "comment.block.cpp"12669},12670"3": {12671"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12672}12673}12674}12675]12676}12677}12678}12679]12680},12681"static_assert": {12682"begin": "((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)static_assert|_Static_assert(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()",12683"end": "\\)",12684"beginCaptures": {12685"1": {12686"patterns": [12687{12688"include": "#inline_comment"12689}12690]12691},12692"2": {12693"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12694},12695"3": {12696"name": "comment.block.cpp"12697},12698"4": {12699"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12700},12701"5": {12702"name": "keyword.other.static_assert.cpp"12703},12704"6": {12705"patterns": [12706{12707"include": "#inline_comment"12708}12709]12710},12711"7": {12712"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12713},12714"8": {12715"name": "comment.block.cpp"12716},12717"9": {12718"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12719},12720"10": {12721"name": "punctuation.section.arguments.begin.bracket.round.static_assert.cpp"12722}12723},12724"endCaptures": {12725"0": {12726"name": "punctuation.section.arguments.end.bracket.round.static_assert.cpp"12727}12728},12729"patterns": [12730{12731"begin": "(,)(?:\\s+)?(?=(?:L|u8|u|U(?:\\s+)?\\\")?)",12732"end": "(?=\\))",12733"beginCaptures": {12734"1": {12735"name": "punctuation.separator.delimiter.comma.cpp"12736}12737},12738"endCaptures": {},12739"name": "meta.static_assert.message.cpp",12740"patterns": [12741{12742"include": "#string_context"12743}12744]12745},12746{12747"include": "#evaluation_context"12748}12749]12750},12751"std_space": {12752"match": "(?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)",12753"captures": {12754"0": {12755"patterns": [12756{12757"include": "#inline_comment"12758}12759]12760},12761"1": {12762"patterns": [12763{12764"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",12765"captures": {12766"1": {12767"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12768},12769"2": {12770"name": "comment.block.cpp"12771},12772"3": {12773"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12774}12775}12776}12777]12778}12779}12780},12781"storage_specifiers": {12782"match": "((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:(?:thread_local)|(?:volatile)|(?:register)|(?:restrict)|(?:static)|(?:extern)|(?:const))(?!\\w))",12783"captures": {12784"1": {12785"patterns": [12786{12787"include": "#inline_comment"12788}12789]12790},12791"2": {12792"patterns": [12793{12794"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",12795"captures": {12796"1": {12797"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12798},12799"2": {12800"name": "comment.block.cpp"12801},12802"3": {12803"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12804}12805}12806}12807]12808},12809"3": {12810"name": "storage.modifier.specifier.$3.cpp"12811}12812}12813},12814"storage_types": {12815"patterns": [12816{12817"include": "#storage_specifiers"12818},12819{12820"include": "#inline_builtin_storage_type"12821},12822{12823"include": "#decltype"12824},12825{12826"include": "#typename"12827}12828]12829},12830"string_context": {12831"patterns": [12832{12833"begin": "((?:u|u8|U|L)?)\"",12834"end": "(\")(?:((?:[a-zA-Z]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*)|(_(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*))?",12835"beginCaptures": {12836"0": {12837"name": "punctuation.definition.string.begin.cpp"12838},12839"1": {12840"name": "meta.encoding.cpp"12841}12842},12843"endCaptures": {12844"1": {12845"name": "punctuation.definition.string.end.cpp"12846},12847"2": {12848"name": "keyword.other.suffix.literal.user-defined.reserved.string.cpp"12849},12850"3": {12851"name": "keyword.other.suffix.literal.user-defined.string.cpp"12852}12853},12854"name": "string.quoted.double.cpp",12855"patterns": [12856{12857"match": "(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8})",12858"name": "constant.character.escape.cpp"12859},12860{12861"match": "\\\\['\"?\\\\abfnrtv]",12862"name": "constant.character.escape.cpp"12863},12864{12865"match": "\\\\[0-7]{1,3}",12866"name": "constant.character.escape.cpp"12867},12868{12869"match": "(?:(\\\\x0*[0-9a-fA-F]{2}(?![0-9a-fA-F]))|((?:\\\\x[0-9a-fA-F]*|\\\\x)))",12870"captures": {12871"1": {12872"name": "constant.character.escape.cpp"12873},12874"2": {12875"name": "invalid.illegal.unknown-escape.cpp"12876}12877}12878},12879{12880"include": "#string_escapes_context_c"12881}12882]12883},12884{12885"begin": "(?<![0-9A-Fa-f])((?:u|u8|U|L)?)'",12886"end": "(')(?:((?:[a-zA-Z]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*)|(_(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*))?",12887"beginCaptures": {12888"0": {12889"name": "punctuation.definition.string.begin.cpp"12890},12891"1": {12892"name": "meta.encoding.cpp"12893}12894},12895"endCaptures": {12896"1": {12897"name": "punctuation.definition.string.end.cpp"12898},12899"2": {12900"name": "keyword.other.suffix.literal.user-defined.reserved.character.cpp"12901},12902"3": {12903"name": "keyword.other.suffix.literal.user-defined.character.cpp"12904}12905},12906"name": "string.quoted.single.cpp",12907"patterns": [12908{12909"match": "(?:(\\\\x0*[0-9a-fA-F]{2}(?![0-9a-fA-F]))|((?:\\\\x[0-9a-fA-F]*|\\\\x)))",12910"captures": {12911"1": {12912"name": "constant.character.escape.cpp"12913},12914"2": {12915"name": "invalid.illegal.unknown-escape.cpp"12916}12917}12918},12919{12920"include": "#string_escapes_context_c"12921},12922{12923"include": "#line_continuation_character"12924}12925]12926},12927{12928"begin": "((?:[uUL]8?)?R)\\\"(?:(?:_r|re)|regex)\\(",12929"end": "\\)(?:(?:_r|re)|regex)\\\"",12930"beginCaptures": {12931"0": {12932"name": "punctuation.definition.string.begin.cpp"12933},12934"1": {12935"name": "meta.encoding.cpp"12936}12937},12938"endCaptures": {12939"0": {12940"name": "punctuation.definition.string.end.cpp"12941}12942},12943"name": "string.quoted.double.raw.regex.cpp",12944"patterns": [12945{12946"include": "source.regexp.python"12947}12948]12949},12950{12951"begin": "((?:[uUL]8?)?R)\\\"(?:glsl|GLSL)\\(",12952"end": "\\)(?:glsl|GLSL)\\\"",12953"beginCaptures": {12954"0": {12955"name": "punctuation.definition.string.begin.cpp"12956},12957"1": {12958"name": "meta.encoding.cpp"12959}12960},12961"endCaptures": {12962"0": {12963"name": "punctuation.definition.string.end.cpp"12964}12965},12966"name": "meta.string.quoted.double.raw.glsl.cpp",12967"patterns": [12968{12969"include": "source.glsl"12970}12971]12972},12973{12974"begin": "((?:[uUL]8?)?R)\\\"(?:[pP]?(?:sql|SQL)|d[dm]l)\\(",12975"end": "\\)(?:[pP]?(?:sql|SQL)|d[dm]l)\\\"",12976"beginCaptures": {12977"0": {12978"name": "punctuation.definition.string.begin.cpp"12979},12980"1": {12981"name": "meta.encoding.cpp"12982}12983},12984"endCaptures": {12985"0": {12986"name": "punctuation.definition.string.end.cpp"12987}12988},12989"name": "meta.string.quoted.double.raw.sql.cpp",12990"patterns": [12991{12992"include": "source.sql"12993}12994]12995},12996{12997"begin": "((?:u|u8|U|L)?R)\"(?:([^ ()\\\\\\t]{0,16})|([^ ()\\\\\\t]*))\\(",12998"beginCaptures": {12999"0": {13000"name": "punctuation.definition.string.begin"13001},13002"1": {13003"name": "meta.encoding"13004},13005"3": {13006"name": "invalid.illegal.delimiter-too-long"13007}13008},13009"end": "(\\)\\2(\\3)\")(?:((?:[a-zA-Z]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*)|(_(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*))?",13010"endCaptures": {13011"1": {13012"name": "punctuation.definition.string.end"13013},13014"2": {13015"name": "invalid.illegal.delimiter-too-long"13016},13017"3": {13018"name": "keyword.other.suffix.literal.user-defined.reserved.string.cpp"13019},13020"4": {13021"name": "keyword.other.suffix.literal.user-defined.string.cpp"13022}13023},13024"name": "string.quoted.double.raw"13025}13026]13027},13028"string_escapes_context_c": {13029"patterns": [13030{13031"match": "(?x)\\\\ (\n\\\\\t\t\t |\n[abefnprtv'\"?] |\n[0-3][0-7]{,2}\t |\n[4-7]\\d?\t\t|\nx[a-fA-F0-9]{,2} |\nu[a-fA-F0-9]{,4} |\nU[a-fA-F0-9]{,8} )",13032"name": "constant.character.escape"13033},13034{13035"match": "\\\\.",13036"name": "invalid.illegal.unknown-escape"13037},13038{13039"match": "(?x) (?!%')(?!%\")%\n(\\d+\\$)?\t\t\t\t\t\t # field (argument #)\n[#0\\- +']*\t\t\t\t\t\t # flags\n[,;:_]?\t\t\t\t\t\t\t # separator character (AltiVec)\n((-?\\d+)|\\*(-?\\d+\\$)?)?\t\t # minimum field width\n(\\.((-?\\d+)|\\*(-?\\d+\\$)?)?)?\t# precision\n(hh|h|ll|l|j|t|z|q|L|vh|vl|v|hv|hl)? # length modifier\n[diouxXDOUeEfFgGaACcSspn%]\t\t # conversion type",13040"name": "constant.other.placeholder"13041}13042]13043},13044"struct_block": {13045"begin": "((?<!\\w)struct(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(?={)|(?:((?:(?:(?:\\[\\[.*?\\]\\]|__attribute(?:__)?\\s*\\(\\s*\\(.*?\\)\\s*\\))|__declspec\\(.*?\\))|alignas\\(.*?\\))(?!\\)))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?((?:(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*+)?(?:((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(:(?!:)))?)",13046"end": "(?:(?:(?<=\\}|%>|\\?\\?>)(?:\\s+)?(;)|(;))|(?=[;>\\[\\]=]))",13047"beginCaptures": {13048"0": {13049"name": "meta.head.struct.cpp"13050},13051"1": {13052"name": "storage.type.$1.cpp"13053},13054"2": {13055"patterns": [13056{13057"include": "#inline_comment"13058}13059]13060},13061"3": {13062"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13063},13064"4": {13065"name": "comment.block.cpp"13066},13067"5": {13068"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13069},13070"6": {13071"patterns": [13072{13073"include": "#attributes_context"13074},13075{13076"include": "#number_literal"13077}13078]13079},13080"7": {13081"patterns": [13082{13083"include": "#inline_comment"13084}13085]13086},13087"8": {13088"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13089},13090"9": {13091"name": "comment.block.cpp"13092},13093"10": {13094"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13095},13096"11": {13097"patterns": [13098{13099"match": "((?<!\\w)final(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))",13100"captures": {13101"1": {13102"name": "storage.type.modifier.final.cpp"13103},13104"2": {13105"patterns": [13106{13107"include": "#inline_comment"13108}13109]13110},13111"3": {13112"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13113},13114"4": {13115"name": "comment.block.cpp"13116},13117"5": {13118"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13119}13120}13121},13122{13123"match": "((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:((?<!\\w)final(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?(?=:|{|$)",13124"captures": {13125"1": {13126"name": "entity.name.type.struct.cpp"13127},13128"2": {13129"patterns": [13130{13131"include": "#inline_comment"13132}13133]13134},13135"3": {13136"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13137},13138"4": {13139"name": "comment.block.cpp"13140},13141"5": {13142"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13143},13144"6": {13145"name": "storage.type.modifier.final.cpp"13146},13147"7": {13148"patterns": [13149{13150"include": "#inline_comment"13151}13152]13153},13154"8": {13155"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13156},13157"9": {13158"name": "comment.block.cpp"13159},13160"10": {13161"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13162}13163}13164},13165{13166"match": "DLLEXPORT",13167"name": "entity.name.other.preprocessor.macro.predefined.DLLEXPORT.cpp"13168},13169{13170"match": "(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*",13171"name": "entity.name.other.preprocessor.macro.predefined.probably.$0.cpp"13172}13173]13174},13175"12": {13176"patterns": [13177{13178"include": "#inline_comment"13179}13180]13181},13182"13": {13183"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13184},13185"14": {13186"name": "comment.block.cpp"13187},13188"15": {13189"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13190},13191"16": {13192"patterns": [13193{13194"include": "#inline_comment"13195}13196]13197},13198"17": {13199"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13200},13201"18": {13202"name": "comment.block.cpp"13203},13204"19": {13205"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13206},13207"20": {13208"name": "punctuation.separator.colon.inheritance.cpp"13209}13210},13211"endCaptures": {13212"1": {13213"name": "punctuation.terminator.statement.cpp"13214},13215"2": {13216"name": "punctuation.terminator.statement.cpp"13217}13218},13219"name": "meta.block.struct.cpp",13220"patterns": [13221{13222"begin": "\\G ?",13223"end": "(?:\\{|<%|\\?\\?<|(?=;))",13224"beginCaptures": {},13225"endCaptures": {13226"0": {13227"name": "punctuation.section.block.begin.bracket.curly.struct.cpp"13228}13229},13230"name": "meta.head.struct.cpp",13231"patterns": [13232{13233"include": "#ever_present_context"13234},13235{13236"include": "#inheritance_context"13237},13238{13239"include": "#template_call_range"13240}13241]13242},13243{13244"begin": "(?<=\\{|<%|\\?\\?<)",13245"end": "\\}|%>|\\?\\?>",13246"beginCaptures": {},13247"endCaptures": {13248"0": {13249"name": "punctuation.section.block.end.bracket.curly.struct.cpp"13250}13251},13252"name": "meta.body.struct.cpp",13253"patterns": [13254{13255"include": "#function_pointer"13256},13257{13258"include": "#static_assert"13259},13260{13261"include": "#constructor_inline"13262},13263{13264"include": "#destructor_inline"13265},13266{13267"include": "$self"13268}13269]13270},13271{13272"begin": "(?<=\\}|%>|\\?\\?>)[\\s]*",13273"end": "[\\s]*(?=;)",13274"beginCaptures": {},13275"endCaptures": {},13276"name": "meta.tail.struct.cpp",13277"patterns": [13278{13279"include": "$self"13280}13281]13282}13283]13284},13285"struct_declare": {13286"match": "((?<!\\w)struct(?!\\w))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))(((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))?(?:(?:&|\\*)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:&|\\*))?((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))\\b(?!override\\W|override\\$|final\\W|final\\$)((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?=\\S)(?![:{a-zA-Z])",13287"captures": {13288"1": {13289"name": "storage.type.struct.declare.cpp"13290},13291"2": {13292"patterns": [13293{13294"include": "#inline_comment"13295}13296]13297},13298"3": {13299"patterns": [13300{13301"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",13302"captures": {13303"1": {13304"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13305},13306"2": {13307"name": "comment.block.cpp"13308},13309"3": {13310"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13311}13312}13313}13314]13315},13316"4": {13317"name": "entity.name.type.struct.cpp"13318},13319"5": {13320"patterns": [13321{13322"match": "\\*",13323"name": "storage.modifier.pointer.cpp"13324},13325{13326"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",13327"captures": {13328"1": {13329"patterns": [13330{13331"include": "#inline_comment"13332}13333]13334},13335"2": {13336"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13337},13338"3": {13339"name": "comment.block.cpp"13340},13341"4": {13342"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13343}13344},13345"name": "invalid.illegal.reference-type.cpp"13346},13347{13348"match": "\\&",13349"name": "storage.modifier.reference.cpp"13350}13351]13352},13353"6": {13354"patterns": [13355{13356"include": "#inline_comment"13357}13358]13359},13360"7": {13361"patterns": [13362{13363"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",13364"captures": {13365"1": {13366"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13367},13368"2": {13369"name": "comment.block.cpp"13370},13371"3": {13372"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13373}13374}13375}13376]13377},13378"8": {13379"patterns": [13380{13381"include": "#inline_comment"13382}13383]13384},13385"9": {13386"patterns": [13387{13388"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",13389"captures": {13390"1": {13391"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13392},13393"2": {13394"name": "comment.block.cpp"13395},13396"3": {13397"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13398}13399}13400}13401]13402},13403"10": {13404"patterns": [13405{13406"include": "#inline_comment"13407}13408]13409},13410"11": {13411"patterns": [13412{13413"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",13414"captures": {13415"1": {13416"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13417},13418"2": {13419"name": "comment.block.cpp"13420},13421"3": {13422"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13423}13424}13425}13426]13427},13428"12": {13429"name": "variable.other.object.declare.cpp"13430},13431"13": {13432"patterns": [13433{13434"include": "#inline_comment"13435}13436]13437},13438"14": {13439"patterns": [13440{13441"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",13442"captures": {13443"1": {13444"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13445},13446"2": {13447"name": "comment.block.cpp"13448},13449"3": {13450"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13451}13452}13453}13454]13455}13456}13457},13458"switch_conditional_parentheses": {13459"begin": "((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()",13460"end": "\\)",13461"beginCaptures": {13462"1": {13463"patterns": [13464{13465"include": "#inline_comment"13466}13467]13468},13469"2": {13470"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13471},13472"3": {13473"name": "comment.block.cpp"13474},13475"4": {13476"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13477},13478"5": {13479"name": "punctuation.section.parens.begin.bracket.round.conditional.switch.cpp"13480}13481},13482"endCaptures": {13483"0": {13484"name": "punctuation.section.parens.end.bracket.round.conditional.switch.cpp"13485}13486},13487"name": "meta.conditional.switch.cpp",13488"patterns": [13489{13490"include": "#evaluation_context"13491}13492]13493},13494"switch_statement": {13495"begin": "((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)switch(?!\\w))",13496"end": "(?:(?<=\\}|%>|\\?\\?>)|(?=[;>\\[\\]=]))",13497"beginCaptures": {13498"0": {13499"name": "meta.head.switch.cpp"13500},13501"1": {13502"patterns": [13503{13504"include": "#inline_comment"13505}13506]13507},13508"2": {13509"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13510},13511"3": {13512"name": "comment.block.cpp"13513},13514"4": {13515"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13516},13517"5": {13518"name": "keyword.control.switch.cpp"13519}13520},13521"endCaptures": {},13522"name": "meta.block.switch.cpp",13523"patterns": [13524{13525"begin": "\\G ?",13526"end": "(?:\\{|<%|\\?\\?<|(?=;))",13527"beginCaptures": {},13528"endCaptures": {13529"0": {13530"name": "punctuation.section.block.begin.bracket.curly.switch.cpp"13531}13532},13533"name": "meta.head.switch.cpp",13534"patterns": [13535{13536"include": "#switch_conditional_parentheses"13537},13538{13539"include": "$self"13540}13541]13542},13543{13544"begin": "(?<=\\{|<%|\\?\\?<)",13545"end": "\\}|%>|\\?\\?>",13546"beginCaptures": {},13547"endCaptures": {13548"0": {13549"name": "punctuation.section.block.end.bracket.curly.switch.cpp"13550}13551},13552"name": "meta.body.switch.cpp",13553"patterns": [13554{13555"include": "#default_statement"13556},13557{13558"include": "#case_statement"13559},13560{13561"include": "$self"13562}13563]13564},13565{13566"begin": "(?<=\\}|%>|\\?\\?>)[\\s]*",13567"end": "[\\s]*(?=;)",13568"beginCaptures": {},13569"endCaptures": {},13570"name": "meta.tail.switch.cpp",13571"patterns": [13572{13573"include": "$self"13574}13575]13576}13577]13578},13579"template_argument_defaulted": {13580"match": "(?<=<|,)(?:\\s+)?((?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*)\\s+((?:(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*)?)(?:\\s+)?(\\=)",13581"captures": {13582"1": {13583"name": "storage.type.template.argument.$1.cpp"13584},13585"2": {13586"name": "entity.name.type.template.cpp"13587},13588"3": {13589"name": "keyword.operator.assignment.cpp"13590}13591}13592},13593"template_call_context": {13594"patterns": [13595{13596"include": "#ever_present_context"13597},13598{13599"include": "#template_call_range"13600},13601{13602"include": "#storage_types"13603},13604{13605"include": "#language_constants"13606},13607{13608"include": "#scope_resolution_template_call_inner_generated"13609},13610{13611"include": "#operators"13612},13613{13614"include": "#number_literal"13615},13616{13617"include": "#string_context"13618},13619{13620"include": "#comma_in_template_argument"13621},13622{13623"include": "#qualified_type"13624}13625]13626},13627"template_call_innards": {13628"match": "((?<!<)<(?!<)(?:(?:(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/)))|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<1>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+",13629"captures": {13630"0": {13631"patterns": [13632{13633"include": "#template_call_range"13634}13635]13636},13637"2": {13638"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13639},13640"3": {13641"name": "comment.block.cpp"13642},13643"4": {13644"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13645}13646},13647"name": "meta.template.call.cpp"13648},13649"template_call_range": {13650"begin": "<",13651"end": ">",13652"beginCaptures": {13653"0": {13654"name": "punctuation.section.angle-brackets.begin.template.call.cpp"13655}13656},13657"endCaptures": {13658"0": {13659"name": "punctuation.section.angle-brackets.end.template.call.cpp"13660}13661},13662"name": "meta.template.call.cpp",13663"patterns": [13664{13665"include": "#template_call_context"13666}13667]13668},13669"template_definition": {13670"begin": "(?<!\\w)(template)(?:\\s+)?(<)",13671"end": ">",13672"beginCaptures": {13673"1": {13674"name": "storage.type.template.cpp"13675},13676"2": {13677"name": "punctuation.section.angle-brackets.begin.template.definition.cpp"13678}13679},13680"endCaptures": {13681"0": {13682"name": "punctuation.section.angle-brackets.end.template.definition.cpp"13683}13684},13685"name": "meta.template.definition.cpp",13686"patterns": [13687{13688"begin": "(?<=\\w)(?:\\s+)?<",13689"end": ">",13690"beginCaptures": {13691"0": {13692"name": "punctuation.section.angle-brackets.begin.template.call.cpp"13693}13694},13695"endCaptures": {13696"0": {13697"name": "punctuation.section.angle-brackets.end.template.call.cpp"13698}13699},13700"patterns": [13701{13702"include": "#template_call_context"13703}13704]13705},13706{13707"include": "#template_definition_context"13708}13709]13710},13711"template_definition_argument": {13712"match": "((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(?:(?:((?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*)|((?:(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*\\s+)+)((?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*))|((?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*)(?:\\s+)?(\\.\\.\\.)(?:\\s+)?((?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*))|(?<!\\w)(template)(?:\\s+)?(<)(?:\\s+)?((?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*)(?:\\s+)?((?:(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*)?)(?:\\s+)?(>)(?:\\s+)?(class|typename)(?:\\s+((?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*))?)(?:\\s+)?(?:(\\=)(?:\\s+)?(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*)?(?:(,)|(?=>|$))",13713"captures": {13714"1": {13715"patterns": [13716{13717"include": "#inline_comment"13718}13719]13720},13721"2": {13722"patterns": [13723{13724"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",13725"captures": {13726"1": {13727"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13728},13729"2": {13730"name": "comment.block.cpp"13731},13732"3": {13733"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13734}13735}13736}13737]13738},13739"3": {13740"name": "storage.type.template.argument.$3.cpp"13741},13742"4": {13743"patterns": [13744{13745"match": "(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*",13746"name": "storage.type.template.argument.$0.cpp"13747}13748]13749},13750"5": {13751"name": "entity.name.type.template.cpp"13752},13753"6": {13754"name": "storage.type.template.argument.$6.cpp"13755},13756"7": {13757"name": "punctuation.vararg-ellipses.template.definition.cpp"13758},13759"8": {13760"name": "entity.name.type.template.cpp"13761},13762"9": {13763"name": "storage.type.template.cpp"13764},13765"10": {13766"name": "punctuation.section.angle-brackets.begin.template.definition.cpp"13767},13768"11": {13769"name": "storage.type.template.argument.$11.cpp"13770},13771"12": {13772"name": "entity.name.type.template.cpp"13773},13774"13": {13775"name": "punctuation.section.angle-brackets.end.template.definition.cpp"13776},13777"14": {13778"name": "storage.type.template.argument.$14.cpp"13779},13780"15": {13781"name": "entity.name.type.template.cpp"13782},13783"16": {13784"name": "keyword.operator.assignment.cpp"13785},13786"17": {13787"name": "punctuation.separator.delimiter.comma.template.argument.cpp"13788}13789}13790},13791"template_definition_context": {13792"patterns": [13793{13794"include": "#scope_resolution_template_definition_inner_generated"13795},13796{13797"include": "#template_definition_argument"13798},13799{13800"include": "#template_argument_defaulted"13801},13802{13803"include": "#template_call_innards"13804},13805{13806"include": "#evaluation_context"13807}13808]13809},13810"template_explicit_instantiation": {13811"match": "(?<!\\w)(?:(extern)\\s+)?(template)\\s+",13812"captures": {13813"1": {13814"name": "storage.modifier.specifier.extern.cpp"13815},13816"2": {13817"name": "storage.type.template.cpp"13818}13819},13820"name": "meta.template.explicit-instantiation.cpp"13821},13822"template_isolated_definition": {13823"match": "(?<!\\w)(template)(?:\\s+)?(<)(.*)(>)(?:\\s+)?$",13824"captures": {13825"1": {13826"name": "storage.type.template.cpp"13827},13828"2": {13829"name": "punctuation.section.angle-brackets.begin.template.definition.cpp"13830},13831"3": {13832"name": "meta.template.definition.cpp",13833"patterns": [13834{13835"include": "#template_definition_context"13836}13837]13838},13839"4": {13840"name": "punctuation.section.angle-brackets.end.template.definition.cpp"13841}13842}13843},13844"ternary_operator": {13845"begin": "\\?",13846"end": ":",13847"beginCaptures": {13848"0": {13849"name": "keyword.operator.ternary.cpp"13850}13851},13852"endCaptures": {13853"0": {13854"name": "keyword.operator.ternary.cpp"13855}13856},13857"patterns": [13858{13859"include": "#ever_present_context"13860},13861{13862"include": "#string_context"13863},13864{13865"include": "#number_literal"13866},13867{13868"include": "#method_access"13869},13870{13871"include": "#member_access"13872},13873{13874"include": "#predefined_macros"13875},13876{13877"include": "#operators"13878},13879{13880"include": "#memory_operators"13881},13882{13883"include": "#wordlike_operators"13884},13885{13886"include": "#type_casting_operators"13887},13888{13889"include": "#control_flow_keywords"13890},13891{13892"include": "#exception_keywords"13893},13894{13895"include": "#the_this_keyword"13896},13897{13898"include": "#language_constants"13899},13900{13901"include": "#builtin_storage_type_initilizer"13902},13903{13904"include": "#qualifiers_and_specifiers_post_parameters"13905},13906{13907"include": "#functional_specifiers_pre_parameters"13908},13909{13910"include": "#storage_types"13911},13912{13913"include": "#lambdas"13914},13915{13916"include": "#attributes_context"13917},13918{13919"include": "#parentheses"13920},13921{13922"include": "#function_call"13923},13924{13925"include": "#scope_resolution_inner_generated"13926},13927{13928"include": "#square_brackets"13929},13930{13931"include": "#semicolon"13932},13933{13934"include": "#comma"13935}13936],13937"applyEndPatternLast": 113938},13939"the_this_keyword": {13940"match": "((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)this(?!\\w))",13941"captures": {13942"1": {13943"patterns": [13944{13945"include": "#inline_comment"13946}13947]13948},13949"2": {13950"patterns": [13951{13952"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",13953"captures": {13954"1": {13955"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13956},13957"2": {13958"name": "comment.block.cpp"13959},13960"3": {13961"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13962}13963}13964}13965]13966},13967"3": {13968"name": "variable.language.this.cpp"13969}13970}13971},13972"type_alias": {13973"match": "(using)\\s+(?!namespace)((?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*)(?:\\s+)?((?:(?:(?:\\[\\[.*?\\]\\]|__attribute(?:__)?\\s*\\(\\s*\\(.*?\\)\\s*\\))|__declspec\\(.*?\\))|alignas\\(.*?\\))(?!\\)))?(?:\\s+)?(\\=)(?:\\s+)?((?:typename)?)(?:\\s+)?((?:(?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)(?<!\\w)(?:(?:thread_local)|(?:volatile)|(?:register)|(?:restrict)|(?:static)|(?:extern)|(?:const))(?!\\w)\\s+)+)?(?:(\\s*+((?:(?:(?:\\[\\[.*?\\]\\]|__attribute(?:__)?\\s*\\(\\s*\\(.*?\\)\\s*\\))|__declspec\\(.*?\\))|alignas\\(.*?\\))(?!\\)))?((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:((?:::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<19>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*+)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\b)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*\\b((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<19>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)?(?![\\w<:.]))|(.*(?<!;)))(?:(((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))?(?:(?:&|\\*)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:&|\\*))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?(?:(\\[)(\\w*)(\\])(?:\\s+)?)?(?:\\s+)?(?:(;)|\\n)",13974"captures": {13975"1": {13976"name": "keyword.other.using.directive.cpp"13977},13978"2": {13979"name": "entity.name.type.cpp"13980},13981"3": {13982"patterns": [13983{13984"include": "#attributes_context"13985},13986{13987"include": "#number_literal"13988}13989]13990},13991"4": {13992"name": "keyword.operator.assignment.cpp"13993},13994"5": {13995"name": "keyword.other.typename.cpp"13996},13997"6": {13998"patterns": [13999{14000"include": "#storage_specifiers"14001}14002]14003},14004"7": {14005"patterns": [14006{14007"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",14008"captures": {14009"1": {14010"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14011},14012"2": {14013"name": "comment.block.cpp"14014},14015"3": {14016"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14017}14018}14019}14020]14021},14022"8": {14023"name": "meta.qualified_type.cpp",14024"patterns": [14025{14026"match": "::",14027"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"14028},14029{14030"match": "(?<!\\w)(?:(?:struct)|(?:class)|(?:union)|(?:enum))(?!\\w)",14031"name": "storage.type.$0.cpp"14032},14033{14034"include": "#attributes_context"14035},14036{14037"include": "#storage_types"14038},14039{14040"include": "#number_literal"14041},14042{14043"include": "#string_context"14044},14045{14046"include": "#comma"14047},14048{14049"include": "#scope_resolution_inner_generated"14050},14051{14052"begin": "<",14053"end": ">",14054"beginCaptures": {14055"0": {14056"name": "punctuation.section.angle-brackets.begin.template.call.cpp"14057}14058},14059"endCaptures": {14060"0": {14061"name": "punctuation.section.angle-brackets.end.template.call.cpp"14062}14063},14064"name": "meta.template.call.cpp",14065"patterns": [14066{14067"include": "#template_call_context"14068}14069]14070},14071{14072"match": "(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*",14073"name": "entity.name.type.cpp"14074}14075]14076},14077"9": {14078"patterns": [14079{14080"include": "#attributes_context"14081},14082{14083"include": "#number_literal"14084}14085]14086},14087"10": {14088"patterns": [14089{14090"include": "#inline_comment"14091}14092]14093},14094"11": {14095"patterns": [14096{14097"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",14098"captures": {14099"1": {14100"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14101},14102"2": {14103"name": "comment.block.cpp"14104},14105"3": {14106"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14107}14108}14109}14110]14111},14112"12": {14113"patterns": [14114{14115"include": "#inline_comment"14116}14117]14118},14119"13": {14120"patterns": [14121{14122"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",14123"captures": {14124"1": {14125"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14126},14127"2": {14128"name": "comment.block.cpp"14129},14130"3": {14131"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14132}14133}14134}14135]14136},14137"14": {14138"patterns": [14139{14140"match": "::",14141"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"14142},14143{14144"match": "(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)",14145"name": "entity.name.scope-resolution.type.cpp"14146},14147{14148"include": "#template_call_range"14149}14150]14151},14152"15": {14153"patterns": [14154{14155"include": "#template_call_range"14156}14157]14158},14159"17": {14160"patterns": [14161{14162"include": "#inline_comment"14163}14164]14165},14166"18": {14167"patterns": [14168{14169"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",14170"captures": {14171"1": {14172"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14173},14174"2": {14175"name": "comment.block.cpp"14176},14177"3": {14178"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14179}14180}14181}14182]14183},14184"20": {14185"name": "meta.declaration.type.alias.value.unknown.cpp",14186"patterns": [14187{14188"include": "#evaluation_context"14189}14190]14191},14192"21": {14193"patterns": [14194{14195"match": "\\*",14196"name": "storage.modifier.pointer.cpp"14197},14198{14199"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",14200"captures": {14201"1": {14202"patterns": [14203{14204"include": "#inline_comment"14205}14206]14207},14208"2": {14209"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14210},14211"3": {14212"name": "comment.block.cpp"14213},14214"4": {14215"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14216}14217},14218"name": "invalid.illegal.reference-type.cpp"14219},14220{14221"match": "\\&",14222"name": "storage.modifier.reference.cpp"14223}14224]14225},14226"22": {14227"patterns": [14228{14229"include": "#inline_comment"14230}14231]14232},14233"23": {14234"patterns": [14235{14236"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",14237"captures": {14238"1": {14239"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14240},14241"2": {14242"name": "comment.block.cpp"14243},14244"3": {14245"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14246}14247}14248}14249]14250},14251"24": {14252"patterns": [14253{14254"include": "#inline_comment"14255}14256]14257},14258"25": {14259"patterns": [14260{14261"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",14262"captures": {14263"1": {14264"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14265},14266"2": {14267"name": "comment.block.cpp"14268},14269"3": {14270"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14271}14272}14273}14274]14275},14276"26": {14277"patterns": [14278{14279"include": "#inline_comment"14280}14281]14282},14283"27": {14284"patterns": [14285{14286"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",14287"captures": {14288"1": {14289"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14290},14291"2": {14292"name": "comment.block.cpp"14293},14294"3": {14295"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14296}14297}14298}14299]14300},14301"28": {14302"name": "punctuation.definition.begin.bracket.square.cpp"14303},14304"29": {14305"patterns": [14306{14307"include": "#evaluation_context"14308}14309]14310},14311"30": {14312"name": "punctuation.definition.end.bracket.square.cpp"14313},14314"31": {14315"name": "punctuation.terminator.statement.cpp"14316}14317},14318"name": "meta.declaration.type.alias.cpp"14319},14320"type_casting_operators": {14321"match": "((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:(?:reinterpret_cast)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast))(?!\\w))",14322"captures": {14323"1": {14324"patterns": [14325{14326"include": "#inline_comment"14327}14328]14329},14330"2": {14331"patterns": [14332{14333"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",14334"captures": {14335"1": {14336"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14337},14338"2": {14339"name": "comment.block.cpp"14340},14341"3": {14342"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14343}14344}14345}14346]14347},14348"3": {14349"name": "keyword.operator.wordlike.cpp keyword.operator.cast.$3.cpp"14350}14351}14352},14353"typedef_class": {14354"begin": "((?<!\\w)typedef(?!\\w))(?:\\s+)?(?=(?<!\\w)class(?!\\w))",14355"end": "(?<=;)",14356"beginCaptures": {14357"1": {14358"name": "keyword.other.typedef.cpp"14359}14360},14361"endCaptures": {},14362"patterns": [14363{14364"begin": "((?<!\\w)class(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(?={)|(?:((?:(?:(?:\\[\\[.*?\\]\\]|__attribute(?:__)?\\s*\\(\\s*\\(.*?\\)\\s*\\))|__declspec\\(.*?\\))|alignas\\(.*?\\))(?!\\)))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?((?:(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*+)?(?:((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(:(?!:)))?)",14365"end": "(?:(?:(?<=\\}|%>|\\?\\?>)(?:\\s+)?(;)|(;))|(?=[;>\\[\\]=]))",14366"beginCaptures": {14367"0": {14368"name": "meta.head.class.cpp"14369},14370"1": {14371"name": "storage.type.$1.cpp"14372},14373"2": {14374"patterns": [14375{14376"include": "#inline_comment"14377}14378]14379},14380"3": {14381"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14382},14383"4": {14384"name": "comment.block.cpp"14385},14386"5": {14387"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14388},14389"6": {14390"patterns": [14391{14392"include": "#attributes_context"14393},14394{14395"include": "#number_literal"14396}14397]14398},14399"7": {14400"patterns": [14401{14402"include": "#inline_comment"14403}14404]14405},14406"8": {14407"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14408},14409"9": {14410"name": "comment.block.cpp"14411},14412"10": {14413"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14414},14415"11": {14416"patterns": [14417{14418"match": "((?<!\\w)final(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))",14419"captures": {14420"1": {14421"name": "storage.type.modifier.final.cpp"14422},14423"2": {14424"patterns": [14425{14426"include": "#inline_comment"14427}14428]14429},14430"3": {14431"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14432},14433"4": {14434"name": "comment.block.cpp"14435},14436"5": {14437"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14438}14439}14440},14441{14442"match": "((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:((?<!\\w)final(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?(?=:|{|$)",14443"captures": {14444"1": {14445"name": "entity.name.type.class.cpp"14446},14447"2": {14448"patterns": [14449{14450"include": "#inline_comment"14451}14452]14453},14454"3": {14455"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14456},14457"4": {14458"name": "comment.block.cpp"14459},14460"5": {14461"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14462},14463"6": {14464"name": "storage.type.modifier.final.cpp"14465},14466"7": {14467"patterns": [14468{14469"include": "#inline_comment"14470}14471]14472},14473"8": {14474"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14475},14476"9": {14477"name": "comment.block.cpp"14478},14479"10": {14480"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14481}14482}14483},14484{14485"match": "DLLEXPORT",14486"name": "entity.name.other.preprocessor.macro.predefined.DLLEXPORT.cpp"14487},14488{14489"match": "(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*",14490"name": "entity.name.other.preprocessor.macro.predefined.probably.$0.cpp"14491}14492]14493},14494"12": {14495"patterns": [14496{14497"include": "#inline_comment"14498}14499]14500},14501"13": {14502"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14503},14504"14": {14505"name": "comment.block.cpp"14506},14507"15": {14508"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14509},14510"16": {14511"patterns": [14512{14513"include": "#inline_comment"14514}14515]14516},14517"17": {14518"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14519},14520"18": {14521"name": "comment.block.cpp"14522},14523"19": {14524"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14525},14526"20": {14527"name": "punctuation.separator.colon.inheritance.cpp"14528}14529},14530"endCaptures": {14531"1": {14532"name": "punctuation.terminator.statement.cpp"14533},14534"2": {14535"name": "punctuation.terminator.statement.cpp"14536}14537},14538"name": "meta.block.class.cpp",14539"patterns": [14540{14541"begin": "\\G ?",14542"end": "(?:\\{|<%|\\?\\?<|(?=;))",14543"beginCaptures": {},14544"endCaptures": {14545"0": {14546"name": "punctuation.section.block.begin.bracket.curly.class.cpp"14547}14548},14549"name": "meta.head.class.cpp",14550"patterns": [14551{14552"include": "#ever_present_context"14553},14554{14555"include": "#inheritance_context"14556},14557{14558"include": "#template_call_range"14559}14560]14561},14562{14563"begin": "(?<=\\{|<%|\\?\\?<)",14564"end": "\\}|%>|\\?\\?>",14565"beginCaptures": {},14566"endCaptures": {14567"0": {14568"name": "punctuation.section.block.end.bracket.curly.class.cpp"14569}14570},14571"name": "meta.body.class.cpp",14572"patterns": [14573{14574"include": "#function_pointer"14575},14576{14577"include": "#static_assert"14578},14579{14580"include": "#constructor_inline"14581},14582{14583"include": "#destructor_inline"14584},14585{14586"include": "$self"14587}14588]14589},14590{14591"begin": "(?<=\\}|%>|\\?\\?>)[\\s]*",14592"end": "[\\s]*(?=;)",14593"beginCaptures": {},14594"endCaptures": {},14595"name": "meta.tail.class.cpp",14596"patterns": [14597{14598"match": "(((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))?(?:(?:&|\\*)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:&|\\*))?((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))",14599"captures": {14600"1": {14601"patterns": [14602{14603"match": "\\*",14604"name": "storage.modifier.pointer.cpp"14605},14606{14607"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",14608"captures": {14609"1": {14610"patterns": [14611{14612"include": "#inline_comment"14613}14614]14615},14616"2": {14617"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14618},14619"3": {14620"name": "comment.block.cpp"14621},14622"4": {14623"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14624}14625},14626"name": "invalid.illegal.reference-type.cpp"14627},14628{14629"match": "\\&",14630"name": "storage.modifier.reference.cpp"14631}14632]14633},14634"2": {14635"patterns": [14636{14637"include": "#inline_comment"14638}14639]14640},14641"3": {14642"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14643},14644"4": {14645"name": "comment.block.cpp"14646},14647"5": {14648"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14649},14650"6": {14651"patterns": [14652{14653"include": "#inline_comment"14654}14655]14656},14657"7": {14658"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14659},14660"8": {14661"name": "comment.block.cpp"14662},14663"9": {14664"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14665},14666"10": {14667"patterns": [14668{14669"include": "#inline_comment"14670}14671]14672},14673"11": {14674"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14675},14676"12": {14677"name": "comment.block.cpp"14678},14679"13": {14680"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14681},14682"14": {14683"name": "entity.name.type.alias.cpp"14684}14685}14686},14687{14688"match": ","14689}14690]14691}14692]14693}14694]14695},14696"typedef_function_pointer": {14697"begin": "((?<!\\w)typedef(?!\\w))(?:\\s+)?(?=.*\\(\\*\\s*(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*\\s*\\))",14698"end": "(?<=;)",14699"beginCaptures": {14700"1": {14701"name": "keyword.other.typedef.cpp"14702}14703},14704"endCaptures": {},14705"patterns": [14706{14707"begin": "(\\s*+((?:(?:(?:\\[\\[.*?\\]\\]|__attribute(?:__)?\\s*\\(\\s*\\(.*?\\)\\s*\\))|__declspec\\(.*?\\))|alignas\\(.*?\\))(?!\\)))?((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:((?:::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<18>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*+)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\b)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*\\b((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<18>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)?(?![\\w<:.]))(((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))?(?:(?:&|\\*)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:&|\\*))?((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()(\\*)(?:\\s+)?((?:(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*)?)(?:\\s+)?(?:(\\[)(\\w*)(\\])(?:\\s+)?)*(\\))(?:\\s+)?(\\()",14708"end": "(\\))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?=[{=,);>]|\\n)(?!\\()",14709"beginCaptures": {14710"1": {14711"name": "meta.qualified_type.cpp",14712"patterns": [14713{14714"match": "::",14715"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"14716},14717{14718"match": "(?<!\\w)(?:(?:struct)|(?:class)|(?:union)|(?:enum))(?!\\w)",14719"name": "storage.type.$0.cpp"14720},14721{14722"include": "#attributes_context"14723},14724{14725"include": "#storage_types"14726},14727{14728"include": "#number_literal"14729},14730{14731"include": "#string_context"14732},14733{14734"include": "#comma"14735},14736{14737"include": "#scope_resolution_inner_generated"14738},14739{14740"begin": "<",14741"end": ">",14742"beginCaptures": {14743"0": {14744"name": "punctuation.section.angle-brackets.begin.template.call.cpp"14745}14746},14747"endCaptures": {14748"0": {14749"name": "punctuation.section.angle-brackets.end.template.call.cpp"14750}14751},14752"name": "meta.template.call.cpp",14753"patterns": [14754{14755"include": "#template_call_context"14756}14757]14758},14759{14760"match": "(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*",14761"name": "entity.name.type.cpp"14762}14763]14764},14765"2": {14766"patterns": [14767{14768"include": "#attributes_context"14769},14770{14771"include": "#number_literal"14772}14773]14774},14775"3": {14776"patterns": [14777{14778"include": "#inline_comment"14779}14780]14781},14782"4": {14783"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14784},14785"5": {14786"name": "comment.block.cpp"14787},14788"6": {14789"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14790},14791"7": {14792"patterns": [14793{14794"include": "#inline_comment"14795}14796]14797},14798"8": {14799"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14800},14801"9": {14802"name": "comment.block.cpp"14803},14804"10": {14805"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14806},14807"11": {14808"patterns": [14809{14810"match": "::",14811"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"14812},14813{14814"match": "(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)",14815"name": "entity.name.scope-resolution.type.cpp"14816},14817{14818"include": "#template_call_range"14819}14820]14821},14822"12": {14823"patterns": [14824{14825"include": "#template_call_range"14826}14827]14828},14829"13": {},14830"14": {14831"patterns": [14832{14833"include": "#inline_comment"14834}14835]14836},14837"15": {14838"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14839},14840"16": {14841"name": "comment.block.cpp"14842},14843"17": {14844"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14845},14846"18": {},14847"19": {14848"patterns": [14849{14850"match": "\\*",14851"name": "storage.modifier.pointer.cpp"14852},14853{14854"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",14855"captures": {14856"1": {14857"patterns": [14858{14859"include": "#inline_comment"14860}14861]14862},14863"2": {14864"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14865},14866"3": {14867"name": "comment.block.cpp"14868},14869"4": {14870"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14871}14872},14873"name": "invalid.illegal.reference-type.cpp"14874},14875{14876"match": "\\&",14877"name": "storage.modifier.reference.cpp"14878}14879]14880},14881"20": {14882"patterns": [14883{14884"include": "#inline_comment"14885}14886]14887},14888"21": {14889"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14890},14891"22": {14892"name": "comment.block.cpp"14893},14894"23": {14895"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14896},14897"24": {14898"patterns": [14899{14900"include": "#inline_comment"14901}14902]14903},14904"25": {14905"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14906},14907"26": {14908"name": "comment.block.cpp"14909},14910"27": {14911"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14912},14913"28": {14914"patterns": [14915{14916"include": "#inline_comment"14917}14918]14919},14920"29": {14921"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14922},14923"30": {14924"name": "comment.block.cpp"14925},14926"31": {14927"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14928},14929"32": {14930"name": "punctuation.section.parens.begin.bracket.round.function.pointer.cpp"14931},14932"33": {14933"name": "punctuation.definition.function.pointer.dereference.cpp"14934},14935"34": {14936"name": "entity.name.type.alias.cpp entity.name.type.pointer.function.cpp"14937},14938"35": {14939"name": "punctuation.definition.begin.bracket.square.cpp"14940},14941"36": {14942"patterns": [14943{14944"include": "#evaluation_context"14945}14946]14947},14948"37": {14949"name": "punctuation.definition.end.bracket.square.cpp"14950},14951"38": {14952"name": "punctuation.section.parens.end.bracket.round.function.pointer.cpp"14953},14954"39": {14955"name": "punctuation.section.parameters.begin.bracket.round.function.pointer.cpp"14956}14957},14958"endCaptures": {14959"1": {14960"name": "punctuation.section.parameters.end.bracket.round.function.pointer.cpp"14961},14962"2": {14963"patterns": [14964{14965"include": "#inline_comment"14966}14967]14968},14969"3": {14970"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14971},14972"4": {14973"name": "comment.block.cpp"14974},14975"5": {14976"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14977}14978},14979"patterns": [14980{14981"include": "#function_parameter_context"14982}14983]14984}14985]14986},14987"typedef_struct": {14988"begin": "((?<!\\w)typedef(?!\\w))(?:\\s+)?(?=(?<!\\w)struct(?!\\w))",14989"end": "(?<=;)",14990"beginCaptures": {14991"1": {14992"name": "keyword.other.typedef.cpp"14993}14994},14995"endCaptures": {},14996"patterns": [14997{14998"begin": "((?<!\\w)struct(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(?={)|(?:((?:(?:(?:\\[\\[.*?\\]\\]|__attribute(?:__)?\\s*\\(\\s*\\(.*?\\)\\s*\\))|__declspec\\(.*?\\))|alignas\\(.*?\\))(?!\\)))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?((?:(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*+)?(?:((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(:(?!:)))?)",14999"end": "(?:(?:(?<=\\}|%>|\\?\\?>)(?:\\s+)?(;)|(;))|(?=[;>\\[\\]=]))",15000"beginCaptures": {15001"0": {15002"name": "meta.head.struct.cpp"15003},15004"1": {15005"name": "storage.type.$1.cpp"15006},15007"2": {15008"patterns": [15009{15010"include": "#inline_comment"15011}15012]15013},15014"3": {15015"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15016},15017"4": {15018"name": "comment.block.cpp"15019},15020"5": {15021"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15022},15023"6": {15024"patterns": [15025{15026"include": "#attributes_context"15027},15028{15029"include": "#number_literal"15030}15031]15032},15033"7": {15034"patterns": [15035{15036"include": "#inline_comment"15037}15038]15039},15040"8": {15041"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15042},15043"9": {15044"name": "comment.block.cpp"15045},15046"10": {15047"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15048},15049"11": {15050"patterns": [15051{15052"match": "((?<!\\w)final(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))",15053"captures": {15054"1": {15055"name": "storage.type.modifier.final.cpp"15056},15057"2": {15058"patterns": [15059{15060"include": "#inline_comment"15061}15062]15063},15064"3": {15065"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15066},15067"4": {15068"name": "comment.block.cpp"15069},15070"5": {15071"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15072}15073}15074},15075{15076"match": "((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:((?<!\\w)final(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?(?=:|{|$)",15077"captures": {15078"1": {15079"name": "entity.name.type.struct.cpp"15080},15081"2": {15082"patterns": [15083{15084"include": "#inline_comment"15085}15086]15087},15088"3": {15089"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15090},15091"4": {15092"name": "comment.block.cpp"15093},15094"5": {15095"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15096},15097"6": {15098"name": "storage.type.modifier.final.cpp"15099},15100"7": {15101"patterns": [15102{15103"include": "#inline_comment"15104}15105]15106},15107"8": {15108"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15109},15110"9": {15111"name": "comment.block.cpp"15112},15113"10": {15114"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15115}15116}15117},15118{15119"match": "DLLEXPORT",15120"name": "entity.name.other.preprocessor.macro.predefined.DLLEXPORT.cpp"15121},15122{15123"match": "(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*",15124"name": "entity.name.other.preprocessor.macro.predefined.probably.$0.cpp"15125}15126]15127},15128"12": {15129"patterns": [15130{15131"include": "#inline_comment"15132}15133]15134},15135"13": {15136"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15137},15138"14": {15139"name": "comment.block.cpp"15140},15141"15": {15142"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15143},15144"16": {15145"patterns": [15146{15147"include": "#inline_comment"15148}15149]15150},15151"17": {15152"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15153},15154"18": {15155"name": "comment.block.cpp"15156},15157"19": {15158"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15159},15160"20": {15161"name": "punctuation.separator.colon.inheritance.cpp"15162}15163},15164"endCaptures": {15165"1": {15166"name": "punctuation.terminator.statement.cpp"15167},15168"2": {15169"name": "punctuation.terminator.statement.cpp"15170}15171},15172"name": "meta.block.struct.cpp",15173"patterns": [15174{15175"begin": "\\G ?",15176"end": "(?:\\{|<%|\\?\\?<|(?=;))",15177"beginCaptures": {},15178"endCaptures": {15179"0": {15180"name": "punctuation.section.block.begin.bracket.curly.struct.cpp"15181}15182},15183"name": "meta.head.struct.cpp",15184"patterns": [15185{15186"include": "#ever_present_context"15187},15188{15189"include": "#inheritance_context"15190},15191{15192"include": "#template_call_range"15193}15194]15195},15196{15197"begin": "(?<=\\{|<%|\\?\\?<)",15198"end": "\\}|%>|\\?\\?>",15199"beginCaptures": {},15200"endCaptures": {15201"0": {15202"name": "punctuation.section.block.end.bracket.curly.struct.cpp"15203}15204},15205"name": "meta.body.struct.cpp",15206"patterns": [15207{15208"include": "#function_pointer"15209},15210{15211"include": "#static_assert"15212},15213{15214"include": "#constructor_inline"15215},15216{15217"include": "#destructor_inline"15218},15219{15220"include": "$self"15221}15222]15223},15224{15225"begin": "(?<=\\}|%>|\\?\\?>)[\\s]*",15226"end": "[\\s]*(?=;)",15227"beginCaptures": {},15228"endCaptures": {},15229"name": "meta.tail.struct.cpp",15230"patterns": [15231{15232"match": "(((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))?(?:(?:&|\\*)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:&|\\*))?((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))",15233"captures": {15234"1": {15235"patterns": [15236{15237"match": "\\*",15238"name": "storage.modifier.pointer.cpp"15239},15240{15241"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",15242"captures": {15243"1": {15244"patterns": [15245{15246"include": "#inline_comment"15247}15248]15249},15250"2": {15251"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15252},15253"3": {15254"name": "comment.block.cpp"15255},15256"4": {15257"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15258}15259},15260"name": "invalid.illegal.reference-type.cpp"15261},15262{15263"match": "\\&",15264"name": "storage.modifier.reference.cpp"15265}15266]15267},15268"2": {15269"patterns": [15270{15271"include": "#inline_comment"15272}15273]15274},15275"3": {15276"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15277},15278"4": {15279"name": "comment.block.cpp"15280},15281"5": {15282"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15283},15284"6": {15285"patterns": [15286{15287"include": "#inline_comment"15288}15289]15290},15291"7": {15292"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15293},15294"8": {15295"name": "comment.block.cpp"15296},15297"9": {15298"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15299},15300"10": {15301"patterns": [15302{15303"include": "#inline_comment"15304}15305]15306},15307"11": {15308"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15309},15310"12": {15311"name": "comment.block.cpp"15312},15313"13": {15314"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15315},15316"14": {15317"name": "entity.name.type.alias.cpp"15318}15319}15320},15321{15322"match": ","15323}15324]15325}15326]15327}15328]15329},15330"typedef_union": {15331"begin": "((?<!\\w)typedef(?!\\w))(?:\\s+)?(?=(?<!\\w)union(?!\\w))",15332"end": "(?<=;)",15333"beginCaptures": {15334"1": {15335"name": "keyword.other.typedef.cpp"15336}15337},15338"endCaptures": {},15339"patterns": [15340{15341"begin": "((?<!\\w)union(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(?={)|(?:((?:(?:(?:\\[\\[.*?\\]\\]|__attribute(?:__)?\\s*\\(\\s*\\(.*?\\)\\s*\\))|__declspec\\(.*?\\))|alignas\\(.*?\\))(?!\\)))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?((?:(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*+)?(?:((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(:(?!:)))?)",15342"end": "(?:(?:(?<=\\}|%>|\\?\\?>)(?:\\s+)?(;)|(;))|(?=[;>\\[\\]=]))",15343"beginCaptures": {15344"0": {15345"name": "meta.head.union.cpp"15346},15347"1": {15348"name": "storage.type.$1.cpp"15349},15350"2": {15351"patterns": [15352{15353"include": "#inline_comment"15354}15355]15356},15357"3": {15358"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15359},15360"4": {15361"name": "comment.block.cpp"15362},15363"5": {15364"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15365},15366"6": {15367"patterns": [15368{15369"include": "#attributes_context"15370},15371{15372"include": "#number_literal"15373}15374]15375},15376"7": {15377"patterns": [15378{15379"include": "#inline_comment"15380}15381]15382},15383"8": {15384"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15385},15386"9": {15387"name": "comment.block.cpp"15388},15389"10": {15390"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15391},15392"11": {15393"patterns": [15394{15395"match": "((?<!\\w)final(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))",15396"captures": {15397"1": {15398"name": "storage.type.modifier.final.cpp"15399},15400"2": {15401"patterns": [15402{15403"include": "#inline_comment"15404}15405]15406},15407"3": {15408"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15409},15410"4": {15411"name": "comment.block.cpp"15412},15413"5": {15414"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15415}15416}15417},15418{15419"match": "((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:((?<!\\w)final(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?(?=:|{|$)",15420"captures": {15421"1": {15422"name": "entity.name.type.union.cpp"15423},15424"2": {15425"patterns": [15426{15427"include": "#inline_comment"15428}15429]15430},15431"3": {15432"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15433},15434"4": {15435"name": "comment.block.cpp"15436},15437"5": {15438"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15439},15440"6": {15441"name": "storage.type.modifier.final.cpp"15442},15443"7": {15444"patterns": [15445{15446"include": "#inline_comment"15447}15448]15449},15450"8": {15451"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15452},15453"9": {15454"name": "comment.block.cpp"15455},15456"10": {15457"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15458}15459}15460},15461{15462"match": "DLLEXPORT",15463"name": "entity.name.other.preprocessor.macro.predefined.DLLEXPORT.cpp"15464},15465{15466"match": "(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*",15467"name": "entity.name.other.preprocessor.macro.predefined.probably.$0.cpp"15468}15469]15470},15471"12": {15472"patterns": [15473{15474"include": "#inline_comment"15475}15476]15477},15478"13": {15479"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15480},15481"14": {15482"name": "comment.block.cpp"15483},15484"15": {15485"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15486},15487"16": {15488"patterns": [15489{15490"include": "#inline_comment"15491}15492]15493},15494"17": {15495"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15496},15497"18": {15498"name": "comment.block.cpp"15499},15500"19": {15501"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15502},15503"20": {15504"name": "punctuation.separator.colon.inheritance.cpp"15505}15506},15507"endCaptures": {15508"1": {15509"name": "punctuation.terminator.statement.cpp"15510},15511"2": {15512"name": "punctuation.terminator.statement.cpp"15513}15514},15515"name": "meta.block.union.cpp",15516"patterns": [15517{15518"begin": "\\G ?",15519"end": "(?:\\{|<%|\\?\\?<|(?=;))",15520"beginCaptures": {},15521"endCaptures": {15522"0": {15523"name": "punctuation.section.block.begin.bracket.curly.union.cpp"15524}15525},15526"name": "meta.head.union.cpp",15527"patterns": [15528{15529"include": "#ever_present_context"15530},15531{15532"include": "#inheritance_context"15533},15534{15535"include": "#template_call_range"15536}15537]15538},15539{15540"begin": "(?<=\\{|<%|\\?\\?<)",15541"end": "\\}|%>|\\?\\?>",15542"beginCaptures": {},15543"endCaptures": {15544"0": {15545"name": "punctuation.section.block.end.bracket.curly.union.cpp"15546}15547},15548"name": "meta.body.union.cpp",15549"patterns": [15550{15551"include": "#function_pointer"15552},15553{15554"include": "#static_assert"15555},15556{15557"include": "#constructor_inline"15558},15559{15560"include": "#destructor_inline"15561},15562{15563"include": "$self"15564}15565]15566},15567{15568"begin": "(?<=\\}|%>|\\?\\?>)[\\s]*",15569"end": "[\\s]*(?=;)",15570"beginCaptures": {},15571"endCaptures": {},15572"name": "meta.tail.union.cpp",15573"patterns": [15574{15575"match": "(((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))?(?:(?:&|\\*)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:&|\\*))?((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))",15576"captures": {15577"1": {15578"patterns": [15579{15580"match": "\\*",15581"name": "storage.modifier.pointer.cpp"15582},15583{15584"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",15585"captures": {15586"1": {15587"patterns": [15588{15589"include": "#inline_comment"15590}15591]15592},15593"2": {15594"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15595},15596"3": {15597"name": "comment.block.cpp"15598},15599"4": {15600"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15601}15602},15603"name": "invalid.illegal.reference-type.cpp"15604},15605{15606"match": "\\&",15607"name": "storage.modifier.reference.cpp"15608}15609]15610},15611"2": {15612"patterns": [15613{15614"include": "#inline_comment"15615}15616]15617},15618"3": {15619"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15620},15621"4": {15622"name": "comment.block.cpp"15623},15624"5": {15625"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15626},15627"6": {15628"patterns": [15629{15630"include": "#inline_comment"15631}15632]15633},15634"7": {15635"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15636},15637"8": {15638"name": "comment.block.cpp"15639},15640"9": {15641"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15642},15643"10": {15644"patterns": [15645{15646"include": "#inline_comment"15647}15648]15649},15650"11": {15651"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15652},15653"12": {15654"name": "comment.block.cpp"15655},15656"13": {15657"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15658},15659"14": {15660"name": "entity.name.type.alias.cpp"15661}15662}15663},15664{15665"match": ","15666}15667]15668}15669]15670}15671]15672},15673"typeid_operator": {15674"begin": "((?<!\\w)typeid(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()",15675"end": "\\)",15676"beginCaptures": {15677"1": {15678"name": "keyword.operator.functionlike.cpp keyword.operator.typeid.cpp"15679},15680"2": {15681"patterns": [15682{15683"include": "#inline_comment"15684}15685]15686},15687"3": {15688"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15689},15690"4": {15691"name": "comment.block.cpp"15692},15693"5": {15694"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15695},15696"6": {15697"name": "punctuation.section.arguments.begin.bracket.round.operator.typeid.cpp"15698}15699},15700"endCaptures": {15701"0": {15702"name": "punctuation.section.arguments.end.bracket.round.operator.typeid.cpp"15703}15704},15705"contentName": "meta.arguments.operator.typeid",15706"patterns": [15707{15708"include": "#evaluation_context"15709}15710]15711},15712"typename": {15713"match": "(((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?<!\\w)typename(?!\\w))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\s*+((?:(?:(?:\\[\\[.*?\\]\\]|__attribute(?:__)?\\s*\\(\\s*\\(.*?\\)\\s*\\))|__declspec\\(.*?\\))|alignas\\(.*?\\))(?!\\)))?((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:((?:::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<17>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*+)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\b)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*\\b((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<17>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)?(?![\\w<:.]))",15714"captures": {15715"1": {15716"name": "storage.modifier.cpp"15717},15718"2": {15719"patterns": [15720{15721"include": "#inline_comment"15722}15723]15724},15725"3": {15726"patterns": [15727{15728"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",15729"captures": {15730"1": {15731"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15732},15733"2": {15734"name": "comment.block.cpp"15735},15736"3": {15737"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15738}15739}15740}15741]15742},15743"4": {15744"patterns": [15745{15746"include": "#inline_comment"15747}15748]15749},15750"5": {15751"patterns": [15752{15753"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",15754"captures": {15755"1": {15756"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15757},15758"2": {15759"name": "comment.block.cpp"15760},15761"3": {15762"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15763}15764}15765}15766]15767},15768"6": {15769"name": "meta.qualified_type.cpp",15770"patterns": [15771{15772"match": "::",15773"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"15774},15775{15776"match": "(?<!\\w)(?:(?:struct)|(?:class)|(?:union)|(?:enum))(?!\\w)",15777"name": "storage.type.$0.cpp"15778},15779{15780"include": "#attributes_context"15781},15782{15783"include": "#storage_types"15784},15785{15786"include": "#number_literal"15787},15788{15789"include": "#string_context"15790},15791{15792"include": "#comma"15793},15794{15795"include": "#scope_resolution_inner_generated"15796},15797{15798"begin": "<",15799"end": ">",15800"beginCaptures": {15801"0": {15802"name": "punctuation.section.angle-brackets.begin.template.call.cpp"15803}15804},15805"endCaptures": {15806"0": {15807"name": "punctuation.section.angle-brackets.end.template.call.cpp"15808}15809},15810"name": "meta.template.call.cpp",15811"patterns": [15812{15813"include": "#template_call_context"15814}15815]15816},15817{15818"match": "(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*",15819"name": "entity.name.type.cpp"15820}15821]15822},15823"7": {15824"patterns": [15825{15826"include": "#attributes_context"15827},15828{15829"include": "#number_literal"15830}15831]15832},15833"8": {15834"patterns": [15835{15836"include": "#inline_comment"15837}15838]15839},15840"9": {15841"patterns": [15842{15843"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",15844"captures": {15845"1": {15846"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15847},15848"2": {15849"name": "comment.block.cpp"15850},15851"3": {15852"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15853}15854}15855}15856]15857},15858"10": {15859"patterns": [15860{15861"include": "#inline_comment"15862}15863]15864},15865"11": {15866"patterns": [15867{15868"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",15869"captures": {15870"1": {15871"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15872},15873"2": {15874"name": "comment.block.cpp"15875},15876"3": {15877"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15878}15879}15880}15881]15882},15883"12": {15884"patterns": [15885{15886"match": "::",15887"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"15888},15889{15890"match": "(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)",15891"name": "entity.name.scope-resolution.type.cpp"15892},15893{15894"include": "#template_call_range"15895}15896]15897},15898"13": {15899"patterns": [15900{15901"include": "#template_call_range"15902}15903]15904},15905"14": {},15906"15": {15907"patterns": [15908{15909"include": "#inline_comment"15910}15911]15912},15913"16": {15914"patterns": [15915{15916"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",15917"captures": {15918"1": {15919"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15920},15921"2": {15922"name": "comment.block.cpp"15923},15924"3": {15925"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15926}15927}15928}15929]15930},15931"17": {}15932}15933},15934"undef": {15935"match": "(^((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(#)(?:\\s+)?undef\\b)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))",15936"captures": {15937"1": {15938"name": "keyword.control.directive.undef.cpp"15939},15940"2": {15941"patterns": [15942{15943"include": "#inline_comment"15944}15945]15946},15947"3": {15948"patterns": [15949{15950"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",15951"captures": {15952"1": {15953"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15954},15955"2": {15956"name": "comment.block.cpp"15957},15958"3": {15959"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15960}15961}15962}15963]15964},15965"4": {15966"name": "punctuation.definition.directive.cpp"15967},15968"5": {15969"patterns": [15970{15971"include": "#inline_comment"15972}15973]15974},15975"6": {15976"patterns": [15977{15978"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",15979"captures": {15980"1": {15981"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15982},15983"2": {15984"name": "comment.block.cpp"15985},15986"3": {15987"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15988}15989}15990}15991]15992},15993"7": {15994"name": "entity.name.function.preprocessor.cpp"15995}15996},15997"name": "meta.preprocessor.undef.cpp"15998},15999"union_block": {16000"begin": "((?<!\\w)union(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(?={)|(?:((?:(?:(?:\\[\\[.*?\\]\\]|__attribute(?:__)?\\s*\\(\\s*\\(.*?\\)\\s*\\))|__declspec\\(.*?\\))|alignas\\(.*?\\))(?!\\)))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?((?:(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*+)?(?:((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(:(?!:)))?)",16001"end": "(?:(?:(?<=\\}|%>|\\?\\?>)(?:\\s+)?(;)|(;))|(?=[;>\\[\\]=]))",16002"beginCaptures": {16003"0": {16004"name": "meta.head.union.cpp"16005},16006"1": {16007"name": "storage.type.$1.cpp"16008},16009"2": {16010"patterns": [16011{16012"include": "#inline_comment"16013}16014]16015},16016"3": {16017"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"16018},16019"4": {16020"name": "comment.block.cpp"16021},16022"5": {16023"name": "comment.block.cpp punctuation.definition.comment.end.cpp"16024},16025"6": {16026"patterns": [16027{16028"include": "#attributes_context"16029},16030{16031"include": "#number_literal"16032}16033]16034},16035"7": {16036"patterns": [16037{16038"include": "#inline_comment"16039}16040]16041},16042"8": {16043"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"16044},16045"9": {16046"name": "comment.block.cpp"16047},16048"10": {16049"name": "comment.block.cpp punctuation.definition.comment.end.cpp"16050},16051"11": {16052"patterns": [16053{16054"match": "((?<!\\w)final(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))",16055"captures": {16056"1": {16057"name": "storage.type.modifier.final.cpp"16058},16059"2": {16060"patterns": [16061{16062"include": "#inline_comment"16063}16064]16065},16066"3": {16067"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"16068},16069"4": {16070"name": "comment.block.cpp"16071},16072"5": {16073"name": "comment.block.cpp punctuation.definition.comment.end.cpp"16074}16075}16076},16077{16078"match": "((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:((?<!\\w)final(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?(?=:|{|$)",16079"captures": {16080"1": {16081"name": "entity.name.type.union.cpp"16082},16083"2": {16084"patterns": [16085{16086"include": "#inline_comment"16087}16088]16089},16090"3": {16091"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"16092},16093"4": {16094"name": "comment.block.cpp"16095},16096"5": {16097"name": "comment.block.cpp punctuation.definition.comment.end.cpp"16098},16099"6": {16100"name": "storage.type.modifier.final.cpp"16101},16102"7": {16103"patterns": [16104{16105"include": "#inline_comment"16106}16107]16108},16109"8": {16110"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"16111},16112"9": {16113"name": "comment.block.cpp"16114},16115"10": {16116"name": "comment.block.cpp punctuation.definition.comment.end.cpp"16117}16118}16119},16120{16121"match": "DLLEXPORT",16122"name": "entity.name.other.preprocessor.macro.predefined.DLLEXPORT.cpp"16123},16124{16125"match": "(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*",16126"name": "entity.name.other.preprocessor.macro.predefined.probably.$0.cpp"16127}16128]16129},16130"12": {16131"patterns": [16132{16133"include": "#inline_comment"16134}16135]16136},16137"13": {16138"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"16139},16140"14": {16141"name": "comment.block.cpp"16142},16143"15": {16144"name": "comment.block.cpp punctuation.definition.comment.end.cpp"16145},16146"16": {16147"patterns": [16148{16149"include": "#inline_comment"16150}16151]16152},16153"17": {16154"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"16155},16156"18": {16157"name": "comment.block.cpp"16158},16159"19": {16160"name": "comment.block.cpp punctuation.definition.comment.end.cpp"16161},16162"20": {16163"name": "punctuation.separator.colon.inheritance.cpp"16164}16165},16166"endCaptures": {16167"1": {16168"name": "punctuation.terminator.statement.cpp"16169},16170"2": {16171"name": "punctuation.terminator.statement.cpp"16172}16173},16174"name": "meta.block.union.cpp",16175"patterns": [16176{16177"begin": "\\G ?",16178"end": "(?:\\{|<%|\\?\\?<|(?=;))",16179"beginCaptures": {},16180"endCaptures": {16181"0": {16182"name": "punctuation.section.block.begin.bracket.curly.union.cpp"16183}16184},16185"name": "meta.head.union.cpp",16186"patterns": [16187{16188"include": "#ever_present_context"16189},16190{16191"include": "#inheritance_context"16192},16193{16194"include": "#template_call_range"16195}16196]16197},16198{16199"begin": "(?<=\\{|<%|\\?\\?<)",16200"end": "\\}|%>|\\?\\?>",16201"beginCaptures": {},16202"endCaptures": {16203"0": {16204"name": "punctuation.section.block.end.bracket.curly.union.cpp"16205}16206},16207"name": "meta.body.union.cpp",16208"patterns": [16209{16210"include": "#function_pointer"16211},16212{16213"include": "#static_assert"16214},16215{16216"include": "#constructor_inline"16217},16218{16219"include": "#destructor_inline"16220},16221{16222"include": "$self"16223}16224]16225},16226{16227"begin": "(?<=\\}|%>|\\?\\?>)[\\s]*",16228"end": "[\\s]*(?=;)",16229"beginCaptures": {},16230"endCaptures": {},16231"name": "meta.tail.union.cpp",16232"patterns": [16233{16234"include": "$self"16235}16236]16237}16238]16239},16240"union_declare": {16241"match": "((?<!\\w)union(?!\\w))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))(((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))?(?:(?:&|\\*)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:&|\\*))?((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))\\b(?!override\\W|override\\$|final\\W|final\\$)((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?=\\S)(?![:{a-zA-Z])",16242"captures": {16243"1": {16244"name": "storage.type.union.declare.cpp"16245},16246"2": {16247"patterns": [16248{16249"include": "#inline_comment"16250}16251]16252},16253"3": {16254"patterns": [16255{16256"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",16257"captures": {16258"1": {16259"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"16260},16261"2": {16262"name": "comment.block.cpp"16263},16264"3": {16265"name": "comment.block.cpp punctuation.definition.comment.end.cpp"16266}16267}16268}16269]16270},16271"4": {16272"name": "entity.name.type.union.cpp"16273},16274"5": {16275"patterns": [16276{16277"match": "\\*",16278"name": "storage.modifier.pointer.cpp"16279},16280{16281"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",16282"captures": {16283"1": {16284"patterns": [16285{16286"include": "#inline_comment"16287}16288]16289},16290"2": {16291"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"16292},16293"3": {16294"name": "comment.block.cpp"16295},16296"4": {16297"name": "comment.block.cpp punctuation.definition.comment.end.cpp"16298}16299},16300"name": "invalid.illegal.reference-type.cpp"16301},16302{16303"match": "\\&",16304"name": "storage.modifier.reference.cpp"16305}16306]16307},16308"6": {16309"patterns": [16310{16311"include": "#inline_comment"16312}16313]16314},16315"7": {16316"patterns": [16317{16318"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",16319"captures": {16320"1": {16321"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"16322},16323"2": {16324"name": "comment.block.cpp"16325},16326"3": {16327"name": "comment.block.cpp punctuation.definition.comment.end.cpp"16328}16329}16330}16331]16332},16333"8": {16334"patterns": [16335{16336"include": "#inline_comment"16337}16338]16339},16340"9": {16341"patterns": [16342{16343"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",16344"captures": {16345"1": {16346"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"16347},16348"2": {16349"name": "comment.block.cpp"16350},16351"3": {16352"name": "comment.block.cpp punctuation.definition.comment.end.cpp"16353}16354}16355}16356]16357},16358"10": {16359"patterns": [16360{16361"include": "#inline_comment"16362}16363]16364},16365"11": {16366"patterns": [16367{16368"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",16369"captures": {16370"1": {16371"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"16372},16373"2": {16374"name": "comment.block.cpp"16375},16376"3": {16377"name": "comment.block.cpp punctuation.definition.comment.end.cpp"16378}16379}16380}16381]16382},16383"12": {16384"name": "variable.other.object.declare.cpp"16385},16386"13": {16387"patterns": [16388{16389"include": "#inline_comment"16390}16391]16392},16393"14": {16394"patterns": [16395{16396"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",16397"captures": {16398"1": {16399"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"16400},16401"2": {16402"name": "comment.block.cpp"16403},16404"3": {16405"name": "comment.block.cpp punctuation.definition.comment.end.cpp"16406}16407}16408}16409]16410}16411}16412},16413"using_name": {16414"match": "(using)\\s+(?!namespace\\b)",16415"captures": {16416"1": {16417"name": "keyword.other.using.directive.cpp"16418}16419}16420},16421"using_namespace": {16422"begin": "(?<!\\w)(using)\\s+(namespace)\\s+((::)?(?:(?!\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\b)(?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w)\\s*+(((?<!<)<(?!<)(?:(?:\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/)|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<6>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*\\s*+)?((?<!\\w)(?:[a-zA-Z_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8}))*(?!\\w))(?=;|\\n)",16423"end": ";",16424"beginCaptures": {16425"1": {16426"name": "keyword.other.using.directive.cpp"16427},16428"2": {16429"name": "keyword.other.namespace.directive.cpp storage.type.namespace.directive.cpp"16430},16431"3": {16432"patterns": [16433{16434"include": "#scope_resolution_namespace_using_inner_generated"16435}16436]16437},16438"4": {16439"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.using.cpp"16440},16441"5": {16442"patterns": [16443{16444"include": "#template_call_range"16445}16446]16447},16448"6": {},16449"7": {16450"name": "entity.name.namespace.cpp"16451}16452},16453"endCaptures": {16454"0": {16455"name": "punctuation.terminator.statement.cpp"16456}16457},16458"name": "meta.using-namespace.cpp"16459},16460"vararg_ellipses": {16461"match": "(?<!\\.)\\.\\.\\.(?!\\.)",16462"name": "punctuation.vararg-ellipses.cpp"16463},16464"wordlike_operators": {16465"patterns": [16466{16467"match": "(?<!\\w)(?:(?:noexcept)|(?:xor_eq)|(?:and_eq)|(?:delete)|(?:not_eq)|(?:bitand)|(?:bitor)|(?:compl)|(?:or_eq)|(?:not)|(?:xor)|(?:new)|(?:and)|(?:or))(?!\\w)",16468"name": "keyword.operator.wordlike.cpp keyword.operator.$0.cpp"16469}16470]16471}16472}16473}1647416475