Path: blob/main/extensions/latex/syntaxes/cpp-grammar-bailout.tmLanguage.json
3291 views
{1"information_for_contributors": [2"This file has been converted from https://github.com/jlelong/vscode-latex-basics/blob/master/syntaxes/cpp-grammar-bailout.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/jlelong/vscode-latex-basics/commit/dfa69a16a1154dbc820dc1111d72faa6954dd1e2",7"name": "C++",8"scopeName": "source.cpp.embedded.latex",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": "#simple_array_assignment"24},25{26"include": "#operator_overload"27},28{29"include": "#using_namespace"30},31{32"include": "#type_alias"33},34{35"include": "#using_name"36},37{38"include": "#namespace_alias"39},40{41"include": "#namespace_block"42},43{44"include": "#extern_block"45},46{47"include": "#typedef_class"48},49{50"include": "#typedef_struct"51},52{53"include": "#typedef_union"54},55{56"include": "#misc_keywords"57},58{59"include": "#standard_declares"60},61{62"include": "#class_block"63},64{65"include": "#struct_block"66},67{68"include": "#union_block"69},70{71"include": "#enum_block"72},73{74"include": "#template_isolated_definition"75},76{77"include": "#template_definition"78},79{80"include": "#template_explicit_instantiation"81},82{83"include": "#access_control_keywords"84},85{86"include": "#block"87},88{89"include": "#static_assert"90},91{92"include": "#assembly"93},94{95"include": "#function_pointer"96},97{98"include": "#evaluation_context"99}100],101"repository": {102"access_control_keywords": {103"match": "((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(((?:protected|private|public))(?:\\s+)?(:))",104"captures": {105"1": {106"patterns": [107{108"include": "#inline_comment"109}110]111},112"2": {113"patterns": [114{115"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",116"captures": {117"1": {118"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"119},120"2": {121"name": "comment.block.cpp"122},123"3": {124"name": "comment.block.cpp punctuation.definition.comment.end.cpp"125}126}127}128]129},130"3": {131"name": "storage.type.modifier.access.control.$4.cpp"132},133"4": {},134"5": {135"name": "punctuation.separator.colon.access.control.cpp"136}137}138},139"alignas_attribute": {140"begin": "alignas\\(",141"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",142"beginCaptures": {143"0": {144"name": "punctuation.section.attribute.begin.cpp"145}146},147"endCaptures": {148"0": {149"name": "punctuation.section.attribute.end.cpp"150}151},152"name": "support.other.attribute.cpp",153"patterns": [154{155"include": "#attributes_context"156},157{158"begin": "\\(",159"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",160"beginCaptures": {},161"endCaptures": {},162"patterns": [163{164"include": "#attributes_context"165},166{167"include": "#string_context"168},169{170"include": "#ever_present_context"171}172]173},174{175"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))",176"captures": {177"1": {178"name": "keyword.other.using.directive.cpp"179},180"2": {181"name": "entity.name.namespace.cpp"182}183}184},185{186"match": ",",187"name": "punctuation.separator.attribute.cpp"188},189{190"match": ":",191"name": "punctuation.accessor.attribute.cpp"192},193{194"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)(?=::)",195"name": "entity.name.namespace.cpp"196},197{198"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)",199"name": "entity.other.attribute.$0.cpp"200},201{202"include": "#number_literal"203},204{205"include": "#ever_present_context"206}207]208},209"alignas_operator": {210"begin": "((?<!\\w)alignas(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()",211"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",212"beginCaptures": {213"1": {214"name": "keyword.operator.functionlike.cpp keyword.operator.alignas.cpp"215},216"2": {217"patterns": [218{219"include": "#inline_comment"220}221]222},223"3": {224"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"225},226"4": {227"name": "comment.block.cpp"228},229"5": {230"name": "comment.block.cpp punctuation.definition.comment.end.cpp"231},232"6": {233"name": "punctuation.section.arguments.begin.bracket.round.operator.alignas.cpp"234}235},236"endCaptures": {237"0": {238"name": "punctuation.section.arguments.end.bracket.round.operator.alignas.cpp"239}240},241"contentName": "meta.arguments.operator.alignas",242"patterns": [243{244"include": "#evaluation_context"245}246]247},248"alignof_operator": {249"begin": "((?<!\\w)alignof(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()",250"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",251"beginCaptures": {252"1": {253"name": "keyword.operator.functionlike.cpp keyword.operator.alignof.cpp"254},255"2": {256"patterns": [257{258"include": "#inline_comment"259}260]261},262"3": {263"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"264},265"4": {266"name": "comment.block.cpp"267},268"5": {269"name": "comment.block.cpp punctuation.definition.comment.end.cpp"270},271"6": {272"name": "punctuation.section.arguments.begin.bracket.round.operator.alignof.cpp"273}274},275"endCaptures": {276"0": {277"name": "punctuation.section.arguments.end.bracket.round.operator.alignof.cpp"278}279},280"contentName": "meta.arguments.operator.alignof",281"patterns": [282{283"include": "#evaluation_context"284}285]286},287"assembly": {288"begin": "(\\b(?:__asm__|asm)\\b)(?:\\s+)?((?:volatile)?)",289"end": "(?!\\G)|(?=\\\\end\\{(?:minted|cppcode)\\})",290"beginCaptures": {291"1": {292"name": "storage.type.asm.cpp"293},294"2": {295"name": "storage.modifier.cpp"296}297},298"endCaptures": {},299"name": "meta.asm.cpp",300"patterns": [301{302"match": "^((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:\\n|$)",303"captures": {304"1": {305"patterns": [306{307"include": "#inline_comment"308}309]310},311"2": {312"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"313},314"3": {315"name": "comment.block.cpp"316},317"4": {318"name": "comment.block.cpp punctuation.definition.comment.end.cpp"319}320}321},322{323"include": "#comments"324},325{326"begin": "((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))\\(",327"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",328"beginCaptures": {329"0": {330"name": "punctuation.section.parens.begin.bracket.round.assembly.cpp"331},332"1": {333"patterns": [334{335"include": "#inline_comment"336}337]338},339"2": {340"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"341},342"3": {343"name": "comment.block.cpp"344},345"4": {346"name": "comment.block.cpp punctuation.definition.comment.end.cpp"347}348},349"endCaptures": {350"0": {351"name": "punctuation.section.parens.end.bracket.round.assembly.cpp"352}353},354"patterns": [355{356"begin": "(R?)(\")",357"end": "\"|(?=\\\\end\\{(?:minted|cppcode)\\})",358"beginCaptures": {359"1": {360"name": "meta.encoding.cpp"361},362"2": {363"name": "punctuation.definition.string.begin.assembly.cpp"364}365},366"endCaptures": {367"0": {368"name": "punctuation.definition.string.end.assembly.cpp"369}370},371"name": "string.quoted.double.cpp",372"contentName": "meta.embedded.assembly",373"patterns": [374{375"include": "source.asm"376},377{378"include": "source.x86"379},380{381"include": "source.x86_64"382},383{384"include": "source.arm"385},386{387"include": "#backslash_escapes"388},389{390"include": "#string_escaped_char"391}392]393},394{395"begin": "\\(",396"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",397"beginCaptures": {398"0": {399"name": "punctuation.section.parens.begin.bracket.round.assembly.inner.cpp"400}401},402"endCaptures": {403"0": {404"name": "punctuation.section.parens.end.bracket.round.assembly.inner.cpp"405}406},407"patterns": [408{409"include": "#evaluation_context"410}411]412},413{414"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))\\]",415"captures": {416"1": {417"patterns": [418{419"include": "#inline_comment"420}421]422},423"2": {424"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"425},426"3": {427"name": "comment.block.cpp"428},429"4": {430"name": "comment.block.cpp punctuation.definition.comment.end.cpp"431},432"5": {433"name": "variable.other.asm.label.cpp"434},435"6": {436"patterns": [437{438"include": "#inline_comment"439}440]441},442"7": {443"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"444},445"8": {446"name": "comment.block.cpp"447},448"9": {449"name": "comment.block.cpp punctuation.definition.comment.end.cpp"450}451}452},453{454"match": ":",455"name": "punctuation.separator.delimiter.colon.assembly.cpp"456},457{458"include": "#comments"459}460]461}462]463},464"assignment_operator": {465"match": "\\=",466"name": "keyword.operator.assignment.cpp"467},468"attributes_context": {469"patterns": [470{471"include": "#cpp_attributes"472},473{474"include": "#gcc_attributes"475},476{477"include": "#ms_attributes"478},479{480"include": "#alignas_attribute"481}482]483},484"backslash_escapes": {485"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} )",486"name": "constant.character.escape"487},488"block": {489"begin": "{",490"end": "}|(?=\\\\end\\{(?:minted|cppcode)\\})",491"beginCaptures": {492"0": {493"name": "punctuation.section.block.begin.bracket.curly.cpp"494}495},496"endCaptures": {497"0": {498"name": "punctuation.section.block.end.bracket.curly.cpp"499}500},501"name": "meta.block.cpp",502"patterns": [503{504"include": "#function_body_context"505}506]507},508"block_comment": {509"begin": "\\s*+(\\/\\*)",510"end": "\\*\\/|(?=\\\\end\\{(?:minted|cppcode)\\})",511"beginCaptures": {512"1": {513"name": "punctuation.definition.comment.begin.cpp"514}515},516"endCaptures": {517"0": {518"name": "punctuation.definition.comment.end.cpp"519}520},521"name": "comment.block.cpp",522"patterns": [523{524"match": "[^\\*]*\\n"525}526],527"applyEndPatternLast": 1528},529"builtin_storage_type_initilizer": {530"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)(\\()",531"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",532"beginCaptures": {533"1": {534"name": "storage.type.primitive.cpp storage.type.built-in.primitive.cpp"535},536"2": {537"name": "storage.type.cpp storage.type.built-in.cpp"538},539"3": {540"name": "support.type.posix-reserved.pthread.cpp support.type.built-in.posix-reserved.pthread.cpp"541},542"4": {543"name": "support.type.posix-reserved.cpp support.type.built-in.posix-reserved.cpp"544},545"5": {546"name": "punctuation.section.arguments.begin.bracket.round.initializer.cpp"547}548},549"endCaptures": {550"0": {551"name": "punctuation.section.arguments.end.bracket.round.initializer.cpp"552}553},554"patterns": [555{556"include": "#evaluation_context"557}558]559},560"case_statement": {561"begin": "((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)case(?!\\w))",562"end": ":|(?=\\\\end\\{(?:minted|cppcode)\\})",563"beginCaptures": {564"1": {565"patterns": [566{567"include": "#inline_comment"568}569]570},571"2": {572"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"573},574"3": {575"name": "comment.block.cpp"576},577"4": {578"name": "comment.block.cpp punctuation.definition.comment.end.cpp"579},580"5": {581"name": "keyword.control.case.cpp"582}583},584"endCaptures": {585"0": {586"name": "punctuation.separator.colon.case.cpp"587}588},589"name": "meta.conditional.case.cpp",590"patterns": [591{592"include": "#evaluation_context"593}594]595},596"class_block": {597"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))(:(?!:)))?)",598"end": "(?:(?:(?<=\\}|%>|\\?\\?>)(?:\\s+)?(;)|(;))|(?=[;>\\[\\]=]))|(?=\\\\end\\{(?:minted|cppcode)\\})",599"beginCaptures": {600"0": {601"name": "meta.head.class.cpp"602},603"1": {604"name": "storage.type.$1.cpp"605},606"2": {607"patterns": [608{609"include": "#inline_comment"610}611]612},613"3": {614"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"615},616"4": {617"name": "comment.block.cpp"618},619"5": {620"name": "comment.block.cpp punctuation.definition.comment.end.cpp"621},622"6": {623"patterns": [624{625"include": "#attributes_context"626},627{628"include": "#number_literal"629}630]631},632"7": {633"patterns": [634{635"include": "#inline_comment"636}637]638},639"8": {640"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"641},642"9": {643"name": "comment.block.cpp"644},645"10": {646"name": "comment.block.cpp punctuation.definition.comment.end.cpp"647},648"11": {649"patterns": [650{651"match": "((?<!\\w)final(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))",652"captures": {653"1": {654"name": "storage.type.modifier.final.cpp"655},656"2": {657"patterns": [658{659"include": "#inline_comment"660}661]662},663"3": {664"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"665},666"4": {667"name": "comment.block.cpp"668},669"5": {670"name": "comment.block.cpp punctuation.definition.comment.end.cpp"671}672}673},674{675"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)))?(?=:|{|$)",676"captures": {677"1": {678"name": "entity.name.type.class.cpp"679},680"2": {681"patterns": [682{683"include": "#inline_comment"684}685]686},687"3": {688"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"689},690"4": {691"name": "comment.block.cpp"692},693"5": {694"name": "comment.block.cpp punctuation.definition.comment.end.cpp"695},696"6": {697"name": "storage.type.modifier.final.cpp"698},699"7": {700"patterns": [701{702"include": "#inline_comment"703}704]705},706"8": {707"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"708},709"9": {710"name": "comment.block.cpp"711},712"10": {713"name": "comment.block.cpp punctuation.definition.comment.end.cpp"714}715}716},717{718"match": "DLLEXPORT",719"name": "entity.name.other.preprocessor.macro.predefined.DLLEXPORT.cpp"720},721{722"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}))*",723"name": "entity.name.other.preprocessor.macro.predefined.probably.$0.cpp"724}725]726},727"12": {728"patterns": [729{730"include": "#inline_comment"731}732]733},734"13": {735"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"736},737"14": {738"name": "comment.block.cpp"739},740"15": {741"name": "comment.block.cpp punctuation.definition.comment.end.cpp"742},743"16": {744"patterns": [745{746"include": "#inline_comment"747}748]749},750"17": {751"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"752},753"18": {754"name": "comment.block.cpp"755},756"19": {757"name": "comment.block.cpp punctuation.definition.comment.end.cpp"758},759"20": {760"name": "punctuation.separator.colon.inheritance.cpp"761}762},763"endCaptures": {764"1": {765"name": "punctuation.terminator.statement.cpp"766},767"2": {768"name": "punctuation.terminator.statement.cpp"769}770},771"name": "meta.block.class.cpp",772"patterns": [773{774"begin": "\\G ?",775"end": "(?:\\{|<%|\\?\\?<|(?=;))|(?=\\\\end\\{(?:minted|cppcode)\\})",776"beginCaptures": {},777"endCaptures": {778"0": {779"name": "punctuation.section.block.begin.bracket.curly.class.cpp"780}781},782"name": "meta.head.class.cpp",783"patterns": [784{785"include": "#ever_present_context"786},787{788"include": "#inheritance_context"789},790{791"include": "#template_call_range_helper"792}793]794},795{796"begin": "(?<=\\{|<%|\\?\\?<)",797"end": "\\}|%>|\\?\\?>|(?=\\\\end\\{(?:minted|cppcode)\\})",798"beginCaptures": {},799"endCaptures": {800"0": {801"name": "punctuation.section.block.end.bracket.curly.class.cpp"802}803},804"name": "meta.body.class.cpp",805"patterns": [806{807"include": "#function_pointer"808},809{810"include": "#static_assert"811},812{813"include": "#constructor_inline"814},815{816"include": "#destructor_inline"817},818{819"include": "#operator_overload"820},821{822"include": "#normal_variable_declaration"823},824{825"include": "#normal_variable_assignment"826},827{828"include": "$self"829}830]831},832{833"begin": "(?<=\\}|%>|\\?\\?>)[\\s]*",834"end": "[\\s]*(?=;)|(?=\\\\end\\{(?:minted|cppcode)\\})",835"beginCaptures": {},836"endCaptures": {},837"name": "meta.tail.class.cpp",838"patterns": [839{840"include": "$self"841}842]843}844]845},846"class_declare": {847"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])",848"captures": {849"1": {850"name": "storage.type.class.declare.cpp"851},852"2": {853"patterns": [854{855"include": "#inline_comment"856}857]858},859"3": {860"patterns": [861{862"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",863"captures": {864"1": {865"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"866},867"2": {868"name": "comment.block.cpp"869},870"3": {871"name": "comment.block.cpp punctuation.definition.comment.end.cpp"872}873}874}875]876},877"4": {878"name": "entity.name.type.class.cpp"879},880"5": {881"patterns": [882{883"match": "\\*",884"name": "storage.modifier.pointer.cpp"885},886{887"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",888"captures": {889"1": {890"patterns": [891{892"include": "#inline_comment"893}894]895},896"2": {897"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"898},899"3": {900"name": "comment.block.cpp"901},902"4": {903"name": "comment.block.cpp punctuation.definition.comment.end.cpp"904}905},906"name": "invalid.illegal.reference-type.cpp"907},908{909"match": "\\&",910"name": "storage.modifier.reference.cpp"911}912]913},914"6": {915"patterns": [916{917"include": "#inline_comment"918}919]920},921"7": {922"patterns": [923{924"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",925"captures": {926"1": {927"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"928},929"2": {930"name": "comment.block.cpp"931},932"3": {933"name": "comment.block.cpp punctuation.definition.comment.end.cpp"934}935}936}937]938},939"8": {940"patterns": [941{942"include": "#inline_comment"943}944]945},946"9": {947"patterns": [948{949"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",950"captures": {951"1": {952"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"953},954"2": {955"name": "comment.block.cpp"956},957"3": {958"name": "comment.block.cpp punctuation.definition.comment.end.cpp"959}960}961}962]963},964"10": {965"patterns": [966{967"include": "#inline_comment"968}969]970},971"11": {972"patterns": [973{974"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",975"captures": {976"1": {977"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"978},979"2": {980"name": "comment.block.cpp"981},982"3": {983"name": "comment.block.cpp punctuation.definition.comment.end.cpp"984}985}986}987]988},989"12": {990"name": "variable.other.object.declare.cpp"991},992"13": {993"patterns": [994{995"include": "#inline_comment"996}997]998},999"14": {1000"patterns": [1001{1002"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",1003"captures": {1004"1": {1005"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"1006},1007"2": {1008"name": "comment.block.cpp"1009},1010"3": {1011"name": "comment.block.cpp punctuation.definition.comment.end.cpp"1012}1013}1014}1015]1016}1017}1018},1019"comma": {1020"match": ",",1021"name": "punctuation.separator.delimiter.comma.cpp"1022},1023"comma_in_template_argument": {1024"match": ",",1025"name": "punctuation.separator.delimiter.comma.template.argument.cpp"1026},1027"comments": {1028"patterns": [1029{1030"begin": "^(?:\\s+)?+(\\/\\/[!\\/]+)",1031"end": "(?<=\\n)(?<!\\\\\\n)|(?=\\\\end\\{(?:minted|cppcode)\\})",1032"beginCaptures": {1033"1": {1034"name": "punctuation.definition.comment.documentation.cpp"1035}1036},1037"endCaptures": {},1038"name": "comment.line.double-slash.documentation.cpp",1039"patterns": [1040{1041"include": "#line_continuation_character"1042},1043{1044"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(?:\\{[^}]*\\})?",1045"name": "storage.type.class.doxygen.cpp"1046},1047{1048"match": "((?<=[\\s*!\\/])[\\\\@](?:a|em|e))\\s+(\\S+)",1049"captures": {1050"1": {1051"name": "storage.type.class.doxygen.cpp"1052},1053"2": {1054"name": "markup.italic.doxygen.cpp"1055}1056}1057},1058{1059"match": "((?<=[\\s*!\\/])[\\\\@]b)\\s+(\\S+)",1060"captures": {1061"1": {1062"name": "storage.type.class.doxygen.cpp"1063},1064"2": {1065"name": "markup.bold.doxygen.cpp"1066}1067}1068},1069{1070"match": "((?<=[\\s*!\\/])[\\\\@](?:c|p))\\s+(\\S+)",1071"captures": {1072"1": {1073"name": "storage.type.class.doxygen.cpp"1074},1075"2": {1076"name": "markup.inline.raw.string.cpp"1077}1078}1079},1080{1081"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(?:\\{[^}]*\\})?",1082"name": "storage.type.class.doxygen.cpp"1083},1084{1085"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(?:\\{[^}]*\\})?",1086"name": "storage.type.class.doxygen.cpp"1087},1088{1089"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)))*)",1090"captures": {1091"1": {1092"name": "storage.type.class.doxygen.cpp"1093},1094"2": {1095"patterns": [1096{1097"match": "in|out",1098"name": "keyword.other.parameter.direction.$0.cpp"1099}1100]1101},1102"3": {1103"patterns": [1104{1105"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)",1106"name": "variable.parameter.cpp"1107},1108{1109"match": ",",1110"name": "punctuation.cpp"1111}1112]1113},1114"4": {1115"name": "variable.parameter.cpp"1116},1117"5": {1118"name": "punctuation.cpp"1119},1120"6": {1121"name": "variable.parameter.cpp"1122}1123}1124},1125{1126"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(?:\\{[^}]*\\})?",1127"name": "storage.type.class.doxygen.cpp"1128},1129{1130"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(?:\\{[^}]*\\})?",1131"name": "storage.type.class.doxygen.cpp"1132},1133{1134"match": "(?:\\b[A-Z]+:|@[a-z_]+:)",1135"name": "storage.type.class.gtkdoc.cpp"1136}1137]1138},1139{1140"match": "(\\/\\*[!*]+(?=\\s))(.+)([!*]*\\*\\/)",1141"captures": {1142"1": {1143"name": "punctuation.definition.comment.begin.documentation.cpp"1144},1145"2": {1146"patterns": [1147{1148"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(?:\\{[^}]*\\})?",1149"name": "storage.type.class.doxygen.cpp"1150},1151{1152"match": "((?<=[\\s*!\\/])[\\\\@](?:a|em|e))\\s+(\\S+)",1153"captures": {1154"1": {1155"name": "storage.type.class.doxygen.cpp"1156},1157"2": {1158"name": "markup.italic.doxygen.cpp"1159}1160}1161},1162{1163"match": "((?<=[\\s*!\\/])[\\\\@]b)\\s+(\\S+)",1164"captures": {1165"1": {1166"name": "storage.type.class.doxygen.cpp"1167},1168"2": {1169"name": "markup.bold.doxygen.cpp"1170}1171}1172},1173{1174"match": "((?<=[\\s*!\\/])[\\\\@](?:c|p))\\s+(\\S+)",1175"captures": {1176"1": {1177"name": "storage.type.class.doxygen.cpp"1178},1179"2": {1180"name": "markup.inline.raw.string.cpp"1181}1182}1183},1184{1185"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(?:\\{[^}]*\\})?",1186"name": "storage.type.class.doxygen.cpp"1187},1188{1189"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(?:\\{[^}]*\\})?",1190"name": "storage.type.class.doxygen.cpp"1191},1192{1193"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)))*)",1194"captures": {1195"1": {1196"name": "storage.type.class.doxygen.cpp"1197},1198"2": {1199"patterns": [1200{1201"match": "in|out",1202"name": "keyword.other.parameter.direction.$0.cpp"1203}1204]1205},1206"3": {1207"patterns": [1208{1209"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)",1210"name": "variable.parameter.cpp"1211},1212{1213"match": ",",1214"name": "punctuation.cpp"1215}1216]1217},1218"4": {1219"name": "variable.parameter.cpp"1220},1221"5": {1222"name": "punctuation.cpp"1223},1224"6": {1225"name": "variable.parameter.cpp"1226}1227}1228},1229{1230"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(?:\\{[^}]*\\})?",1231"name": "storage.type.class.doxygen.cpp"1232},1233{1234"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(?:\\{[^}]*\\})?",1235"name": "storage.type.class.doxygen.cpp"1236},1237{1238"match": "(?:\\b[A-Z]+:|@[a-z_]+:)",1239"name": "storage.type.class.gtkdoc.cpp"1240}1241]1242},1243"3": {1244"name": "punctuation.definition.comment.end.documentation.cpp"1245}1246},1247"name": "comment.block.documentation.cpp"1248},1249{1250"begin": "(?:\\s+)?+\\/\\*[!*]+(?:(?:\\n|$)|(?=\\s))",1251"end": "[!*]*\\*\\/|(?=\\\\end\\{(?:minted|cppcode)\\})",1252"beginCaptures": {1253"0": {1254"name": "punctuation.definition.comment.begin.documentation.cpp"1255}1256},1257"endCaptures": {1258"0": {1259"name": "punctuation.definition.comment.end.documentation.cpp"1260}1261},1262"name": "comment.block.documentation.cpp",1263"patterns": [1264{1265"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(?:\\{[^}]*\\})?",1266"name": "storage.type.class.doxygen.cpp"1267},1268{1269"match": "((?<=[\\s*!\\/])[\\\\@](?:a|em|e))\\s+(\\S+)",1270"captures": {1271"1": {1272"name": "storage.type.class.doxygen.cpp"1273},1274"2": {1275"name": "markup.italic.doxygen.cpp"1276}1277}1278},1279{1280"match": "((?<=[\\s*!\\/])[\\\\@]b)\\s+(\\S+)",1281"captures": {1282"1": {1283"name": "storage.type.class.doxygen.cpp"1284},1285"2": {1286"name": "markup.bold.doxygen.cpp"1287}1288}1289},1290{1291"match": "((?<=[\\s*!\\/])[\\\\@](?:c|p))\\s+(\\S+)",1292"captures": {1293"1": {1294"name": "storage.type.class.doxygen.cpp"1295},1296"2": {1297"name": "markup.inline.raw.string.cpp"1298}1299}1300},1301{1302"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(?:\\{[^}]*\\})?",1303"name": "storage.type.class.doxygen.cpp"1304},1305{1306"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(?:\\{[^}]*\\})?",1307"name": "storage.type.class.doxygen.cpp"1308},1309{1310"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)))*)",1311"captures": {1312"1": {1313"name": "storage.type.class.doxygen.cpp"1314},1315"2": {1316"patterns": [1317{1318"match": "in|out",1319"name": "keyword.other.parameter.direction.$0.cpp"1320}1321]1322},1323"3": {1324"patterns": [1325{1326"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)",1327"name": "variable.parameter.cpp"1328},1329{1330"match": ",",1331"name": "punctuation.cpp"1332}1333]1334},1335"4": {1336"name": "variable.parameter.cpp"1337},1338"5": {1339"name": "punctuation.cpp"1340},1341"6": {1342"name": "variable.parameter.cpp"1343}1344}1345},1346{1347"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(?:\\{[^}]*\\})?",1348"name": "storage.type.class.doxygen.cpp"1349},1350{1351"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(?:\\{[^}]*\\})?",1352"name": "storage.type.class.doxygen.cpp"1353},1354{1355"match": "(?:\\b[A-Z]+:|@[a-z_]+:)",1356"name": "storage.type.class.gtkdoc.cpp"1357}1358]1359},1360{1361"include": "#emacs_file_banner"1362},1363{1364"include": "#block_comment"1365},1366{1367"include": "#line_comment"1368},1369{1370"include": "#invalid_comment_end"1371}1372]1373},1374"constructor_bracket_call": {1375"match": "(?!class|struct|union|enum|explicit|new|delete|operator|template|throw|decltype|typename|override|final)\\b(\\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))(?:(?:(?:(?:(\\b[a-z0-9]+\\b)|(\\b[a-zA-Z0-9]+_[a-zA-Z0-9]*\\b))|(\\b[a-z]+[A-Z][a-zA-Z0-9]*\\b))|(\\b[A-Z][A-Z_0-9]*\\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*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?=\\{)",1376"captures": {1377"1": {1378"name": "meta.qualified-type.cpp",1379"patterns": [1380{1381"match": "::",1382"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"1383},1384{1385"match": "(?<!\\w)(?:struct|class|union|enum)(?!\\w)",1386"name": "storage.type.$0.cpp"1387},1388{1389"include": "#attributes_context"1390},1391{1392"include": "#storage_types"1393},1394{1395"include": "#number_literal"1396},1397{1398"include": "#string_context"1399},1400{1401"include": "#comma"1402},1403{1404"include": "#scope_resolution_inner_generated"1405},1406{1407"include": "#template_call_range_helper"1408},1409{1410"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}))*",1411"name": "entity.name.type.cpp"1412}1413]1414},1415"2": {1416"patterns": [1417{1418"include": "#attributes_context"1419},1420{1421"include": "#number_literal"1422}1423]1424},1425"3": {1426"patterns": [1427{1428"include": "#inline_comment"1429}1430]1431},1432"4": {1433"patterns": [1434{1435"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",1436"captures": {1437"1": {1438"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"1439},1440"2": {1441"name": "comment.block.cpp"1442},1443"3": {1444"name": "comment.block.cpp punctuation.definition.comment.end.cpp"1445}1446}1447}1448]1449},1450"5": {1451"patterns": [1452{1453"include": "#inline_comment"1454}1455]1456},1457"6": {1458"patterns": [1459{1460"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",1461"captures": {1462"1": {1463"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"1464},1465"2": {1466"name": "comment.block.cpp"1467},1468"3": {1469"name": "comment.block.cpp punctuation.definition.comment.end.cpp"1470}1471}1472}1473]1474},1475"7": {1476"patterns": [1477{1478"match": "::",1479"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"1480},1481{1482"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)",1483"name": "entity.name.scope-resolution.type.cpp"1484},1485{1486"include": "#template_call_range_helper"1487}1488]1489},1490"8": {1491"patterns": [1492{1493"include": "#template_call_range_helper"1494}1495]1496},1497"9": {},1498"10": {1499"patterns": [1500{1501"include": "#inline_comment"1502}1503]1504},1505"11": {1506"patterns": [1507{1508"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",1509"captures": {1510"1": {1511"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"1512},1513"2": {1514"name": "comment.block.cpp"1515},1516"3": {1517"name": "comment.block.cpp punctuation.definition.comment.end.cpp"1518}1519}1520}1521]1522},1523"12": {},1524"13": {1525"patterns": [1526{1527"include": "#inline_comment"1528}1529]1530},1531"14": {1532"patterns": [1533{1534"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",1535"captures": {1536"1": {1537"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"1538},1539"2": {1540"name": "comment.block.cpp"1541},1542"3": {1543"name": "comment.block.cpp punctuation.definition.comment.end.cpp"1544}1545}1546}1547]1548},1549"15": {1550"name": "variable.lower-case.cpp variable.other.object.construction.cpp"1551},1552"16": {1553"name": "variable.snake-case.cpp variable.other.object.construction.cpp"1554},1555"17": {1556"name": "variable.camel-case.cpp variable.other.object.construction.cpp"1557},1558"18": {1559"name": "variable.upper-case.cpp variable.other.object.construction.cpp"1560},1561"19": {1562"name": "variable.other.unknown.$19.cpp"1563},1564"20": {1565"patterns": [1566{1567"include": "#inline_comment"1568}1569]1570},1571"21": {1572"patterns": [1573{1574"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",1575"captures": {1576"1": {1577"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"1578},1579"2": {1580"name": "comment.block.cpp"1581},1582"3": {1583"name": "comment.block.cpp punctuation.definition.comment.end.cpp"1584}1585}1586}1587]1588}1589}1590},1591"constructor_inline": {1592"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)(?=\\())",1593"end": "(?:(?<=\\}|%>|\\?\\?>)|(?=[;>\\[\\]=]))|(?=\\\\end\\{(?:minted|cppcode)\\})",1594"beginCaptures": {1595"0": {1596"name": "meta.head.function.definition.special.constructor.cpp"1597},1598"1": {1599"patterns": [1600{1601"include": "#inline_comment"1602}1603]1604},1605"2": {1606"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"1607},1608"3": {1609"name": "comment.block.cpp"1610},1611"4": {1612"name": "comment.block.cpp punctuation.definition.comment.end.cpp"1613},1614"5": {1615"patterns": [1616{1617"include": "#functional_specifiers_pre_parameters"1618}1619]1620},1621"6": {1622"patterns": [1623{1624"include": "#inline_comment"1625}1626]1627},1628"7": {1629"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"1630},1631"8": {1632"name": "comment.block.cpp"1633},1634"9": {1635"name": "comment.block.cpp punctuation.definition.comment.end.cpp"1636},1637"10": {1638"name": "storage.type.modifier.calling-convention.cpp"1639},1640"11": {1641"patterns": [1642{1643"include": "#inline_comment"1644}1645]1646},1647"12": {1648"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"1649},1650"13": {1651"name": "comment.block.cpp"1652},1653"14": {1654"name": "comment.block.cpp punctuation.definition.comment.end.cpp"1655},1656"15": {1657"name": "entity.name.function.constructor.cpp entity.name.function.definition.special.constructor.cpp"1658}1659},1660"endCaptures": {},1661"name": "meta.function.definition.special.constructor.cpp",1662"patterns": [1663{1664"begin": "\\G ?",1665"end": "(?:\\{|<%|\\?\\?<|(?=;))|(?=\\\\end\\{(?:minted|cppcode)\\})",1666"beginCaptures": {},1667"endCaptures": {1668"0": {1669"name": "punctuation.section.block.begin.bracket.curly.function.definition.special.constructor.cpp"1670}1671},1672"name": "meta.head.function.definition.special.constructor.cpp",1673"patterns": [1674{1675"include": "#ever_present_context"1676},1677{1678"match": "(\\=)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(default)|(delete))",1679"captures": {1680"1": {1681"name": "keyword.operator.assignment.cpp"1682},1683"2": {1684"patterns": [1685{1686"include": "#inline_comment"1687}1688]1689},1690"3": {1691"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"1692},1693"4": {1694"name": "comment.block.cpp"1695},1696"5": {1697"name": "comment.block.cpp punctuation.definition.comment.end.cpp"1698},1699"6": {1700"name": "keyword.other.default.function.cpp keyword.other.default.constructor.cpp"1701},1702"7": {1703"name": "keyword.other.delete.function.cpp keyword.other.delete.constructor.cpp"1704}1705}1706},1707{1708"include": "#functional_specifiers_pre_parameters"1709},1710{1711"begin": ":",1712"end": "(?=\\{)|(?=\\\\end\\{(?:minted|cppcode)\\})",1713"beginCaptures": {1714"0": {1715"name": "punctuation.separator.initializers.cpp"1716}1717},1718"endCaptures": {},1719"patterns": [1720{1721"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*+)?(\\()",1722"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",1723"beginCaptures": {1724"1": {1725"name": "entity.name.function.call.initializer.cpp"1726},1727"2": {1728"name": "meta.template.call.cpp",1729"patterns": [1730{1731"include": "#template_call_range_helper"1732}1733]1734},1735"3": {},1736"4": {1737"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"1738},1739"5": {1740"name": "comment.block.cpp"1741},1742"6": {1743"name": "comment.block.cpp punctuation.definition.comment.end.cpp"1744},1745"7": {1746"name": "punctuation.section.arguments.begin.bracket.round.function.call.initializer.cpp"1747}1748},1749"endCaptures": {1750"0": {1751"name": "punctuation.section.arguments.end.bracket.round.function.call.initializer.cpp"1752}1753},1754"contentName": "meta.parameter.initialization",1755"patterns": [1756{1757"include": "#evaluation_context"1758}1759]1760},1761{1762"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))(\\{)",1763"end": "\\}|(?=\\\\end\\{(?:minted|cppcode)\\})",1764"beginCaptures": {1765"1": {1766"name": "entity.name.function.call.initializer.cpp"1767},1768"2": {1769"name": "punctuation.section.arguments.begin.bracket.round.function.call.initializer.cpp"1770}1771},1772"endCaptures": {1773"0": {1774"name": "punctuation.section.arguments.end.bracket.round.function.call.initializer.cpp"1775}1776},1777"contentName": "meta.parameter.initialization",1778"patterns": [1779{1780"include": "#evaluation_context"1781}1782]1783},1784{1785"match": ",",1786"name": "punctuation.separator.delimiter.comma.cpp"1787},1788{1789"include": "#comments"1790}1791]1792},1793{1794"begin": "\\(",1795"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",1796"beginCaptures": {1797"0": {1798"name": "punctuation.section.parameters.begin.bracket.round.special.constructor.cpp"1799}1800},1801"endCaptures": {1802"0": {1803"name": "punctuation.section.parameters.end.bracket.round.special.constructor.cpp"1804}1805},1806"contentName": "meta.function.definition.parameters.special.constructor",1807"patterns": [1808{1809"include": "#function_parameter_context"1810},1811{1812"include": "#evaluation_context"1813}1814]1815},1816{1817"include": "#qualifiers_and_specifiers_post_parameters"1818},1819{1820"include": "$self"1821}1822]1823},1824{1825"begin": "(?<=\\{|<%|\\?\\?<)",1826"end": "\\}|%>|\\?\\?>|(?=\\\\end\\{(?:minted|cppcode)\\})",1827"beginCaptures": {},1828"endCaptures": {1829"0": {1830"name": "punctuation.section.block.end.bracket.curly.function.definition.special.constructor.cpp"1831}1832},1833"name": "meta.body.function.definition.special.constructor.cpp",1834"patterns": [1835{1836"include": "#function_body_context"1837}1838]1839},1840{1841"begin": "(?<=\\}|%>|\\?\\?>)[\\s]*",1842"end": "[\\s]*(?=;)|(?=\\\\end\\{(?:minted|cppcode)\\})",1843"beginCaptures": {},1844"endCaptures": {},1845"name": "meta.tail.function.definition.special.constructor.cpp",1846"patterns": [1847{1848"include": "$self"1849}1850]1851}1852]1853},1854"constructor_root": {1855"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))(?=\\())",1856"end": "(?:(?<=\\}|%>|\\?\\?>)|(?=[;>\\[\\]=]))|(?=\\\\end\\{(?:minted|cppcode)\\})",1857"beginCaptures": {1858"0": {1859"name": "meta.head.function.definition.special.constructor.cpp"1860},1861"1": {1862"name": "storage.type.modifier.calling-convention.cpp"1863},1864"2": {1865"patterns": [1866{1867"include": "#inline_comment"1868}1869]1870},1871"3": {1872"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"1873},1874"4": {1875"name": "comment.block.cpp"1876},1877"5": {1878"name": "comment.block.cpp punctuation.definition.comment.end.cpp"1879},1880"6": {1881"patterns": [1882{1883"match": "::",1884"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.constructor.cpp"1885},1886{1887"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)",1888"name": "entity.name.scope-resolution.constructor.cpp"1889},1890{1891"include": "#template_call_range_helper"1892}1893]1894},1895"7": {1896"patterns": [1897{1898"include": "#template_call_range_helper"1899}1900]1901},1902"8": {},1903"9": {1904"patterns": [1905{1906"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}))*(?=:)",1907"name": "entity.name.type.constructor.cpp"1908},1909{1910"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}))*",1911"name": "entity.name.function.definition.special.constructor.cpp"1912},1913{1914"match": "::",1915"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.constructor.cpp"1916}1917]1918},1919"10": {},1920"11": {1921"patterns": [1922{1923"include": "#inline_comment"1924}1925]1926},1927"12": {1928"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"1929},1930"13": {1931"name": "comment.block.cpp"1932},1933"14": {1934"name": "comment.block.cpp punctuation.definition.comment.end.cpp"1935},1936"15": {1937"patterns": [1938{1939"include": "#inline_comment"1940}1941]1942},1943"16": {1944"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"1945},1946"17": {1947"name": "comment.block.cpp"1948},1949"18": {1950"name": "comment.block.cpp punctuation.definition.comment.end.cpp"1951},1952"19": {1953"patterns": [1954{1955"include": "#inline_comment"1956}1957]1958},1959"20": {1960"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"1961},1962"21": {1963"name": "comment.block.cpp"1964},1965"22": {1966"name": "comment.block.cpp punctuation.definition.comment.end.cpp"1967}1968},1969"endCaptures": {},1970"name": "meta.function.definition.special.constructor.cpp",1971"patterns": [1972{1973"begin": "\\G ?",1974"end": "(?:\\{|<%|\\?\\?<|(?=;))|(?=\\\\end\\{(?:minted|cppcode)\\})",1975"beginCaptures": {},1976"endCaptures": {1977"0": {1978"name": "punctuation.section.block.begin.bracket.curly.function.definition.special.constructor.cpp"1979}1980},1981"name": "meta.head.function.definition.special.constructor.cpp",1982"patterns": [1983{1984"include": "#ever_present_context"1985},1986{1987"match": "(\\=)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(default)|(delete))",1988"captures": {1989"1": {1990"name": "keyword.operator.assignment.cpp"1991},1992"2": {1993"patterns": [1994{1995"include": "#inline_comment"1996}1997]1998},1999"3": {2000"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2001},2002"4": {2003"name": "comment.block.cpp"2004},2005"5": {2006"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2007},2008"6": {2009"name": "keyword.other.default.function.cpp keyword.other.default.constructor.cpp"2010},2011"7": {2012"name": "keyword.other.delete.function.cpp keyword.other.delete.constructor.cpp"2013}2014}2015},2016{2017"include": "#functional_specifiers_pre_parameters"2018},2019{2020"begin": ":",2021"end": "(?=\\{)|(?=\\\\end\\{(?:minted|cppcode)\\})",2022"beginCaptures": {2023"0": {2024"name": "punctuation.separator.initializers.cpp"2025}2026},2027"endCaptures": {},2028"patterns": [2029{2030"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*+)?(\\()",2031"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",2032"beginCaptures": {2033"1": {2034"name": "entity.name.function.call.initializer.cpp"2035},2036"2": {2037"name": "meta.template.call.cpp",2038"patterns": [2039{2040"include": "#template_call_range_helper"2041}2042]2043},2044"3": {},2045"4": {2046"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2047},2048"5": {2049"name": "comment.block.cpp"2050},2051"6": {2052"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2053},2054"7": {2055"name": "punctuation.section.arguments.begin.bracket.round.function.call.initializer.cpp"2056}2057},2058"endCaptures": {2059"0": {2060"name": "punctuation.section.arguments.end.bracket.round.function.call.initializer.cpp"2061}2062},2063"contentName": "meta.parameter.initialization",2064"patterns": [2065{2066"include": "#evaluation_context"2067}2068]2069},2070{2071"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))(\\{)",2072"end": "\\}|(?=\\\\end\\{(?:minted|cppcode)\\})",2073"beginCaptures": {2074"1": {2075"name": "entity.name.function.call.initializer.cpp"2076},2077"2": {2078"name": "punctuation.section.arguments.begin.bracket.round.function.call.initializer.cpp"2079}2080},2081"endCaptures": {2082"0": {2083"name": "punctuation.section.arguments.end.bracket.round.function.call.initializer.cpp"2084}2085},2086"contentName": "meta.parameter.initialization",2087"patterns": [2088{2089"include": "#evaluation_context"2090}2091]2092},2093{2094"match": ",",2095"name": "punctuation.separator.delimiter.comma.cpp"2096},2097{2098"include": "#comments"2099}2100]2101},2102{2103"begin": "\\(",2104"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",2105"beginCaptures": {2106"0": {2107"name": "punctuation.section.parameters.begin.bracket.round.special.constructor.cpp"2108}2109},2110"endCaptures": {2111"0": {2112"name": "punctuation.section.parameters.end.bracket.round.special.constructor.cpp"2113}2114},2115"contentName": "meta.function.definition.parameters.special.constructor",2116"patterns": [2117{2118"include": "#function_parameter_context"2119},2120{2121"include": "#evaluation_context"2122}2123]2124},2125{2126"include": "#qualifiers_and_specifiers_post_parameters"2127},2128{2129"include": "$self"2130}2131]2132},2133{2134"begin": "(?<=\\{|<%|\\?\\?<)",2135"end": "\\}|%>|\\?\\?>|(?=\\\\end\\{(?:minted|cppcode)\\})",2136"beginCaptures": {},2137"endCaptures": {2138"0": {2139"name": "punctuation.section.block.end.bracket.curly.function.definition.special.constructor.cpp"2140}2141},2142"name": "meta.body.function.definition.special.constructor.cpp",2143"patterns": [2144{2145"include": "#function_body_context"2146}2147]2148},2149{2150"begin": "(?<=\\}|%>|\\?\\?>)[\\s]*",2151"end": "[\\s]*(?=;)|(?=\\\\end\\{(?:minted|cppcode)\\})",2152"beginCaptures": {},2153"endCaptures": {},2154"name": "meta.tail.function.definition.special.constructor.cpp",2155"patterns": [2156{2157"include": "$self"2158}2159]2160}2161]2162},2163"control_flow_keywords": {2164"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))",2165"captures": {2166"1": {2167"patterns": [2168{2169"include": "#inline_comment"2170}2171]2172},2173"2": {2174"patterns": [2175{2176"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",2177"captures": {2178"1": {2179"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2180},2181"2": {2182"name": "comment.block.cpp"2183},2184"3": {2185"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2186}2187}2188}2189]2190},2191"3": {2192"name": "keyword.control.$3.cpp"2193}2194}2195},2196"cpp_attributes": {2197"begin": "\\[\\[",2198"end": "\\]\\]|(?=\\\\end\\{(?:minted|cppcode)\\})",2199"beginCaptures": {2200"0": {2201"name": "punctuation.section.attribute.begin.cpp"2202}2203},2204"endCaptures": {2205"0": {2206"name": "punctuation.section.attribute.end.cpp"2207}2208},2209"name": "support.other.attribute.cpp",2210"patterns": [2211{2212"include": "#attributes_context"2213},2214{2215"begin": "\\(",2216"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",2217"beginCaptures": {},2218"endCaptures": {},2219"patterns": [2220{2221"include": "#attributes_context"2222},2223{2224"include": "#string_context"2225},2226{2227"include": "#ever_present_context"2228}2229]2230},2231{2232"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))",2233"captures": {2234"1": {2235"name": "keyword.other.using.directive.cpp"2236},2237"2": {2238"name": "entity.name.namespace.cpp"2239}2240}2241},2242{2243"match": ",",2244"name": "punctuation.separator.attribute.cpp"2245},2246{2247"match": ":",2248"name": "punctuation.accessor.attribute.cpp"2249},2250{2251"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)(?=::)",2252"name": "entity.name.namespace.cpp"2253},2254{2255"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)",2256"name": "entity.other.attribute.$0.cpp"2257},2258{2259"include": "#number_literal"2260},2261{2262"include": "#ever_present_context"2263}2264]2265},2266"curly_initializer": {2267"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))(\\{)",2268"end": "\\}|(?=\\\\end\\{(?:minted|cppcode)\\})",2269"beginCaptures": {2270"1": {2271"name": "meta.qualified-type.cpp",2272"patterns": [2273{2274"match": "::",2275"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"2276},2277{2278"match": "(?<!\\w)(?:struct|class|union|enum)(?!\\w)",2279"name": "storage.type.$0.cpp"2280},2281{2282"include": "#attributes_context"2283},2284{2285"include": "#storage_types"2286},2287{2288"include": "#number_literal"2289},2290{2291"include": "#string_context"2292},2293{2294"include": "#comma"2295},2296{2297"include": "#scope_resolution_inner_generated"2298},2299{2300"include": "#template_call_range_helper"2301},2302{2303"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}))*",2304"name": "entity.name.type.cpp"2305}2306]2307},2308"2": {2309"patterns": [2310{2311"include": "#attributes_context"2312},2313{2314"include": "#number_literal"2315}2316]2317},2318"3": {2319"patterns": [2320{2321"include": "#inline_comment"2322}2323]2324},2325"4": {2326"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2327},2328"5": {2329"name": "comment.block.cpp"2330},2331"6": {2332"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2333},2334"7": {2335"patterns": [2336{2337"include": "#inline_comment"2338}2339]2340},2341"8": {2342"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2343},2344"9": {2345"name": "comment.block.cpp"2346},2347"10": {2348"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2349},2350"11": {2351"patterns": [2352{2353"match": "::",2354"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"2355},2356{2357"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)",2358"name": "entity.name.scope-resolution.type.cpp"2359},2360{2361"include": "#template_call_range_helper"2362}2363]2364},2365"12": {2366"patterns": [2367{2368"include": "#template_call_range_helper"2369}2370]2371},2372"13": {},2373"14": {2374"patterns": [2375{2376"include": "#inline_comment"2377}2378]2379},2380"15": {2381"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2382},2383"16": {2384"name": "comment.block.cpp"2385},2386"17": {2387"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2388},2389"18": {},2390"19": {2391"patterns": [2392{2393"include": "#inline_comment"2394}2395]2396},2397"20": {2398"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2399},2400"21": {2401"name": "comment.block.cpp"2402},2403"22": {2404"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2405},2406"23": {2407"name": "punctuation.section.arguments.begin.bracket.curly.initializer.cpp"2408}2409},2410"endCaptures": {2411"0": {2412"name": "punctuation.section.arguments.end.bracket.curly.initializer.cpp"2413}2414},2415"name": "meta.initialization.cpp",2416"patterns": [2417{2418"begin": "(\\.)((?:[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}))*)",2419"end": "(?:(,)|(?=\\}))|(?=\\\\end\\{(?:minted|cppcode)\\})",2420"beginCaptures": {2421"1": {2422"name": "punctuation.accessor.initializer.cpp variable.parameter.initializer.cpp"2423},2424"2": {2425"name": "variable.parameter.initializer.cpp"2426}2427},2428"endCaptures": {2429"1": {2430"name": "punctuation.separator.delimiter.comma.cpp"2431}2432},2433"name": "meta.initialization.parameter.cpp",2434"patterns": [2435{2436"include": "#evaluation_context"2437}2438]2439},2440{2441"include": "#evaluation_context"2442},2443{2444"include": "#comma"2445}2446]2447},2448"d9bc4796b0b_module_import": {2449"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+)?(;?)",2450"captures": {2451"1": {2452"patterns": [2453{2454"include": "#inline_comment"2455}2456]2457},2458"2": {2459"patterns": [2460{2461"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",2462"captures": {2463"1": {2464"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2465},2466"2": {2467"name": "comment.block.cpp"2468},2469"3": {2470"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2471}2472}2473}2474]2475},2476"3": {2477"name": "keyword.control.directive.import.cpp"2478},2479"5": {2480"name": "string.quoted.other.lt-gt.include.cpp"2481},2482"6": {2483"name": "punctuation.definition.string.begin.cpp"2484},2485"7": {2486"name": "punctuation.definition.string.end.cpp"2487},2488"8": {2489"patterns": [2490{2491"include": "#inline_comment"2492}2493]2494},2495"9": {2496"patterns": [2497{2498"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",2499"captures": {2500"1": {2501"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2502},2503"2": {2504"name": "comment.block.cpp"2505},2506"3": {2507"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2508}2509}2510}2511]2512},2513"10": {2514"name": "string.quoted.double.include.cpp"2515},2516"11": {2517"name": "punctuation.definition.string.begin.cpp"2518},2519"12": {2520"name": "punctuation.definition.string.end.cpp"2521},2522"13": {2523"patterns": [2524{2525"include": "#inline_comment"2526}2527]2528},2529"14": {2530"patterns": [2531{2532"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",2533"captures": {2534"1": {2535"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2536},2537"2": {2538"name": "comment.block.cpp"2539},2540"3": {2541"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2542}2543}2544}2545]2546},2547"15": {2548"name": "entity.name.other.preprocessor.macro.include.cpp"2549},2550"16": {2551"patterns": [2552{2553"include": "#inline_comment"2554}2555]2556},2557"17": {2558"patterns": [2559{2560"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",2561"captures": {2562"1": {2563"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2564},2565"2": {2566"name": "comment.block.cpp"2567},2568"3": {2569"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2570}2571}2572}2573]2574},2575"18": {2576"patterns": [2577{2578"include": "#inline_comment"2579}2580]2581},2582"19": {2583"patterns": [2584{2585"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",2586"captures": {2587"1": {2588"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2589},2590"2": {2591"name": "comment.block.cpp"2592},2593"3": {2594"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2595}2596}2597}2598]2599},2600"20": {2601"patterns": [2602{2603"include": "#inline_comment"2604}2605]2606},2607"21": {2608"patterns": [2609{2610"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",2611"captures": {2612"1": {2613"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2614},2615"2": {2616"name": "comment.block.cpp"2617},2618"3": {2619"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2620}2621}2622}2623]2624},2625"22": {2626"name": "punctuation.terminator.statement.cpp"2627}2628},2629"name": "meta.preprocessor.import.cpp"2630},2631"decltype": {2632"begin": "((?<!\\w)decltype(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()",2633"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",2634"beginCaptures": {2635"1": {2636"name": "keyword.operator.functionlike.cpp keyword.other.decltype.cpp storage.type.decltype.cpp"2637},2638"2": {2639"patterns": [2640{2641"include": "#inline_comment"2642}2643]2644},2645"3": {2646"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2647},2648"4": {2649"name": "comment.block.cpp"2650},2651"5": {2652"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2653},2654"6": {2655"name": "punctuation.section.arguments.begin.bracket.round.decltype.cpp"2656}2657},2658"endCaptures": {2659"0": {2660"name": "punctuation.section.arguments.end.bracket.round.decltype.cpp"2661}2662},2663"contentName": "meta.arguments.decltype",2664"patterns": [2665{2666"include": "#evaluation_context"2667}2668]2669},2670"decltype_specifier": {2671"begin": "((?<!\\w)decltype(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()",2672"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",2673"beginCaptures": {2674"1": {2675"name": "keyword.operator.functionlike.cpp keyword.other.decltype.cpp storage.type.decltype.cpp"2676},2677"2": {2678"patterns": [2679{2680"include": "#inline_comment"2681}2682]2683},2684"3": {2685"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2686},2687"4": {2688"name": "comment.block.cpp"2689},2690"5": {2691"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2692},2693"6": {2694"name": "punctuation.section.arguments.begin.bracket.round.decltype.cpp"2695}2696},2697"endCaptures": {2698"0": {2699"name": "punctuation.section.arguments.end.bracket.round.decltype.cpp"2700}2701},2702"contentName": "meta.arguments.decltype",2703"patterns": [2704{2705"include": "#evaluation_context"2706}2707]2708},2709"default_statement": {2710"begin": "((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)default(?!\\w))",2711"end": ":|(?=\\\\end\\{(?:minted|cppcode)\\})",2712"beginCaptures": {2713"1": {2714"patterns": [2715{2716"include": "#inline_comment"2717}2718]2719},2720"2": {2721"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2722},2723"3": {2724"name": "comment.block.cpp"2725},2726"4": {2727"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2728},2729"5": {2730"name": "keyword.control.default.cpp"2731}2732},2733"endCaptures": {2734"0": {2735"name": "punctuation.separator.colon.case.default.cpp"2736}2737},2738"name": "meta.conditional.case.cpp",2739"patterns": [2740{2741"include": "#evaluation_context"2742}2743]2744},2745"destructor_inline": {2746"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)(?=\\())",2747"end": "(?:(?<=\\}|%>|\\?\\?>)|(?=[;>\\[\\]=]))|(?=\\\\end\\{(?:minted|cppcode)\\})",2748"beginCaptures": {2749"0": {2750"name": "meta.head.function.definition.special.member.destructor.cpp"2751},2752"1": {2753"patterns": [2754{2755"include": "#inline_comment"2756}2757]2758},2759"2": {2760"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2761},2762"3": {2763"name": "comment.block.cpp"2764},2765"4": {2766"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2767},2768"5": {2769"name": "storage.type.modifier.calling-convention.cpp"2770},2771"6": {2772"patterns": [2773{2774"include": "#inline_comment"2775}2776]2777},2778"7": {2779"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2780},2781"8": {2782"name": "comment.block.cpp"2783},2784"9": {2785"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2786},2787"10": {2788"patterns": [2789{2790"include": "#functional_specifiers_pre_parameters"2791}2792]2793},2794"11": {2795"patterns": [2796{2797"include": "#inline_comment"2798}2799]2800},2801"12": {2802"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2803},2804"13": {2805"name": "comment.block.cpp"2806},2807"14": {2808"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2809},2810"15": {2811"name": "entity.name.function.destructor.cpp entity.name.function.definition.special.member.destructor.cpp"2812}2813},2814"endCaptures": {},2815"name": "meta.function.definition.special.member.destructor.cpp",2816"patterns": [2817{2818"begin": "\\G ?",2819"end": "(?:\\{|<%|\\?\\?<|(?=;))|(?=\\\\end\\{(?:minted|cppcode)\\})",2820"beginCaptures": {},2821"endCaptures": {2822"0": {2823"name": "punctuation.section.block.begin.bracket.curly.function.definition.special.member.destructor.cpp"2824}2825},2826"name": "meta.head.function.definition.special.member.destructor.cpp",2827"patterns": [2828{2829"include": "#ever_present_context"2830},2831{2832"match": "(\\=)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(default)|(delete))",2833"captures": {2834"1": {2835"name": "keyword.operator.assignment.cpp"2836},2837"2": {2838"patterns": [2839{2840"include": "#inline_comment"2841}2842]2843},2844"3": {2845"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2846},2847"4": {2848"name": "comment.block.cpp"2849},2850"5": {2851"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2852},2853"6": {2854"name": "keyword.other.default.function.cpp keyword.other.default.constructor.cpp keyword.other.default.destructor.cpp"2855},2856"7": {2857"name": "keyword.other.delete.function.cpp keyword.other.delete.constructor.cpp keyword.other.delete.destructor.cpp"2858}2859}2860},2861{2862"begin": "\\(",2863"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",2864"beginCaptures": {2865"0": {2866"name": "punctuation.section.parameters.begin.bracket.round.special.member.destructor.cpp"2867}2868},2869"endCaptures": {2870"0": {2871"name": "punctuation.section.parameters.end.bracket.round.special.member.destructor.cpp"2872}2873},2874"contentName": "meta.function.definition.parameters.special.member.destructor",2875"patterns": []2876},2877{2878"include": "#qualifiers_and_specifiers_post_parameters"2879},2880{2881"include": "$self"2882}2883]2884},2885{2886"begin": "(?<=\\{|<%|\\?\\?<)",2887"end": "\\}|%>|\\?\\?>|(?=\\\\end\\{(?:minted|cppcode)\\})",2888"beginCaptures": {},2889"endCaptures": {2890"0": {2891"name": "punctuation.section.block.end.bracket.curly.function.definition.special.member.destructor.cpp"2892}2893},2894"name": "meta.body.function.definition.special.member.destructor.cpp",2895"patterns": [2896{2897"include": "#function_body_context"2898}2899]2900},2901{2902"begin": "(?<=\\}|%>|\\?\\?>)[\\s]*",2903"end": "[\\s]*(?=;)|(?=\\\\end\\{(?:minted|cppcode)\\})",2904"beginCaptures": {},2905"endCaptures": {},2906"name": "meta.tail.function.definition.special.member.destructor.cpp",2907"patterns": [2908{2909"include": "$self"2910}2911]2912}2913]2914},2915"destructor_root": {2916"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))(?=\\())",2917"end": "(?:(?<=\\}|%>|\\?\\?>)|(?=[;>\\[\\]=]))|(?=\\\\end\\{(?:minted|cppcode)\\})",2918"beginCaptures": {2919"0": {2920"name": "meta.head.function.definition.special.member.destructor.cpp"2921},2922"1": {2923"patterns": [2924{2925"include": "#inline_comment"2926}2927]2928},2929"2": {2930"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2931},2932"3": {2933"name": "comment.block.cpp"2934},2935"4": {2936"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2937},2938"5": {2939"name": "storage.type.modifier.calling-convention.cpp"2940},2941"6": {2942"patterns": [2943{2944"include": "#inline_comment"2945}2946]2947},2948"7": {2949"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"2950},2951"8": {2952"name": "comment.block.cpp"2953},2954"9": {2955"name": "comment.block.cpp punctuation.definition.comment.end.cpp"2956},2957"10": {2958"patterns": [2959{2960"match": "::",2961"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.destructor.cpp"2962},2963{2964"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)",2965"name": "entity.name.scope-resolution.destructor.cpp"2966},2967{2968"include": "#template_call_range_helper"2969}2970]2971},2972"11": {2973"patterns": [2974{2975"include": "#template_call_range_helper"2976}2977]2978},2979"12": {},2980"13": {2981"patterns": [2982{2983"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}))*(?=:)",2984"name": "entity.name.type.destructor.cpp"2985},2986{2987"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}))*",2988"name": "entity.name.function.definition.special.member.destructor.cpp"2989},2990{2991"match": "::",2992"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.destructor.cpp"2993}2994]2995},2996"14": {},2997"15": {2998"patterns": [2999{3000"include": "#inline_comment"3001}3002]3003},3004"16": {3005"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"3006},3007"17": {3008"name": "comment.block.cpp"3009},3010"18": {3011"name": "comment.block.cpp punctuation.definition.comment.end.cpp"3012},3013"19": {3014"patterns": [3015{3016"include": "#inline_comment"3017}3018]3019},3020"20": {3021"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"3022},3023"21": {3024"name": "comment.block.cpp"3025},3026"22": {3027"name": "comment.block.cpp punctuation.definition.comment.end.cpp"3028},3029"23": {3030"patterns": [3031{3032"include": "#inline_comment"3033}3034]3035},3036"24": {3037"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"3038},3039"25": {3040"name": "comment.block.cpp"3041},3042"26": {3043"name": "comment.block.cpp punctuation.definition.comment.end.cpp"3044}3045},3046"endCaptures": {},3047"name": "meta.function.definition.special.member.destructor.cpp",3048"patterns": [3049{3050"begin": "\\G ?",3051"end": "(?:\\{|<%|\\?\\?<|(?=;))|(?=\\\\end\\{(?:minted|cppcode)\\})",3052"beginCaptures": {},3053"endCaptures": {3054"0": {3055"name": "punctuation.section.block.begin.bracket.curly.function.definition.special.member.destructor.cpp"3056}3057},3058"name": "meta.head.function.definition.special.member.destructor.cpp",3059"patterns": [3060{3061"include": "#ever_present_context"3062},3063{3064"match": "(\\=)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(default)|(delete))",3065"captures": {3066"1": {3067"name": "keyword.operator.assignment.cpp"3068},3069"2": {3070"patterns": [3071{3072"include": "#inline_comment"3073}3074]3075},3076"3": {3077"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"3078},3079"4": {3080"name": "comment.block.cpp"3081},3082"5": {3083"name": "comment.block.cpp punctuation.definition.comment.end.cpp"3084},3085"6": {3086"name": "keyword.other.default.function.cpp keyword.other.default.constructor.cpp keyword.other.default.destructor.cpp"3087},3088"7": {3089"name": "keyword.other.delete.function.cpp keyword.other.delete.constructor.cpp keyword.other.delete.destructor.cpp"3090}3091}3092},3093{3094"begin": "\\(",3095"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",3096"beginCaptures": {3097"0": {3098"name": "punctuation.section.parameters.begin.bracket.round.special.member.destructor.cpp"3099}3100},3101"endCaptures": {3102"0": {3103"name": "punctuation.section.parameters.end.bracket.round.special.member.destructor.cpp"3104}3105},3106"contentName": "meta.function.definition.parameters.special.member.destructor",3107"patterns": []3108},3109{3110"include": "#qualifiers_and_specifiers_post_parameters"3111},3112{3113"include": "$self"3114}3115]3116},3117{3118"begin": "(?<=\\{|<%|\\?\\?<)",3119"end": "\\}|%>|\\?\\?>|(?=\\\\end\\{(?:minted|cppcode)\\})",3120"beginCaptures": {},3121"endCaptures": {3122"0": {3123"name": "punctuation.section.block.end.bracket.curly.function.definition.special.member.destructor.cpp"3124}3125},3126"name": "meta.body.function.definition.special.member.destructor.cpp",3127"patterns": [3128{3129"include": "#function_body_context"3130}3131]3132},3133{3134"begin": "(?<=\\}|%>|\\?\\?>)[\\s]*",3135"end": "[\\s]*(?=;)|(?=\\\\end\\{(?:minted|cppcode)\\})",3136"beginCaptures": {},3137"endCaptures": {},3138"name": "meta.tail.function.definition.special.member.destructor.cpp",3139"patterns": [3140{3141"include": "$self"3142}3143]3144}3145]3146},3147"diagnostic": {3148"begin": "(^((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(#)(?:\\s+)?((?:error|warning)))\\b(?:\\s+)?",3149"end": "(?<!\\\\)(?:(?=\\n)|(?<=^\\n|[^\\\\]\\n)(?=$))|(?=\\\\end\\{(?:minted|cppcode)\\})",3150"beginCaptures": {3151"1": {3152"name": "keyword.control.directive.diagnostic.$7.cpp"3153},3154"2": {3155"patterns": [3156{3157"include": "#inline_comment"3158}3159]3160},3161"3": {3162"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"3163},3164"4": {3165"name": "comment.block.cpp"3166},3167"5": {3168"name": "comment.block.cpp punctuation.definition.comment.end.cpp"3169},3170"6": {3171"name": "punctuation.definition.directive.cpp"3172},3173"7": {}3174},3175"endCaptures": {},3176"name": "meta.preprocessor.diagnostic.$reference(directive).cpp",3177"patterns": [3178{3179"include": "#comments"3180},3181{3182"begin": "\"",3183"end": "(?:(\")|(?<!\\\\)(?:(?=\\n)|(?<=^\\n|[^\\\\]\\n)(?=$)))|(?=\\\\end\\{(?:minted|cppcode)\\})",3184"beginCaptures": {3185"0": {3186"name": "punctuation.definition.string.begin.cpp"3187}3188},3189"endCaptures": {3190"1": {3191"name": "punctuation.definition.string.end.cpp"3192}3193},3194"name": "string.quoted.double.cpp",3195"patterns": [3196{3197"include": "#line_continuation_character"3198}3199]3200},3201{3202"begin": "'",3203"end": "(?:(')|(?<!\\\\)(?:(?=\\n)|(?<=^\\n|[^\\\\]\\n)(?=$)))|(?=\\\\end\\{(?:minted|cppcode)\\})",3204"beginCaptures": {3205"0": {3206"name": "punctuation.definition.string.begin.cpp"3207}3208},3209"endCaptures": {3210"1": {3211"name": "punctuation.definition.string.end.cpp"3212}3213},3214"name": "string.quoted.single.cpp",3215"patterns": [3216{3217"include": "#line_continuation_character"3218}3219]3220},3221{3222"begin": "[^'\"]",3223"end": "(?<!\\\\)(?:(?=\\n)|(?<=^\\n|[^\\\\]\\n)(?=$))|(?=\\\\end\\{(?:minted|cppcode)\\})",3224"beginCaptures": {},3225"endCaptures": {},3226"name": "string.unquoted.cpp",3227"patterns": [3228{3229"include": "#line_continuation_character"3230},3231{3232"include": "#comments"3233}3234]3235}3236]3237},3238"emacs_file_banner": {3239"match": "(?:(^(?:\\s+)?((\\/\\/)(?:\\s+)?((?:[#;\\/=*C~]+)++(?![#;\\/=*C~]))(?:\\s+)?.+(?:\\s+)?(?:\\4)(?:\\s+)?(?:\\n|$)))|(^(?:\\s+)?((\\/\\*)(?:\\s+)?((?:[#;\\/=*C~]+)++(?![#;\\/=*C~]))(?:\\s+)?.+(?:\\s+)?(?:\\8)(?:\\s+)?\\*\\/)))",3240"captures": {3241"1": {3242"name": "meta.toc-list.banner.double-slash.cpp"3243},3244"2": {3245"name": "comment.line.double-slash.cpp"3246},3247"3": {3248"name": "punctuation.definition.comment.cpp"3249},3250"4": {3251"name": "meta.banner.character.cpp"3252},3253"5": {3254"name": "meta.toc-list.banner.block.cpp"3255},3256"6": {3257"name": "comment.line.banner.cpp"3258},3259"7": {3260"name": "punctuation.definition.comment.cpp"3261},3262"8": {3263"name": "meta.banner.character.cpp"3264}3265}3266},3267"empty_square_brackets": {3268"name": "storage.modifier.array.bracket.square",3269"match": "(?<!delete)\\[(?:\\s+)?\\]"3270},3271"enum_block": {3272"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)))?",3273"end": "(?:(?:(?<=\\}|%>|\\?\\?>)(?:\\s+)?(;)|(;))|(?=[;>\\[\\]=]))|(?=\\\\end\\{(?:minted|cppcode)\\})",3274"beginCaptures": {3275"0": {3276"name": "meta.head.enum.cpp"3277},3278"1": {3279"name": "storage.type.enum.cpp"3280},3281"2": {3282"name": "storage.type.enum.enum-key.$2.cpp"3283},3284"3": {3285"patterns": [3286{3287"include": "#attributes_context"3288},3289{3290"include": "#number_literal"3291}3292]3293},3294"4": {3295"name": "entity.name.type.enum.cpp"3296},3297"5": {3298"name": "punctuation.separator.colon.type-specifier.cpp"3299},3300"6": {3301"patterns": [3302{3303"include": "#scope_resolution_inner_generated"3304}3305]3306},3307"7": {3308"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"3309},3310"8": {3311"patterns": [3312{3313"include": "#template_call_range_helper"3314}3315]3316},3317"9": {},3318"10": {3319"name": "entity.name.scope-resolution.cpp"3320},3321"11": {3322"name": "meta.template.call.cpp",3323"patterns": [3324{3325"include": "#template_call_range_helper"3326}3327]3328},3329"12": {},3330"13": {3331"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"3332},3333"14": {3334"name": "comment.block.cpp"3335},3336"15": {3337"name": "comment.block.cpp punctuation.definition.comment.end.cpp"3338},3339"16": {3340"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"3341},3342"17": {3343"name": "storage.type.integral.$17.cpp"3344}3345},3346"endCaptures": {3347"1": {3348"name": "punctuation.terminator.statement.cpp"3349},3350"2": {3351"name": "punctuation.terminator.statement.cpp"3352}3353},3354"name": "meta.block.enum.cpp",3355"patterns": [3356{3357"begin": "\\G ?",3358"end": "(?:\\{|<%|\\?\\?<|(?=;))|(?=\\\\end\\{(?:minted|cppcode)\\})",3359"beginCaptures": {},3360"endCaptures": {3361"0": {3362"name": "punctuation.section.block.begin.bracket.curly.enum.cpp"3363}3364},3365"name": "meta.head.enum.cpp",3366"patterns": [3367{3368"include": "$self"3369}3370]3371},3372{3373"begin": "(?<=\\{|<%|\\?\\?<)",3374"end": "\\}|%>|\\?\\?>|(?=\\\\end\\{(?:minted|cppcode)\\})",3375"beginCaptures": {},3376"endCaptures": {3377"0": {3378"name": "punctuation.section.block.end.bracket.curly.enum.cpp"3379}3380},3381"name": "meta.body.enum.cpp",3382"patterns": [3383{3384"include": "#ever_present_context"3385},3386{3387"include": "#enumerator_list"3388},3389{3390"include": "#comments"3391},3392{3393"include": "#comma"3394},3395{3396"include": "#semicolon"3397}3398]3399},3400{3401"begin": "(?<=\\}|%>|\\?\\?>)[\\s]*",3402"end": "[\\s]*(?=;)|(?=\\\\end\\{(?:minted|cppcode)\\})",3403"beginCaptures": {},3404"endCaptures": {},3405"name": "meta.tail.enum.cpp",3406"patterns": [3407{3408"include": "$self"3409}3410]3411}3412]3413},3414"enum_declare": {3415"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])",3416"captures": {3417"1": {3418"name": "storage.type.enum.declare.cpp"3419},3420"2": {3421"patterns": [3422{3423"include": "#inline_comment"3424}3425]3426},3427"3": {3428"patterns": [3429{3430"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",3431"captures": {3432"1": {3433"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"3434},3435"2": {3436"name": "comment.block.cpp"3437},3438"3": {3439"name": "comment.block.cpp punctuation.definition.comment.end.cpp"3440}3441}3442}3443]3444},3445"4": {3446"name": "entity.name.type.enum.cpp"3447},3448"5": {3449"patterns": [3450{3451"match": "\\*",3452"name": "storage.modifier.pointer.cpp"3453},3454{3455"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",3456"captures": {3457"1": {3458"patterns": [3459{3460"include": "#inline_comment"3461}3462]3463},3464"2": {3465"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"3466},3467"3": {3468"name": "comment.block.cpp"3469},3470"4": {3471"name": "comment.block.cpp punctuation.definition.comment.end.cpp"3472}3473},3474"name": "invalid.illegal.reference-type.cpp"3475},3476{3477"match": "\\&",3478"name": "storage.modifier.reference.cpp"3479}3480]3481},3482"6": {3483"patterns": [3484{3485"include": "#inline_comment"3486}3487]3488},3489"7": {3490"patterns": [3491{3492"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",3493"captures": {3494"1": {3495"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"3496},3497"2": {3498"name": "comment.block.cpp"3499},3500"3": {3501"name": "comment.block.cpp punctuation.definition.comment.end.cpp"3502}3503}3504}3505]3506},3507"8": {3508"patterns": [3509{3510"include": "#inline_comment"3511}3512]3513},3514"9": {3515"patterns": [3516{3517"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",3518"captures": {3519"1": {3520"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"3521},3522"2": {3523"name": "comment.block.cpp"3524},3525"3": {3526"name": "comment.block.cpp punctuation.definition.comment.end.cpp"3527}3528}3529}3530]3531},3532"10": {3533"patterns": [3534{3535"include": "#inline_comment"3536}3537]3538},3539"11": {3540"patterns": [3541{3542"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",3543"captures": {3544"1": {3545"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"3546},3547"2": {3548"name": "comment.block.cpp"3549},3550"3": {3551"name": "comment.block.cpp punctuation.definition.comment.end.cpp"3552}3553}3554}3555]3556},3557"12": {3558"name": "variable.other.object.declare.cpp"3559},3560"13": {3561"patterns": [3562{3563"include": "#inline_comment"3564}3565]3566},3567"14": {3568"patterns": [3569{3570"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",3571"captures": {3572"1": {3573"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"3574},3575"2": {3576"name": "comment.block.cpp"3577},3578"3": {3579"name": "comment.block.cpp punctuation.definition.comment.end.cpp"3580}3581}3582}3583]3584}3585}3586},3587"enumerator_list": {3588"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))|(?=\\}[^']))|(?=(?:\\/\\/|\\/\\*)))",3589"captures": {3590"1": {3591"name": "variable.other.enummember.cpp"3592},3593"2": {3594"patterns": [3595{3596"include": "#attributes_context"3597},3598{3599"include": "#number_literal"3600}3601]3602},3603"3": {3604"name": "keyword.operator.assignment.cpp"3605},3606"4": {3607"patterns": [3608{3609"include": "#evaluation_context"3610}3611]3612},3613"5": {3614"patterns": [3615{3616"include": "#comma"3617},3618{3619"include": "#semicolon"3620}3621]3622}3623},3624"name": "meta.enum.definition.cpp"3625},3626"evaluation_context": {3627"patterns": [3628{3629"include": "#ever_present_context"3630},3631{3632"include": "#string_context"3633},3634{3635"include": "#number_literal"3636},3637{3638"include": "#method_access"3639},3640{3641"include": "#member_access"3642},3643{3644"include": "#predefined_macros"3645},3646{3647"include": "#operators"3648},3649{3650"include": "#memory_operators"3651},3652{3653"include": "#wordlike_operators"3654},3655{3656"include": "#type_casting_operators"3657},3658{3659"include": "#control_flow_keywords"3660},3661{3662"include": "#exception_keywords"3663},3664{3665"include": "#the_this_keyword"3666},3667{3668"include": "#language_constants"3669},3670{3671"include": "#constructor_bracket_call"3672},3673{3674"include": "#simple_constructor_call"3675},3676{3677"include": "#simple_array_assignment"3678},3679{3680"include": "#builtin_storage_type_initilizer"3681},3682{3683"include": "#qualifiers_and_specifiers_post_parameters"3684},3685{3686"include": "#functional_specifiers_pre_parameters"3687},3688{3689"include": "#storage_types"3690},3691{3692"include": "#lambdas"3693},3694{3695"include": "#attributes_context"3696},3697{3698"include": "#parentheses"3699},3700{3701"include": "#function_call"3702},3703{3704"include": "#scope_resolution_inner_generated"3705},3706{3707"include": "#square_brackets"3708},3709{3710"include": "#semicolon"3711},3712{3713"include": "#comma"3714},3715{3716"include": "#unknown_variable"3717}3718]3719},3720"ever_present_context": {3721"patterns": [3722{3723"include": "#pragma_mark"3724},3725{3726"include": "#pragma"3727},3728{3729"include": "#include"3730},3731{3732"include": "#line"3733},3734{3735"include": "#diagnostic"3736},3737{3738"include": "#undef"3739},3740{3741"include": "#preprocessor_conditional_range"3742},3743{3744"include": "#macro"3745},3746{3747"include": "#preprocessor_conditional_standalone"3748},3749{3750"include": "#macro_argument"3751},3752{3753"include": "#comments"3754},3755{3756"include": "#line_continuation_character"3757}3758]3759},3760"exception_keywords": {3761"match": "((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:throw|catch|try)(?!\\w))",3762"captures": {3763"1": {3764"patterns": [3765{3766"include": "#inline_comment"3767}3768]3769},3770"2": {3771"patterns": [3772{3773"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",3774"captures": {3775"1": {3776"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"3777},3778"2": {3779"name": "comment.block.cpp"3780},3781"3": {3782"name": "comment.block.cpp punctuation.definition.comment.end.cpp"3783}3784}3785}3786]3787},3788"3": {3789"name": "keyword.control.exception.$3.cpp"3790}3791}3792},3793"extern_block": {3794"begin": "((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(extern)(?=\\s*\\\")",3795"end": "(?:(?:(?<=\\}|%>|\\?\\?>)(?:\\s+)?(;)|(;))|(?=[;>\\[\\]=]))|(?=\\\\end\\{(?:minted|cppcode)\\})",3796"beginCaptures": {3797"0": {3798"name": "meta.head.extern.cpp"3799},3800"1": {3801"patterns": [3802{3803"include": "#inline_comment"3804}3805]3806},3807"2": {3808"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"3809},3810"3": {3811"name": "comment.block.cpp"3812},3813"4": {3814"name": "comment.block.cpp punctuation.definition.comment.end.cpp"3815},3816"5": {3817"name": "storage.type.extern.cpp"3818}3819},3820"endCaptures": {3821"1": {3822"name": "punctuation.terminator.statement.cpp"3823},3824"2": {3825"name": "punctuation.terminator.statement.cpp"3826}3827},3828"name": "meta.block.extern.cpp",3829"patterns": [3830{3831"begin": "\\G ?",3832"end": "(?:\\{|<%|\\?\\?<|(?=;))|(?=\\\\end\\{(?:minted|cppcode)\\})",3833"beginCaptures": {},3834"endCaptures": {3835"0": {3836"name": "punctuation.section.block.begin.bracket.curly.extern.cpp"3837}3838},3839"name": "meta.head.extern.cpp",3840"patterns": [3841{3842"include": "$self"3843}3844]3845},3846{3847"begin": "(?<=\\{|<%|\\?\\?<)",3848"end": "\\}|%>|\\?\\?>|(?=\\\\end\\{(?:minted|cppcode)\\})",3849"beginCaptures": {},3850"endCaptures": {3851"0": {3852"name": "punctuation.section.block.end.bracket.curly.extern.cpp"3853}3854},3855"name": "meta.body.extern.cpp",3856"patterns": [3857{3858"include": "$self"3859}3860]3861},3862{3863"begin": "(?<=\\}|%>|\\?\\?>)[\\s]*",3864"end": "[\\s]*(?=;)|(?=\\\\end\\{(?:minted|cppcode)\\})",3865"beginCaptures": {},3866"endCaptures": {},3867"name": "meta.tail.extern.cpp",3868"patterns": [3869{3870"include": "$self"3871}3872]3873},3874{3875"include": "$self"3876}3877]3878},3879"function_body_context": {3880"patterns": [3881{3882"include": "#ever_present_context"3883},3884{3885"include": "#simple_array_assignment"3886},3887{3888"include": "#using_namespace"3889},3890{3891"include": "#type_alias"3892},3893{3894"include": "#using_name"3895},3896{3897"include": "#namespace_alias"3898},3899{3900"include": "#typedef_class"3901},3902{3903"include": "#typedef_struct"3904},3905{3906"include": "#typedef_union"3907},3908{3909"include": "#misc_keywords"3910},3911{3912"include": "#standard_declares"3913},3914{3915"include": "#class_block"3916},3917{3918"include": "#struct_block"3919},3920{3921"include": "#union_block"3922},3923{3924"include": "#enum_block"3925},3926{3927"include": "#access_control_keywords"3928},3929{3930"include": "#block"3931},3932{3933"include": "#static_assert"3934},3935{3936"include": "#assembly"3937},3938{3939"include": "#function_pointer"3940},3941{3942"include": "#over_qualified_types"3943},3944{3945"include": "#normal_variable_assignment"3946},3947{3948"include": "#normal_variable_declaration"3949},3950{3951"include": "#switch_statement"3952},3953{3954"include": "#goto_statement"3955},3956{3957"include": "#evaluation_context"3958},3959{3960"include": "#label"3961}3962]3963},3964"function_call": {3965"patterns": [3966{3967"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-Z][A-Z_0-9]*)\\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*+)?(\\()",3968"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",3969"beginCaptures": {3970"1": {3971"patterns": [3972{3973"include": "#scope_resolution_function_call_inner_generated"3974}3975]3976},3977"2": {3978"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.call.cpp"3979},3980"3": {3981"patterns": [3982{3983"include": "#template_call_range_helper"3984}3985]3986},3987"4": {},3988"5": {3989"name": "entity.name.function.call.upper-case.cpp entity.name.function.call.cpp"3990},3991"6": {3992"patterns": [3993{3994"include": "#inline_comment"3995}3996]3997},3998"7": {3999"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4000},4001"8": {4002"name": "comment.block.cpp"4003},4004"9": {4005"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4006},4007"10": {4008"name": "meta.template.call.cpp",4009"patterns": [4010{4011"include": "#template_call_range_helper"4012}4013]4014},4015"11": {},4016"12": {4017"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4018},4019"13": {4020"name": "comment.block.cpp"4021},4022"14": {4023"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4024},4025"15": {4026"name": "punctuation.section.arguments.begin.bracket.round.function.call.cpp punctuation.section.arguments.begin.bracket.round.function.call.upper-case.cpp"4027}4028},4029"endCaptures": {4030"0": {4031"name": "punctuation.section.arguments.end.bracket.round.function.call.cpp punctuation.section.arguments.begin.bracket.round.function.call.upper-case.cpp"4032}4033},4034"patterns": [4035{4036"include": "#evaluation_context"4037}4038]4039},4040{4041"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*+)?(\\()",4042"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",4043"beginCaptures": {4044"1": {4045"patterns": [4046{4047"include": "#scope_resolution_function_call_inner_generated"4048}4049]4050},4051"2": {4052"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.call.cpp"4053},4054"3": {4055"patterns": [4056{4057"include": "#template_call_range_helper"4058}4059]4060},4061"4": {},4062"5": {4063"name": "entity.name.function.call.cpp"4064},4065"6": {4066"patterns": [4067{4068"include": "#inline_comment"4069}4070]4071},4072"7": {4073"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4074},4075"8": {4076"name": "comment.block.cpp"4077},4078"9": {4079"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4080},4081"10": {4082"name": "meta.template.call.cpp",4083"patterns": [4084{4085"include": "#template_call_range_helper"4086}4087]4088},4089"11": {},4090"12": {4091"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4092},4093"13": {4094"name": "comment.block.cpp"4095},4096"14": {4097"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4098},4099"15": {4100"name": "punctuation.section.arguments.begin.bracket.round.function.call.cpp"4101}4102},4103"endCaptures": {4104"0": {4105"name": "punctuation.section.arguments.end.bracket.round.function.call.cpp"4106}4107},4108"patterns": [4109{4110"include": "#evaluation_context"4111}4112]4113}4114]4115},4116"function_definition": {4117"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))(?=\\()",4118"end": "(?:(?<=\\}|%>|\\?\\?>)|(?=[;>\\[\\]=]))|(?=\\\\end\\{(?:minted|cppcode)\\})",4119"beginCaptures": {4120"0": {4121"name": "meta.head.function.definition.cpp"4122},4123"1": {4124"name": "storage.type.template.cpp"4125},4126"2": {4127"patterns": [4128{4129"include": "#inline_comment"4130}4131]4132},4133"3": {4134"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4135},4136"4": {4137"name": "comment.block.cpp"4138},4139"5": {4140"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4141},4142"6": {4143"patterns": [4144{4145"include": "#attributes_context"4146},4147{4148"include": "#number_literal"4149}4150]4151},4152"7": {4153"patterns": [4154{4155"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))",4156"captures": {4157"1": {4158"name": "storage.modifier.$1.cpp"4159},4160"2": {4161"patterns": [4162{4163"include": "#inline_comment"4164}4165]4166},4167"3": {4168"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4169},4170"4": {4171"name": "comment.block.cpp"4172},4173"5": {4174"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4175}4176}4177}4178]4179},4180"8": {4181"name": "storage.modifier.$8.cpp"4182},4183"9": {4184"patterns": [4185{4186"include": "#inline_comment"4187}4188]4189},4190"10": {4191"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4192},4193"11": {4194"name": "comment.block.cpp"4195},4196"12": {4197"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4198},4199"13": {4200"name": "meta.qualified-type.cpp",4201"patterns": [4202{4203"match": "::",4204"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"4205},4206{4207"match": "(?<!\\w)(?:struct|class|union|enum)(?!\\w)",4208"name": "storage.type.$0.cpp"4209},4210{4211"include": "#attributes_context"4212},4213{4214"include": "#storage_types"4215},4216{4217"include": "#number_literal"4218},4219{4220"include": "#string_context"4221},4222{4223"include": "#comma"4224},4225{4226"include": "#scope_resolution_inner_generated"4227},4228{4229"include": "#template_call_range_helper"4230},4231{4232"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}))*",4233"name": "entity.name.type.cpp"4234}4235]4236},4237"14": {4238"patterns": [4239{4240"include": "#attributes_context"4241},4242{4243"include": "#number_literal"4244}4245]4246},4247"15": {4248"patterns": [4249{4250"include": "#inline_comment"4251}4252]4253},4254"16": {4255"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4256},4257"17": {4258"name": "comment.block.cpp"4259},4260"18": {4261"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4262},4263"19": {4264"patterns": [4265{4266"include": "#inline_comment"4267}4268]4269},4270"20": {4271"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4272},4273"21": {4274"name": "comment.block.cpp"4275},4276"22": {4277"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4278},4279"23": {4280"patterns": [4281{4282"match": "::",4283"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"4284},4285{4286"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)",4287"name": "entity.name.scope-resolution.type.cpp"4288},4289{4290"include": "#template_call_range_helper"4291}4292]4293},4294"24": {4295"patterns": [4296{4297"include": "#template_call_range_helper"4298}4299]4300},4301"25": {},4302"26": {4303"patterns": [4304{4305"include": "#inline_comment"4306}4307]4308},4309"27": {4310"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4311},4312"28": {4313"name": "comment.block.cpp"4314},4315"29": {4316"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4317},4318"30": {},4319"31": {4320"patterns": [4321{4322"match": "\\*",4323"name": "storage.modifier.pointer.cpp"4324},4325{4326"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",4327"captures": {4328"1": {4329"patterns": [4330{4331"include": "#inline_comment"4332}4333]4334},4335"2": {4336"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4337},4338"3": {4339"name": "comment.block.cpp"4340},4341"4": {4342"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4343}4344},4345"name": "invalid.illegal.reference-type.cpp"4346},4347{4348"match": "\\&",4349"name": "storage.modifier.reference.cpp"4350}4351]4352},4353"32": {4354"patterns": [4355{4356"include": "#inline_comment"4357}4358]4359},4360"33": {4361"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4362},4363"34": {4364"name": "comment.block.cpp"4365},4366"35": {4367"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4368},4369"36": {4370"patterns": [4371{4372"include": "#inline_comment"4373}4374]4375},4376"37": {4377"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4378},4379"38": {4380"name": "comment.block.cpp"4381},4382"39": {4383"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4384},4385"40": {4386"patterns": [4387{4388"include": "#inline_comment"4389}4390]4391},4392"41": {4393"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4394},4395"42": {4396"name": "comment.block.cpp"4397},4398"43": {4399"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4400},4401"44": {4402"name": "storage.type.modifier.calling-convention.cpp"4403},4404"45": {4405"patterns": [4406{4407"include": "#inline_comment"4408}4409]4410},4411"46": {4412"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4413},4414"47": {4415"name": "comment.block.cpp"4416},4417"48": {4418"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4419},4420"49": {4421"patterns": [4422{4423"include": "#scope_resolution_function_definition_inner_generated"4424}4425]4426},4427"50": {4428"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.definition.cpp"4429},4430"51": {4431"patterns": [4432{4433"include": "#template_call_range_helper"4434}4435]4436},4437"52": {},4438"53": {4439"name": "entity.name.function.definition.cpp"4440},4441"54": {4442"patterns": [4443{4444"include": "#inline_comment"4445}4446]4447},4448"55": {4449"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4450},4451"56": {4452"name": "comment.block.cpp"4453},4454"57": {4455"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4456}4457},4458"endCaptures": {},4459"name": "meta.function.definition.cpp",4460"patterns": [4461{4462"begin": "\\G ?",4463"end": "(?:\\{|<%|\\?\\?<|(?=;))|(?=\\\\end\\{(?:minted|cppcode)\\})",4464"beginCaptures": {},4465"endCaptures": {4466"0": {4467"name": "punctuation.section.block.begin.bracket.curly.function.definition.cpp"4468}4469},4470"name": "meta.head.function.definition.cpp",4471"patterns": [4472{4473"include": "#ever_present_context"4474},4475{4476"begin": "\\(",4477"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",4478"beginCaptures": {4479"0": {4480"name": "punctuation.section.parameters.begin.bracket.round.cpp"4481}4482},4483"endCaptures": {4484"0": {4485"name": "punctuation.section.parameters.end.bracket.round.cpp"4486}4487},4488"contentName": "meta.function.definition.parameters",4489"patterns": [4490{4491"include": "#ever_present_context"4492},4493{4494"include": "#parameter_or_maybe_value"4495},4496{4497"include": "#comma"4498},4499{4500"include": "#evaluation_context"4501}4502]4503},4504{4505"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<:.]))",4506"captures": {4507"1": {4508"name": "punctuation.definition.function.return-type.cpp"4509},4510"2": {4511"patterns": [4512{4513"include": "#inline_comment"4514}4515]4516},4517"3": {4518"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4519},4520"4": {4521"name": "comment.block.cpp"4522},4523"5": {4524"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4525},4526"6": {4527"name": "meta.qualified-type.cpp",4528"patterns": [4529{4530"match": "::",4531"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"4532},4533{4534"match": "(?<!\\w)(?:struct|class|union|enum)(?!\\w)",4535"name": "storage.type.$0.cpp"4536},4537{4538"include": "#attributes_context"4539},4540{4541"include": "#storage_types"4542},4543{4544"include": "#number_literal"4545},4546{4547"include": "#string_context"4548},4549{4550"include": "#comma"4551},4552{4553"include": "#scope_resolution_inner_generated"4554},4555{4556"include": "#template_call_range_helper"4557},4558{4559"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}))*",4560"name": "entity.name.type.cpp"4561}4562]4563},4564"7": {4565"patterns": [4566{4567"include": "#attributes_context"4568},4569{4570"include": "#number_literal"4571}4572]4573},4574"8": {4575"patterns": [4576{4577"include": "#inline_comment"4578}4579]4580},4581"9": {4582"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4583},4584"10": {4585"name": "comment.block.cpp"4586},4587"11": {4588"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4589},4590"12": {4591"patterns": [4592{4593"include": "#inline_comment"4594}4595]4596},4597"13": {4598"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4599},4600"14": {4601"name": "comment.block.cpp"4602},4603"15": {4604"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4605},4606"16": {4607"patterns": [4608{4609"match": "::",4610"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"4611},4612{4613"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)",4614"name": "entity.name.scope-resolution.type.cpp"4615},4616{4617"include": "#template_call_range_helper"4618}4619]4620},4621"17": {4622"patterns": [4623{4624"include": "#template_call_range_helper"4625}4626]4627},4628"18": {},4629"19": {4630"patterns": [4631{4632"include": "#inline_comment"4633}4634]4635},4636"20": {4637"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4638},4639"21": {4640"name": "comment.block.cpp"4641},4642"22": {4643"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4644},4645"23": {}4646}4647},4648{4649"include": "$self"4650}4651]4652},4653{4654"begin": "(?<=\\{|<%|\\?\\?<)",4655"end": "\\}|%>|\\?\\?>|(?=\\\\end\\{(?:minted|cppcode)\\})",4656"beginCaptures": {},4657"endCaptures": {4658"0": {4659"name": "punctuation.section.block.end.bracket.curly.function.definition.cpp"4660}4661},4662"name": "meta.body.function.definition.cpp",4663"patterns": [4664{4665"include": "#function_body_context"4666}4667]4668},4669{4670"begin": "(?<=\\}|%>|\\?\\?>)[\\s]*",4671"end": "[\\s]*(?=;)|(?=\\\\end\\{(?:minted|cppcode)\\})",4672"beginCaptures": {},4673"endCaptures": {},4674"name": "meta.tail.function.definition.cpp",4675"patterns": [4676{4677"include": "$self"4678}4679]4680}4681]4682},4683"function_parameter_context": {4684"patterns": [4685{4686"include": "#ever_present_context"4687},4688{4689"include": "#parameter"4690},4691{4692"include": "#comma"4693}4694]4695},4696"function_pointer": {4697"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+)?(\\()",4698"end": "(\\))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(?:((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:override|volatile|noexcept|final|const)(?!\\w)))+(?=\\s*(?:\\{|;|\\n|\\r|=))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?(?=[{=,);>]|\\n)(?!\\()|(?=\\\\end\\{(?:minted|cppcode)\\})",4699"beginCaptures": {4700"1": {4701"name": "meta.qualified-type.cpp",4702"patterns": [4703{4704"match": "::",4705"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"4706},4707{4708"match": "(?<!\\w)(?:struct|class|union|enum)(?!\\w)",4709"name": "storage.type.$0.cpp"4710},4711{4712"include": "#attributes_context"4713},4714{4715"include": "#storage_types"4716},4717{4718"include": "#number_literal"4719},4720{4721"include": "#string_context"4722},4723{4724"include": "#comma"4725},4726{4727"include": "#scope_resolution_inner_generated"4728},4729{4730"include": "#template_call_range_helper"4731},4732{4733"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}))*",4734"name": "entity.name.type.cpp"4735}4736]4737},4738"2": {4739"patterns": [4740{4741"include": "#attributes_context"4742},4743{4744"include": "#number_literal"4745}4746]4747},4748"3": {4749"patterns": [4750{4751"include": "#inline_comment"4752}4753]4754},4755"4": {4756"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4757},4758"5": {4759"name": "comment.block.cpp"4760},4761"6": {4762"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4763},4764"7": {4765"patterns": [4766{4767"include": "#inline_comment"4768}4769]4770},4771"8": {4772"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4773},4774"9": {4775"name": "comment.block.cpp"4776},4777"10": {4778"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4779},4780"11": {4781"patterns": [4782{4783"match": "::",4784"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"4785},4786{4787"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)",4788"name": "entity.name.scope-resolution.type.cpp"4789},4790{4791"include": "#template_call_range_helper"4792}4793]4794},4795"12": {4796"patterns": [4797{4798"include": "#template_call_range_helper"4799}4800]4801},4802"13": {},4803"14": {4804"patterns": [4805{4806"include": "#inline_comment"4807}4808]4809},4810"15": {4811"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4812},4813"16": {4814"name": "comment.block.cpp"4815},4816"17": {4817"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4818},4819"18": {},4820"19": {4821"patterns": [4822{4823"match": "\\*",4824"name": "storage.modifier.pointer.cpp"4825},4826{4827"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",4828"captures": {4829"1": {4830"patterns": [4831{4832"include": "#inline_comment"4833}4834]4835},4836"2": {4837"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4838},4839"3": {4840"name": "comment.block.cpp"4841},4842"4": {4843"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4844}4845},4846"name": "invalid.illegal.reference-type.cpp"4847},4848{4849"match": "\\&",4850"name": "storage.modifier.reference.cpp"4851}4852]4853},4854"20": {4855"patterns": [4856{4857"include": "#inline_comment"4858}4859]4860},4861"21": {4862"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4863},4864"22": {4865"name": "comment.block.cpp"4866},4867"23": {4868"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4869},4870"24": {4871"patterns": [4872{4873"include": "#inline_comment"4874}4875]4876},4877"25": {4878"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4879},4880"26": {4881"name": "comment.block.cpp"4882},4883"27": {4884"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4885},4886"28": {4887"patterns": [4888{4889"include": "#inline_comment"4890}4891]4892},4893"29": {4894"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4895},4896"30": {4897"name": "comment.block.cpp"4898},4899"31": {4900"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4901},4902"32": {4903"name": "punctuation.section.parens.begin.bracket.round.function.pointer.cpp"4904},4905"33": {4906"name": "punctuation.definition.function.pointer.dereference.cpp"4907},4908"34": {4909"name": "variable.other.definition.pointer.function.cpp"4910},4911"35": {4912"name": "punctuation.definition.begin.bracket.square.cpp"4913},4914"36": {4915"patterns": [4916{4917"include": "#evaluation_context"4918}4919]4920},4921"37": {4922"name": "punctuation.definition.end.bracket.square.cpp"4923},4924"38": {4925"name": "punctuation.section.parens.end.bracket.round.function.pointer.cpp"4926},4927"39": {4928"name": "punctuation.section.parameters.begin.bracket.round.function.pointer.cpp"4929}4930},4931"endCaptures": {4932"1": {4933"name": "punctuation.section.parameters.end.bracket.round.function.pointer.cpp"4934},4935"2": {4936"patterns": [4937{4938"include": "#inline_comment"4939}4940]4941},4942"3": {4943"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4944},4945"4": {4946"name": "comment.block.cpp"4947},4948"5": {4949"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4950},4951"6": {4952"patterns": [4953{4954"include": "#inline_comment"4955}4956]4957},4958"7": {4959"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4960},4961"8": {4962"name": "comment.block.cpp"4963},4964"9": {4965"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4966},4967"10": {4968"name": "storage.modifier.specifier.functional.post-parameters.$10.cpp"4969},4970"11": {4971"patterns": [4972{4973"include": "#inline_comment"4974}4975]4976},4977"12": {4978"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"4979},4980"13": {4981"name": "comment.block.cpp"4982},4983"14": {4984"name": "comment.block.cpp punctuation.definition.comment.end.cpp"4985}4986},4987"patterns": [4988{4989"include": "#function_parameter_context"4990}4991]4992},4993"function_pointer_parameter": {4994"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+)?(\\()",4995"end": "(\\))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(?:((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:override|volatile|noexcept|final|const)(?!\\w)))+(?=\\s*(?:\\{|;|\\n|\\r|=))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?(?=[{=,);>]|\\n)(?!\\()|(?=\\\\end\\{(?:minted|cppcode)\\})",4996"beginCaptures": {4997"1": {4998"name": "meta.qualified-type.cpp",4999"patterns": [5000{5001"match": "::",5002"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"5003},5004{5005"match": "(?<!\\w)(?:struct|class|union|enum)(?!\\w)",5006"name": "storage.type.$0.cpp"5007},5008{5009"include": "#attributes_context"5010},5011{5012"include": "#storage_types"5013},5014{5015"include": "#number_literal"5016},5017{5018"include": "#string_context"5019},5020{5021"include": "#comma"5022},5023{5024"include": "#scope_resolution_inner_generated"5025},5026{5027"include": "#template_call_range_helper"5028},5029{5030"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}))*",5031"name": "entity.name.type.cpp"5032}5033]5034},5035"2": {5036"patterns": [5037{5038"include": "#attributes_context"5039},5040{5041"include": "#number_literal"5042}5043]5044},5045"3": {5046"patterns": [5047{5048"include": "#inline_comment"5049}5050]5051},5052"4": {5053"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5054},5055"5": {5056"name": "comment.block.cpp"5057},5058"6": {5059"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5060},5061"7": {5062"patterns": [5063{5064"include": "#inline_comment"5065}5066]5067},5068"8": {5069"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5070},5071"9": {5072"name": "comment.block.cpp"5073},5074"10": {5075"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5076},5077"11": {5078"patterns": [5079{5080"match": "::",5081"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"5082},5083{5084"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)",5085"name": "entity.name.scope-resolution.type.cpp"5086},5087{5088"include": "#template_call_range_helper"5089}5090]5091},5092"12": {5093"patterns": [5094{5095"include": "#template_call_range_helper"5096}5097]5098},5099"13": {},5100"14": {5101"patterns": [5102{5103"include": "#inline_comment"5104}5105]5106},5107"15": {5108"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5109},5110"16": {5111"name": "comment.block.cpp"5112},5113"17": {5114"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5115},5116"18": {},5117"19": {5118"patterns": [5119{5120"match": "\\*",5121"name": "storage.modifier.pointer.cpp"5122},5123{5124"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",5125"captures": {5126"1": {5127"patterns": [5128{5129"include": "#inline_comment"5130}5131]5132},5133"2": {5134"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5135},5136"3": {5137"name": "comment.block.cpp"5138},5139"4": {5140"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5141}5142},5143"name": "invalid.illegal.reference-type.cpp"5144},5145{5146"match": "\\&",5147"name": "storage.modifier.reference.cpp"5148}5149]5150},5151"20": {5152"patterns": [5153{5154"include": "#inline_comment"5155}5156]5157},5158"21": {5159"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5160},5161"22": {5162"name": "comment.block.cpp"5163},5164"23": {5165"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5166},5167"24": {5168"patterns": [5169{5170"include": "#inline_comment"5171}5172]5173},5174"25": {5175"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5176},5177"26": {5178"name": "comment.block.cpp"5179},5180"27": {5181"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5182},5183"28": {5184"patterns": [5185{5186"include": "#inline_comment"5187}5188]5189},5190"29": {5191"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5192},5193"30": {5194"name": "comment.block.cpp"5195},5196"31": {5197"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5198},5199"32": {5200"name": "punctuation.section.parens.begin.bracket.round.function.pointer.cpp"5201},5202"33": {5203"name": "punctuation.definition.function.pointer.dereference.cpp"5204},5205"34": {5206"name": "variable.parameter.pointer.function.cpp"5207},5208"35": {5209"name": "punctuation.definition.begin.bracket.square.cpp"5210},5211"36": {5212"patterns": [5213{5214"include": "#evaluation_context"5215}5216]5217},5218"37": {5219"name": "punctuation.definition.end.bracket.square.cpp"5220},5221"38": {5222"name": "punctuation.section.parens.end.bracket.round.function.pointer.cpp"5223},5224"39": {5225"name": "punctuation.section.parameters.begin.bracket.round.function.pointer.cpp"5226}5227},5228"endCaptures": {5229"1": {5230"name": "punctuation.section.parameters.end.bracket.round.function.pointer.cpp"5231},5232"2": {5233"patterns": [5234{5235"include": "#inline_comment"5236}5237]5238},5239"3": {5240"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5241},5242"4": {5243"name": "comment.block.cpp"5244},5245"5": {5246"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5247},5248"6": {5249"patterns": [5250{5251"include": "#inline_comment"5252}5253]5254},5255"7": {5256"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5257},5258"8": {5259"name": "comment.block.cpp"5260},5261"9": {5262"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5263},5264"10": {5265"name": "storage.modifier.specifier.functional.post-parameters.$10.cpp"5266},5267"11": {5268"patterns": [5269{5270"include": "#inline_comment"5271}5272]5273},5274"12": {5275"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5276},5277"13": {5278"name": "comment.block.cpp"5279},5280"14": {5281"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5282}5283},5284"patterns": [5285{5286"include": "#function_parameter_context"5287}5288]5289},5290"functional_specifiers_pre_parameters": {5291"match": "(?<!\\w)(?:constexpr|consteval|explicit|mutable|virtual|inline|friend)(?!\\w)",5292"name": "storage.modifier.specifier.functional.pre-parameters.$0.cpp"5293},5294"gcc_attributes": {5295"begin": "__attribute(?:__)?\\s*\\(\\s*\\(",5296"end": "\\)\\s*\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",5297"beginCaptures": {5298"0": {5299"name": "punctuation.section.attribute.begin.cpp"5300}5301},5302"endCaptures": {5303"0": {5304"name": "punctuation.section.attribute.end.cpp"5305}5306},5307"name": "support.other.attribute.cpp",5308"patterns": [5309{5310"include": "#attributes_context"5311},5312{5313"begin": "\\(",5314"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",5315"beginCaptures": {},5316"endCaptures": {},5317"patterns": [5318{5319"include": "#attributes_context"5320},5321{5322"include": "#string_context"5323},5324{5325"include": "#ever_present_context"5326}5327]5328},5329{5330"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))",5331"captures": {5332"1": {5333"name": "keyword.other.using.directive.cpp"5334},5335"2": {5336"name": "entity.name.namespace.cpp"5337}5338}5339},5340{5341"match": ",",5342"name": "punctuation.separator.attribute.cpp"5343},5344{5345"match": ":",5346"name": "punctuation.accessor.attribute.cpp"5347},5348{5349"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)(?=::)",5350"name": "entity.name.namespace.cpp"5351},5352{5353"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)",5354"name": "entity.other.attribute.$0.cpp"5355},5356{5357"include": "#number_literal"5358},5359{5360"include": "#ever_present_context"5361}5362]5363},5364"goto_statement": {5365"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}))*)",5366"captures": {5367"1": {5368"patterns": [5369{5370"include": "#inline_comment"5371}5372]5373},5374"2": {5375"patterns": [5376{5377"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",5378"captures": {5379"1": {5380"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5381},5382"2": {5383"name": "comment.block.cpp"5384},5385"3": {5386"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5387}5388}5389}5390]5391},5392"3": {5393"name": "keyword.control.goto.cpp"5394},5395"4": {5396"patterns": [5397{5398"include": "#inline_comment"5399}5400]5401},5402"5": {5403"patterns": [5404{5405"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",5406"captures": {5407"1": {5408"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5409},5410"2": {5411"name": "comment.block.cpp"5412},5413"3": {5414"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5415}5416}5417}5418]5419},5420"6": {5421"name": "entity.name.label.call.cpp"5422}5423}5424},5425"identifier": {5426"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}))*"5427},5428"include": {5429"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|$)|(?=(?:\\/\\/|;))))",5430"captures": {5431"1": {5432"patterns": [5433{5434"include": "#inline_comment"5435}5436]5437},5438"2": {5439"patterns": [5440{5441"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",5442"captures": {5443"1": {5444"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5445},5446"2": {5447"name": "comment.block.cpp"5448},5449"3": {5450"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5451}5452}5453}5454]5455},5456"3": {5457"name": "keyword.control.directive.$5.cpp"5458},5459"4": {5460"name": "punctuation.definition.directive.cpp"5461},5462"6": {5463"name": "string.quoted.other.lt-gt.include.cpp"5464},5465"7": {5466"name": "punctuation.definition.string.begin.cpp"5467},5468"8": {5469"name": "punctuation.definition.string.end.cpp"5470},5471"9": {5472"patterns": [5473{5474"include": "#inline_comment"5475}5476]5477},5478"10": {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"11": {5497"name": "string.quoted.double.include.cpp"5498},5499"12": {5500"name": "punctuation.definition.string.begin.cpp"5501},5502"13": {5503"name": "punctuation.definition.string.end.cpp"5504},5505"14": {5506"patterns": [5507{5508"include": "#inline_comment"5509}5510]5511},5512"15": {5513"patterns": [5514{5515"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",5516"captures": {5517"1": {5518"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5519},5520"2": {5521"name": "comment.block.cpp"5522},5523"3": {5524"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5525}5526}5527}5528]5529},5530"16": {5531"name": "entity.name.other.preprocessor.macro.include.cpp"5532},5533"17": {5534"patterns": [5535{5536"include": "#inline_comment"5537}5538]5539},5540"18": {5541"patterns": [5542{5543"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",5544"captures": {5545"1": {5546"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5547},5548"2": {5549"name": "comment.block.cpp"5550},5551"3": {5552"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5553}5554}5555}5556]5557},5558"19": {5559"patterns": [5560{5561"include": "#inline_comment"5562}5563]5564},5565"20": {5566"patterns": [5567{5568"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",5569"captures": {5570"1": {5571"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5572},5573"2": {5574"name": "comment.block.cpp"5575},5576"3": {5577"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5578}5579}5580}5581]5582},5583"21": {5584"patterns": [5585{5586"include": "#inline_comment"5587}5588]5589},5590"22": {5591"patterns": [5592{5593"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",5594"captures": {5595"1": {5596"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5597},5598"2": {5599"name": "comment.block.cpp"5600},5601"3": {5602"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5603}5604}5605}5606]5607}5608},5609"name": "meta.preprocessor.include.cpp"5610},5611"inheritance_context": {5612"patterns": [5613{5614"include": "#ever_present_context"5615},5616{5617"match": ",",5618"name": "punctuation.separator.delimiter.comma.inheritance.cpp"5619},5620{5621"match": "(?<!\\w)(?:protected|private|public)(?!\\w)",5622"name": "storage.type.modifier.access.$0.cpp"5623},5624{5625"match": "(?<!\\w)virtual(?!\\w)",5626"name": "storage.type.modifier.virtual.cpp"5627},5628{5629"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<:.]))",5630"captures": {5631"1": {5632"name": "meta.qualified-type.cpp",5633"patterns": [5634{5635"match": "::",5636"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"5637},5638{5639"match": "(?<!\\w)(?:struct|class|union|enum)(?!\\w)",5640"name": "storage.type.$0.cpp"5641},5642{5643"include": "#attributes_context"5644},5645{5646"include": "#storage_types"5647},5648{5649"include": "#number_literal"5650},5651{5652"include": "#string_context"5653},5654{5655"include": "#comma"5656},5657{5658"include": "#scope_resolution_inner_generated"5659},5660{5661"include": "#template_call_range_helper"5662},5663{5664"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}))*",5665"name": "entity.name.type.cpp"5666}5667]5668},5669"2": {5670"patterns": [5671{5672"include": "#attributes_context"5673},5674{5675"include": "#number_literal"5676}5677]5678},5679"3": {5680"patterns": [5681{5682"include": "#inline_comment"5683}5684]5685},5686"4": {5687"patterns": [5688{5689"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",5690"captures": {5691"1": {5692"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5693},5694"2": {5695"name": "comment.block.cpp"5696},5697"3": {5698"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5699}5700}5701}5702]5703},5704"5": {5705"patterns": [5706{5707"include": "#inline_comment"5708}5709]5710},5711"6": {5712"patterns": [5713{5714"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",5715"captures": {5716"1": {5717"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5718},5719"2": {5720"name": "comment.block.cpp"5721},5722"3": {5723"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5724}5725}5726}5727]5728},5729"7": {5730"patterns": [5731{5732"match": "::",5733"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"5734},5735{5736"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)",5737"name": "entity.name.scope-resolution.type.cpp"5738},5739{5740"include": "#template_call_range_helper"5741}5742]5743},5744"8": {5745"patterns": [5746{5747"include": "#template_call_range_helper"5748}5749]5750},5751"9": {},5752"10": {5753"patterns": [5754{5755"include": "#inline_comment"5756}5757]5758},5759"11": {5760"patterns": [5761{5762"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",5763"captures": {5764"1": {5765"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5766},5767"2": {5768"name": "comment.block.cpp"5769},5770"3": {5771"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5772}5773}5774}5775]5776},5777"12": {}5778}5779}5780]5781},5782"inline_builtin_storage_type": {5783"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)",5784"captures": {5785"1": {5786"name": "storage.type.primitive.cpp storage.type.built-in.primitive.cpp"5787},5788"2": {5789"name": "storage.type.cpp storage.type.built-in.cpp"5790},5791"3": {5792"name": "support.type.posix-reserved.pthread.cpp support.type.built-in.posix-reserved.pthread.cpp"5793},5794"4": {5795"name": "support.type.posix-reserved.cpp support.type.built-in.posix-reserved.cpp"5796}5797}5798},5799"inline_comment": {5800"match": "(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))",5801"captures": {5802"1": {5803"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5804},5805"2": {5806"name": "comment.block.cpp"5807},5808"3": {5809"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5810}5811}5812},5813"invalid_comment_end": {5814"match": "\\*\\/",5815"name": "invalid.illegal.unexpected.punctuation.definition.comment.end.cpp"5816},5817"label": {5818"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))(:)(?!:)",5819"captures": {5820"1": {5821"patterns": [5822{5823"include": "#inline_comment"5824}5825]5826},5827"2": {5828"patterns": [5829{5830"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",5831"captures": {5832"1": {5833"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5834},5835"2": {5836"name": "comment.block.cpp"5837},5838"3": {5839"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5840}5841}5842}5843]5844},5845"3": {5846"name": "entity.name.label.cpp"5847},5848"4": {5849"patterns": [5850{5851"include": "#inline_comment"5852}5853]5854},5855"5": {5856"patterns": [5857{5858"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",5859"captures": {5860"1": {5861"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5862},5863"2": {5864"name": "comment.block.cpp"5865},5866"3": {5867"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5868}5869}5870}5871]5872},5873"6": {5874"name": "punctuation.separator.label.cpp"5875}5876}5877},5878"lambdas": {5879"begin": "(?:(?<=[^\\s]|^)(?<![\\w\\]\\)\\[\\*&\">])|(?<=\\Wreturn|^return))(?:\\s+)?(\\[(?!\\[| *+\"| *+\\d))((?:[^\\[\\]]|((?<!\\[)\\[(?!\\[)(?:[^\\[\\]]*+\\g<3>?)++\\]))*+)(\\](?!((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))[\\[\\];=]))",5880"end": "(?<=[;}])|(?=\\\\end\\{(?:minted|cppcode)\\})",5881"beginCaptures": {5882"1": {5883"name": "punctuation.definition.capture.begin.lambda.cpp"5884},5885"2": {5886"name": "meta.lambda.capture.cpp",5887"patterns": [5888{5889"include": "#the_this_keyword"5890},5891{5892"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|$)|(,))|(\\=))",5893"captures": {5894"1": {5895"name": "variable.parameter.capture.cpp"5896},5897"2": {5898"patterns": [5899{5900"include": "#inline_comment"5901}5902]5903},5904"3": {5905"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5906},5907"4": {5908"name": "comment.block.cpp"5909},5910"5": {5911"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5912},5913"6": {5914"name": "punctuation.separator.delimiter.comma.cpp"5915},5916"7": {5917"name": "keyword.operator.assignment.cpp"5918}5919}5920},5921{5922"include": "#evaluation_context"5923}5924]5925},5926"3": {},5927"4": {5928"name": "punctuation.definition.capture.end.lambda.cpp"5929},5930"5": {5931"patterns": [5932{5933"include": "#inline_comment"5934}5935]5936},5937"6": {5938"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"5939},5940"7": {5941"name": "comment.block.cpp"5942},5943"8": {5944"name": "comment.block.cpp punctuation.definition.comment.end.cpp"5945}5946},5947"endCaptures": {},5948"patterns": [5949{5950"begin": "\\(",5951"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",5952"beginCaptures": {5953"0": {5954"name": "punctuation.definition.parameters.begin.lambda.cpp"5955}5956},5957"endCaptures": {5958"0": {5959"name": "punctuation.definition.parameters.end.lambda.cpp"5960}5961},5962"name": "meta.function.definition.parameters.lambda.cpp",5963"patterns": [5964{5965"include": "#function_parameter_context"5966}5967]5968},5969{5970"match": "(?<!\\w)(?:constexpr|consteval|mutable)(?!\\w)",5971"name": "storage.modifier.lambda.$0.cpp"5972},5973{5974"begin": "->",5975"end": "(?=\\{)|(?=\\\\end\\{(?:minted|cppcode)\\})",5976"beginCaptures": {5977"0": {5978"name": "punctuation.definition.lambda.return-type.cpp"5979}5980},5981"endCaptures": {},5982"patterns": [5983{5984"include": "#comments"5985},5986{5987"match": "\\S+",5988"name": "storage.type.return-type.lambda.cpp"5989}5990]5991},5992{5993"begin": "\\{",5994"end": "\\}|(?=\\\\end\\{(?:minted|cppcode)\\})",5995"beginCaptures": {5996"0": {5997"name": "punctuation.section.block.begin.bracket.curly.lambda.cpp"5998}5999},6000"endCaptures": {6001"0": {6002"name": "punctuation.section.block.end.bracket.curly.lambda.cpp"6003}6004},6005"name": "meta.function.definition.body.lambda.cpp",6006"patterns": [6007{6008"include": "#function_body_context"6009}6010]6011}6012]6013},6014"language_constants": {6015"match": "(?<!\\w)(?:nullptr|false|NULL|true)(?!\\w)",6016"name": "constant.language.$0.cpp"6017},6018"line": {6019"begin": "^((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(#)(?:\\s+)?line\\b",6020"end": "(?<!\\\\)(?:(?=\\n)|(?<=^\\n|[^\\\\]\\n)(?=$))|(?=\\\\end\\{(?:minted|cppcode)\\})",6021"beginCaptures": {6022"0": {6023"name": "keyword.control.directive.line.cpp"6024},6025"1": {6026"patterns": [6027{6028"include": "#inline_comment"6029}6030]6031},6032"2": {6033"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"6034},6035"3": {6036"name": "comment.block.cpp"6037},6038"4": {6039"name": "comment.block.cpp punctuation.definition.comment.end.cpp"6040},6041"5": {6042"name": "punctuation.definition.directive.cpp"6043}6044},6045"endCaptures": {},6046"name": "meta.preprocessor.line.cpp",6047"patterns": [6048{6049"include": "#string_context"6050},6051{6052"include": "#preprocessor_number_literal"6053},6054{6055"include": "#line_continuation_character"6056}6057]6058},6059"line_comment": {6060"begin": "\\s*+(\\/\\/)",6061"end": "(?<!\\\\)(?:(?=\\n)|(?<=^\\n|[^\\\\]\\n)(?=$))|(?=\\\\end\\{(?:minted|cppcode)\\})",6062"beginCaptures": {6063"1": {6064"name": "punctuation.definition.comment.cpp"6065}6066},6067"endCaptures": {},6068"name": "comment.line.double-slash.cpp",6069"patterns": [6070{6071"include": "#line_continuation_character"6072}6073]6074},6075"line_continuation_character": {6076"match": "\\\\\\n",6077"name": "constant.character.escape.line-continuation.cpp"6078},6079"macro": {6080"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))",6081"end": "(?<!\\\\)(?:(?=\\n)|(?<=^\\n|[^\\\\]\\n)(?=$))|(?=\\\\end\\{(?:minted|cppcode)\\})",6082"beginCaptures": {6083"1": {6084"name": "keyword.control.directive.define.cpp"6085},6086"2": {6087"patterns": [6088{6089"include": "#inline_comment"6090}6091]6092},6093"3": {6094"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"6095},6096"4": {6097"name": "comment.block.cpp"6098},6099"5": {6100"name": "comment.block.cpp punctuation.definition.comment.end.cpp"6101},6102"6": {6103"name": "punctuation.definition.directive.cpp"6104},6105"7": {6106"name": "entity.name.function.preprocessor.cpp"6107}6108},6109"endCaptures": {},6110"name": "meta.preprocessor.macro.cpp",6111"patterns": [6112{6113"match": "\\G(?:\\s+)?(\\()([^\\(]*)(\\))",6114"captures": {6115"1": {6116"name": "punctuation.definition.parameters.begin.preprocessor.cpp"6117},6118"2": {6119"name": "meta.function.preprocessor.parameters.cpp",6120"patterns": [6121{6122"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+)?",6123"captures": {6124"1": {6125"name": "variable.parameter.preprocessor.cpp"6126}6127}6128},6129{6130"match": ",",6131"name": "punctuation.separator.parameters.cpp"6132},6133{6134"match": "\\.\\.\\.",6135"name": "punctuation.vararg-ellipses.variable.parameter.preprocessor.cpp"6136}6137]6138},6139"3": {6140"name": "punctuation.definition.parameters.end.preprocessor.cpp"6141}6142}6143},6144{6145"include": "#macro_context"6146},6147{6148"include": "#macro_argument"6149}6150]6151},6152"macro_argument": {6153"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)",6154"name": "variable.other.macro.argument.cpp"6155},6156"macro_context": {6157"patterns": [6158{6159"include": "source.cpp.embedded.macro"6160}6161]6162},6163"macro_name": {6164"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)",6165"name": "entity.name.function.preprocessor.cpp"6166},6167"member_access": {6168"match": "(?:((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)this(?!\\w))|(?:(?:(?:(?:(?:(\\b[a-z0-9]+\\b)|(\\b[a-zA-Z0-9]+_[a-zA-Z0-9]*\\b))|(\\b[a-z]+[A-Z][a-zA-Z0-9]*\\b))|(\\b[A-Z][A-Z_0-9]*\\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+)?)(?:((?:\\.\\*|\\.))|((?:->\\*|->)))((?:(?:[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(?!\\())",6169"captures": {6170"1": {6171"patterns": [6172{6173"include": "#inline_comment"6174}6175]6176},6177"2": {6178"patterns": [6179{6180"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",6181"captures": {6182"1": {6183"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"6184},6185"2": {6186"name": "comment.block.cpp"6187},6188"3": {6189"name": "comment.block.cpp punctuation.definition.comment.end.cpp"6190}6191}6192}6193]6194},6195"3": {6196"name": "variable.language.this.cpp"6197},6198"4": {6199"name": "variable.lower-case.cpp variable.other.object.access.$4.cpp"6200},6201"5": {6202"name": "variable.snake-case.cpp variable.other.object.access.$5.cpp"6203},6204"6": {6205"name": "variable.camel-case.cpp variable.other.object.access.$6.cpp"6206},6207"7": {6208"name": "variable.upper-case.cpp variable.other.object.access.$7.cpp"6209},6210"8": {6211"name": "variable.other.unknown.$8.cpp"6212},6213"9": {6214"name": "punctuation.separator.dot-access.cpp"6215},6216"10": {6217"name": "punctuation.separator.pointer-access.cpp"6218},6219"11": {6220"patterns": [6221{6222"match": "(?<=(?:\\.\\*|\\.|->|->\\*))(?:\\s+)?(?:((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)this(?!\\w))|(?:(?:(?:(?:(?:(\\b[a-z0-9]+\\b)|(\\b[a-zA-Z0-9]+_[a-zA-Z0-9]*\\b))|(\\b[a-z]+[A-Z][a-zA-Z0-9]*\\b))|(\\b[A-Z][A-Z_0-9]*\\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+)?)(?:((?:\\.\\*|\\.))|((?:->\\*|->)))",6223"captures": {6224"1": {6225"patterns": [6226{6227"include": "#inline_comment"6228}6229]6230},6231"2": {6232"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"6233},6234"3": {6235"name": "comment.block.cpp"6236},6237"4": {6238"name": "comment.block.cpp punctuation.definition.comment.end.cpp"6239},6240"5": {6241"name": "variable.language.this.cpp"6242},6243"6": {6244"name": "variable.lower-case.cpp variable.other.object.property.cpp"6245},6246"7": {6247"name": "variable.snake-case.cpp variable.other.object.property.cpp"6248},6249"8": {6250"name": "variable.camel-case.cpp variable.other.object.property.cpp"6251},6252"9": {6253"name": "variable.upper-case.cpp variable.other.object.property.cpp"6254},6255"10": {6256"name": "variable.other.unknown.$10.cpp"6257},6258"11": {6259"name": "punctuation.separator.dot-access.cpp"6260},6261"12": {6262"name": "punctuation.separator.pointer-access.cpp"6263}6264}6265},6266{6267"match": "(?:((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)this(?!\\w))|(?:(?:(?:(?:(?:(\\b[a-z0-9]+\\b)|(\\b[a-zA-Z0-9]+_[a-zA-Z0-9]*\\b))|(\\b[a-z]+[A-Z][a-zA-Z0-9]*\\b))|(\\b[A-Z][A-Z_0-9]*\\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+)?)(?:((?:\\.\\*|\\.))|((?:->\\*|->)))",6268"captures": {6269"1": {6270"patterns": [6271{6272"include": "#inline_comment"6273}6274]6275},6276"2": {6277"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"6278},6279"3": {6280"name": "comment.block.cpp"6281},6282"4": {6283"name": "comment.block.cpp punctuation.definition.comment.end.cpp"6284},6285"5": {6286"name": "variable.language.this.cpp"6287},6288"6": {6289"name": "variable.lower-case.cpp variable.other.object.access.$6.cpp"6290},6291"7": {6292"name": "variable.snake-case.cpp variable.other.object.access.$7.cpp"6293},6294"8": {6295"name": "variable.camel-case.cpp variable.other.object.access.$8.cpp"6296},6297"9": {6298"name": "variable.upper-case.cpp variable.other.object.access.$9.cpp"6299},6300"10": {6301"name": "variable.other.unknown.$10.cpp"6302},6303"11": {6304"name": "punctuation.separator.dot-access.cpp"6305},6306"12": {6307"name": "punctuation.separator.pointer-access.cpp"6308}6309}6310},6311{6312"include": "#member_access"6313},6314{6315"include": "#method_access"6316}6317]6318},6319"12": {6320"name": "variable.other.property.cpp"6321}6322}6323},6324"memory_operators": {6325"match": "((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?:(?:(delete)(?:\\s+)?(\\[\\])|(delete))|(new))(?!\\w))",6326"captures": {6327"1": {6328"patterns": [6329{6330"include": "#inline_comment"6331}6332]6333},6334"2": {6335"patterns": [6336{6337"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",6338"captures": {6339"1": {6340"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"6341},6342"2": {6343"name": "comment.block.cpp"6344},6345"3": {6346"name": "comment.block.cpp punctuation.definition.comment.end.cpp"6347}6348}6349}6350]6351},6352"3": {6353"name": "keyword.operator.wordlike.cpp"6354},6355"4": {6356"name": "keyword.operator.delete.array.cpp"6357},6358"5": {6359"name": "keyword.operator.delete.array.bracket.cpp"6360},6361"6": {6362"name": "keyword.operator.delete.cpp"6363},6364"7": {6365"name": "keyword.operator.new.cpp"6366}6367}6368},6369"method_access": {6370"begin": "(?:((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)this(?!\\w))|(?:(?:(?:(?:(?:(\\b[a-z0-9]+\\b)|(\\b[a-zA-Z0-9]+_[a-zA-Z0-9]*\\b))|(\\b[a-z]+[A-Z][a-zA-Z0-9]*\\b))|(\\b[A-Z][A-Z_0-9]*\\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+)?)(?:((?:\\.\\*|\\.))|((?:->\\*|->)))((?:(?:[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+)?(\\()",6371"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",6372"beginCaptures": {6373"1": {6374"patterns": [6375{6376"include": "#inline_comment"6377}6378]6379},6380"2": {6381"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"6382},6383"3": {6384"name": "comment.block.cpp"6385},6386"4": {6387"name": "comment.block.cpp punctuation.definition.comment.end.cpp"6388},6389"5": {6390"name": "variable.language.this.cpp"6391},6392"6": {6393"name": "variable.lower-case.cpp variable.other.object.access.$6.cpp"6394},6395"7": {6396"name": "variable.snake-case.cpp variable.other.object.access.$7.cpp"6397},6398"8": {6399"name": "variable.camel-case.cpp variable.other.object.access.$8.cpp"6400},6401"9": {6402"name": "variable.upper-case.cpp variable.other.object.access.$9.cpp"6403},6404"10": {6405"name": "variable.other.unknown.$10.cpp"6406},6407"11": {6408"name": "punctuation.separator.dot-access.cpp"6409},6410"12": {6411"name": "punctuation.separator.pointer-access.cpp"6412},6413"13": {6414"patterns": [6415{6416"match": "(?<=(?:\\.\\*|\\.|->|->\\*))(?:\\s+)?(?:((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)this(?!\\w))|(?:(?:(?:(?:(?:(\\b[a-z0-9]+\\b)|(\\b[a-zA-Z0-9]+_[a-zA-Z0-9]*\\b))|(\\b[a-z]+[A-Z][a-zA-Z0-9]*\\b))|(\\b[A-Z][A-Z_0-9]*\\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+)?)(?:((?:\\.\\*|\\.))|((?:->\\*|->)))",6417"captures": {6418"1": {6419"patterns": [6420{6421"include": "#inline_comment"6422}6423]6424},6425"2": {6426"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"6427},6428"3": {6429"name": "comment.block.cpp"6430},6431"4": {6432"name": "comment.block.cpp punctuation.definition.comment.end.cpp"6433},6434"5": {6435"name": "variable.language.this.cpp"6436},6437"6": {6438"name": "variable.lower-case.cpp variable.other.object.property.cpp"6439},6440"7": {6441"name": "variable.snake-case.cpp variable.other.object.property.cpp"6442},6443"8": {6444"name": "variable.camel-case.cpp variable.other.object.property.cpp"6445},6446"9": {6447"name": "variable.upper-case.cpp variable.other.object.property.cpp"6448},6449"10": {6450"name": "variable.other.unknown.$10.cpp"6451},6452"11": {6453"name": "punctuation.separator.dot-access.cpp"6454},6455"12": {6456"name": "punctuation.separator.pointer-access.cpp"6457}6458}6459},6460{6461"match": "(?:((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)this(?!\\w))|(?:(?:(?:(?:(?:(\\b[a-z0-9]+\\b)|(\\b[a-zA-Z0-9]+_[a-zA-Z0-9]*\\b))|(\\b[a-z]+[A-Z][a-zA-Z0-9]*\\b))|(\\b[A-Z][A-Z_0-9]*\\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+)?)(?:((?:\\.\\*|\\.))|((?:->\\*|->)))",6462"captures": {6463"1": {6464"patterns": [6465{6466"include": "#inline_comment"6467}6468]6469},6470"2": {6471"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"6472},6473"3": {6474"name": "comment.block.cpp"6475},6476"4": {6477"name": "comment.block.cpp punctuation.definition.comment.end.cpp"6478},6479"5": {6480"name": "variable.language.this.cpp"6481},6482"6": {6483"name": "variable.lower-case.cpp variable.other.object.access.$6.cpp"6484},6485"7": {6486"name": "variable.snake-case.cpp variable.other.object.access.$7.cpp"6487},6488"8": {6489"name": "variable.camel-case.cpp variable.other.object.access.$8.cpp"6490},6491"9": {6492"name": "variable.upper-case.cpp variable.other.object.access.$9.cpp"6493},6494"10": {6495"name": "variable.other.unknown.$10.cpp"6496},6497"11": {6498"name": "punctuation.separator.dot-access.cpp"6499},6500"12": {6501"name": "punctuation.separator.pointer-access.cpp"6502}6503}6504},6505{6506"include": "#member_access"6507},6508{6509"include": "#method_access"6510}6511]6512},6513"14": {6514"name": "entity.name.function.member.cpp"6515},6516"15": {6517"name": "punctuation.section.arguments.begin.bracket.round.function.member.cpp"6518}6519},6520"endCaptures": {6521"0": {6522"name": "punctuation.section.arguments.end.bracket.round.function.member.cpp"6523}6524},6525"patterns": [6526{6527"include": "#evaluation_context"6528}6529]6530},6531"misc_keywords": {6532"match": "((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:constinit|typedef|concept|export|module)(?!\\w))",6533"captures": {6534"1": {6535"patterns": [6536{6537"include": "#inline_comment"6538}6539]6540},6541"2": {6542"patterns": [6543{6544"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",6545"captures": {6546"1": {6547"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"6548},6549"2": {6550"name": "comment.block.cpp"6551},6552"3": {6553"name": "comment.block.cpp punctuation.definition.comment.end.cpp"6554}6555}6556}6557]6558},6559"3": {6560"name": "keyword.other.$3.cpp"6561}6562}6563},6564"ms_attributes": {6565"begin": "__declspec\\(",6566"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",6567"beginCaptures": {6568"0": {6569"name": "punctuation.section.attribute.begin.cpp"6570}6571},6572"endCaptures": {6573"0": {6574"name": "punctuation.section.attribute.end.cpp"6575}6576},6577"name": "support.other.attribute.cpp",6578"patterns": [6579{6580"include": "#attributes_context"6581},6582{6583"begin": "\\(",6584"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",6585"beginCaptures": {},6586"endCaptures": {},6587"patterns": [6588{6589"include": "#attributes_context"6590},6591{6592"include": "#string_context"6593},6594{6595"include": "#ever_present_context"6596}6597]6598},6599{6600"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))",6601"captures": {6602"1": {6603"name": "keyword.other.using.directive.cpp"6604},6605"2": {6606"name": "entity.name.namespace.cpp"6607}6608}6609},6610{6611"match": ",",6612"name": "punctuation.separator.attribute.cpp"6613},6614{6615"match": ":",6616"name": "punctuation.accessor.attribute.cpp"6617},6618{6619"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)(?=::)",6620"name": "entity.name.namespace.cpp"6621},6622{6623"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)",6624"name": "entity.other.attribute.$0.cpp"6625},6626{6627"include": "#number_literal"6628},6629{6630"include": "#ever_present_context"6631}6632]6633},6634"namespace_alias": {6635"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))",6636"captures": {6637"1": {6638"name": "keyword.other.namespace.alias.cpp storage.type.namespace.alias.cpp"6639},6640"2": {6641"name": "entity.name.namespace.alias.cpp"6642},6643"3": {6644"name": "keyword.operator.assignment.cpp"6645},6646"4": {6647"name": "meta.declaration.namespace.alias.value.cpp"6648},6649"5": {6650"patterns": [6651{6652"include": "#scope_resolution_namespace_alias_inner_generated"6653}6654]6655},6656"6": {6657"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.alias.cpp"6658},6659"7": {6660"patterns": [6661{6662"include": "#template_call_range_helper"6663}6664]6665},6666"9": {6667"name": "entity.name.namespace.cpp"6668},6669"10": {6670"name": "punctuation.terminator.statement.cpp"6671}6672},6673"name": "meta.declaration.namespace.alias.cpp"6674},6675"namespace_block": {6676"begin": "((?<!\\w)namespace(?!\\w))",6677"end": "(?:(?<=\\}|%>|\\?\\?>)|(?=[;>\\[\\]=]))|(?=\\\\end\\{(?:minted|cppcode)\\})",6678"beginCaptures": {6679"0": {6680"name": "meta.head.namespace.cpp"6681},6682"1": {6683"name": "keyword.other.namespace.definition.cpp storage.type.namespace.definition.cpp"6684}6685},6686"endCaptures": {},6687"name": "meta.block.namespace.cpp",6688"patterns": [6689{6690"begin": "\\G ?",6691"end": "(?:\\{|<%|\\?\\?<|(?=;))|(?=\\\\end\\{(?:minted|cppcode)\\})",6692"beginCaptures": {},6693"endCaptures": {6694"0": {6695"name": "punctuation.section.block.begin.bracket.curly.namespace.cpp"6696}6697},6698"name": "meta.head.namespace.cpp",6699"patterns": [6700{6701"include": "#ever_present_context"6702},6703{6704"include": "#attributes_context"6705},6706{6707"include": "#normal_variable_assignment"6708},6709{6710"include": "#normal_variable_declaration"6711},6712{6713"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))?",6714"captures": {6715"1": {6716"patterns": [6717{6718"include": "#scope_resolution_namespace_block_inner_generated"6719}6720]6721},6722"2": {6723"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.block.cpp"6724},6725"3": {6726"patterns": [6727{6728"include": "#template_call_range_helper"6729}6730]6731},6732"4": {},6733"5": {6734"name": "entity.name.namespace.cpp"6735},6736"6": {6737"name": "punctuation.separator.scope-resolution.namespace.block.cpp"6738},6739"7": {6740"name": "storage.modifier.inline.cpp"6741}6742}6743}6744]6745},6746{6747"begin": "(?<=\\{|<%|\\?\\?<)",6748"end": "\\}|%>|\\?\\?>|(?=\\\\end\\{(?:minted|cppcode)\\})",6749"beginCaptures": {},6750"endCaptures": {6751"0": {6752"name": "punctuation.section.block.end.bracket.curly.namespace.cpp"6753}6754},6755"name": "meta.body.namespace.cpp",6756"patterns": [6757{6758"include": "$self"6759}6760]6761},6762{6763"begin": "(?<=\\}|%>|\\?\\?>)[\\s]*",6764"end": "[\\s]*(?=;)|(?=\\\\end\\{(?:minted|cppcode)\\})",6765"beginCaptures": {},6766"endCaptures": {},6767"name": "meta.tail.namespace.cpp",6768"patterns": [6769{6770"include": "$self"6771}6772]6773}6774]6775},6776"noexcept_operator": {6777"begin": "((?<!\\w)noexcept(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()",6778"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",6779"beginCaptures": {6780"1": {6781"name": "keyword.operator.functionlike.cpp keyword.operator.noexcept.cpp"6782},6783"2": {6784"patterns": [6785{6786"include": "#inline_comment"6787}6788]6789},6790"3": {6791"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"6792},6793"4": {6794"name": "comment.block.cpp"6795},6796"5": {6797"name": "comment.block.cpp punctuation.definition.comment.end.cpp"6798},6799"6": {6800"name": "punctuation.section.arguments.begin.bracket.round.operator.noexcept.cpp"6801}6802},6803"endCaptures": {6804"0": {6805"name": "punctuation.section.arguments.end.bracket.round.operator.noexcept.cpp"6806}6807},6808"contentName": "meta.arguments.operator.noexcept",6809"patterns": [6810{6811"include": "#evaluation_context"6812}6813]6814},6815"normal_variable_assignment": {6816"begin": "^((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?:((?:(?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)(?<!\\w)(?:thread_local|volatile|register|restrict|static|extern|const)(?!\\w)\\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<31>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\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<31>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)?(?![\\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[a-z0-9]+\\b)|(\\b[a-zA-Z0-9]+_[a-zA-Z0-9]*\\b))|(\\b[a-z]+[A-Z][a-zA-Z0-9]*\\b))|(\\b[A-Z][A-Z_0-9]*\\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*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:((?:%=|\\+=|-=|\\*=|(?<!\\()\\/=))|((?:&=|\\^=|<<=|>>=|\\|=))|(\\=)))",6817"end": "(?=;)|(?=\\\\end\\{(?:minted|cppcode)\\})",6818"beginCaptures": {6819"1": {6820"patterns": [6821{6822"include": "#inline_comment"6823}6824]6825},6826"2": {6827"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"6828},6829"3": {6830"name": "comment.block.cpp"6831},6832"4": {6833"name": "comment.block.cpp punctuation.definition.comment.end.cpp"6834},6835"5": {6836"name": "meta.assignment.cpp"6837},6838"6": {6839"patterns": [6840{6841"include": "#storage_specifiers"6842}6843]6844},6845"7": {6846"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"6847},6848"8": {6849"name": "comment.block.cpp"6850},6851"9": {6852"name": "comment.block.cpp punctuation.definition.comment.end.cpp"6853},6854"10": {6855"patterns": [6856{6857"include": "#inline_comment"6858}6859]6860},6861"11": {6862"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"6863},6864"12": {6865"name": "comment.block.cpp"6866},6867"13": {6868"name": "comment.block.cpp punctuation.definition.comment.end.cpp"6869},6870"14": {6871"name": "meta.qualified-type.cpp",6872"patterns": [6873{6874"match": "::",6875"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"6876},6877{6878"match": "(?<!\\w)(?:struct|class|union|enum)(?!\\w)",6879"name": "storage.type.$0.cpp"6880},6881{6882"include": "#attributes_context"6883},6884{6885"include": "#storage_types"6886},6887{6888"include": "#number_literal"6889},6890{6891"include": "#string_context"6892},6893{6894"include": "#comma"6895},6896{6897"include": "#scope_resolution_inner_generated"6898},6899{6900"include": "#template_call_range_helper"6901},6902{6903"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}))*",6904"name": "entity.name.type.cpp"6905}6906]6907},6908"15": {6909"patterns": [6910{6911"include": "#attributes_context"6912},6913{6914"include": "#number_literal"6915}6916]6917},6918"16": {6919"patterns": [6920{6921"include": "#inline_comment"6922}6923]6924},6925"17": {6926"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"6927},6928"18": {6929"name": "comment.block.cpp"6930},6931"19": {6932"name": "comment.block.cpp punctuation.definition.comment.end.cpp"6933},6934"20": {6935"patterns": [6936{6937"include": "#inline_comment"6938}6939]6940},6941"21": {6942"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"6943},6944"22": {6945"name": "comment.block.cpp"6946},6947"23": {6948"name": "comment.block.cpp punctuation.definition.comment.end.cpp"6949},6950"24": {6951"patterns": [6952{6953"match": "::",6954"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"6955},6956{6957"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)",6958"name": "entity.name.scope-resolution.type.cpp"6959},6960{6961"include": "#template_call_range_helper"6962}6963]6964},6965"25": {6966"patterns": [6967{6968"include": "#template_call_range_helper"6969}6970]6971},6972"26": {},6973"27": {6974"patterns": [6975{6976"include": "#inline_comment"6977}6978]6979},6980"28": {6981"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"6982},6983"29": {6984"name": "comment.block.cpp"6985},6986"30": {6987"name": "comment.block.cpp punctuation.definition.comment.end.cpp"6988},6989"31": {},6990"32": {6991"patterns": [6992{6993"match": "\\*",6994"name": "storage.modifier.pointer.cpp"6995},6996{6997"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",6998"captures": {6999"1": {7000"patterns": [7001{7002"include": "#inline_comment"7003}7004]7005},7006"2": {7007"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7008},7009"3": {7010"name": "comment.block.cpp"7011},7012"4": {7013"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7014}7015},7016"name": "invalid.illegal.reference-type.cpp"7017},7018{7019"match": "\\&",7020"name": "storage.modifier.reference.cpp"7021}7022]7023},7024"33": {7025"patterns": [7026{7027"include": "#inline_comment"7028}7029]7030},7031"34": {7032"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7033},7034"35": {7035"name": "comment.block.cpp"7036},7037"36": {7038"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7039},7040"37": {7041"patterns": [7042{7043"include": "#inline_comment"7044}7045]7046},7047"38": {7048"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7049},7050"39": {7051"name": "comment.block.cpp"7052},7053"40": {7054"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7055},7056"41": {7057"patterns": [7058{7059"include": "#inline_comment"7060}7061]7062},7063"42": {7064"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7065},7066"43": {7067"name": "comment.block.cpp"7068},7069"44": {7070"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7071},7072"45": {7073"name": "variable.lower-case.cpp variable.other.assignment.cpp"7074},7075"46": {7076"name": "variable.snake-case.cpp variable.other.assignment.cpp"7077},7078"47": {7079"name": "variable.camel-case.cpp variable.other.assignment.cpp"7080},7081"48": {7082"name": "variable.upper-case.cpp variable.other.assignment.cpp"7083},7084"49": {7085"name": "variable.other.unknown.$49.cpp"7086},7087"50": {7088"patterns": [7089{7090"include": "#inline_comment"7091}7092]7093},7094"51": {7095"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7096},7097"52": {7098"name": "comment.block.cpp"7099},7100"53": {7101"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7102},7103"54": {7104"name": "keyword.operator.assignment.compound.cpp"7105},7106"55": {7107"name": "keyword.operator.assignment.compound.bitwise.cpp"7108},7109"56": {7110"name": "keyword.operator.assignment.cpp"7111}7112},7113"endCaptures": {},7114"name": "meta.assignment.cpp",7115"patterns": [7116{7117"include": "#normal_variable_assignment"7118},7119{7120"include": "#variable_assignment"7121},7122{7123"include": "$self"7124}7125]7126},7127"normal_variable_declaration": {7128"begin": "^((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?:((?:(?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)(?<!\\w)(?:thread_local|volatile|register|restrict|static|extern|const)(?!\\w)\\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<31>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\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<31>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)?(?![\\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[a-z0-9]+\\b)|(\\b[a-zA-Z0-9]+_[a-zA-Z0-9]*\\b))|(\\b[a-z]+[A-Z][a-zA-Z0-9]*\\b))|(\\b[A-Z][A-Z_0-9]*\\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*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?=;|,|\\[)(?![^=]++=))",7129"end": "(?=;)|(?=\\\\end\\{(?:minted|cppcode)\\})",7130"beginCaptures": {7131"1": {7132"patterns": [7133{7134"include": "#inline_comment"7135}7136]7137},7138"2": {7139"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7140},7141"3": {7142"name": "comment.block.cpp"7143},7144"4": {7145"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7146},7147"5": {7148"name": "meta.declaration.cpp"7149},7150"6": {7151"patterns": [7152{7153"include": "#storage_specifiers"7154}7155]7156},7157"7": {7158"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7159},7160"8": {7161"name": "comment.block.cpp"7162},7163"9": {7164"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7165},7166"10": {7167"patterns": [7168{7169"include": "#inline_comment"7170}7171]7172},7173"11": {7174"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7175},7176"12": {7177"name": "comment.block.cpp"7178},7179"13": {7180"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7181},7182"14": {7183"name": "meta.qualified-type.cpp",7184"patterns": [7185{7186"match": "::",7187"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"7188},7189{7190"match": "(?<!\\w)(?:struct|class|union|enum)(?!\\w)",7191"name": "storage.type.$0.cpp"7192},7193{7194"include": "#attributes_context"7195},7196{7197"include": "#storage_types"7198},7199{7200"include": "#number_literal"7201},7202{7203"include": "#string_context"7204},7205{7206"include": "#comma"7207},7208{7209"include": "#scope_resolution_inner_generated"7210},7211{7212"include": "#template_call_range_helper"7213},7214{7215"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}))*",7216"name": "entity.name.type.cpp"7217}7218]7219},7220"15": {7221"patterns": [7222{7223"include": "#attributes_context"7224},7225{7226"include": "#number_literal"7227}7228]7229},7230"16": {7231"patterns": [7232{7233"include": "#inline_comment"7234}7235]7236},7237"17": {7238"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7239},7240"18": {7241"name": "comment.block.cpp"7242},7243"19": {7244"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7245},7246"20": {7247"patterns": [7248{7249"include": "#inline_comment"7250}7251]7252},7253"21": {7254"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7255},7256"22": {7257"name": "comment.block.cpp"7258},7259"23": {7260"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7261},7262"24": {7263"patterns": [7264{7265"match": "::",7266"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"7267},7268{7269"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)",7270"name": "entity.name.scope-resolution.type.cpp"7271},7272{7273"include": "#template_call_range_helper"7274}7275]7276},7277"25": {7278"patterns": [7279{7280"include": "#template_call_range_helper"7281}7282]7283},7284"26": {},7285"27": {7286"patterns": [7287{7288"include": "#inline_comment"7289}7290]7291},7292"28": {7293"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7294},7295"29": {7296"name": "comment.block.cpp"7297},7298"30": {7299"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7300},7301"31": {},7302"32": {7303"patterns": [7304{7305"match": "\\*",7306"name": "storage.modifier.pointer.cpp"7307},7308{7309"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",7310"captures": {7311"1": {7312"patterns": [7313{7314"include": "#inline_comment"7315}7316]7317},7318"2": {7319"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7320},7321"3": {7322"name": "comment.block.cpp"7323},7324"4": {7325"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7326}7327},7328"name": "invalid.illegal.reference-type.cpp"7329},7330{7331"match": "\\&",7332"name": "storage.modifier.reference.cpp"7333}7334]7335},7336"33": {7337"patterns": [7338{7339"include": "#inline_comment"7340}7341]7342},7343"34": {7344"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7345},7346"35": {7347"name": "comment.block.cpp"7348},7349"36": {7350"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7351},7352"37": {7353"patterns": [7354{7355"include": "#inline_comment"7356}7357]7358},7359"38": {7360"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7361},7362"39": {7363"name": "comment.block.cpp"7364},7365"40": {7366"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7367},7368"41": {7369"patterns": [7370{7371"include": "#inline_comment"7372}7373]7374},7375"42": {7376"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7377},7378"43": {7379"name": "comment.block.cpp"7380},7381"44": {7382"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7383},7384"45": {7385"name": "variable.lower-case.cpp variable.other.declare.cpp"7386},7387"46": {7388"name": "variable.snake-case.cpp variable.other.declare.cpp"7389},7390"47": {7391"name": "variable.camel-case.cpp variable.other.declare.cpp"7392},7393"48": {7394"name": "variable.upper-case.cpp variable.other.declare.cpp"7395},7396"49": {7397"name": "variable.other.unknown.$49.cpp"7398},7399"50": {7400"patterns": [7401{7402"include": "#inline_comment"7403}7404]7405},7406"51": {7407"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7408},7409"52": {7410"name": "comment.block.cpp"7411},7412"53": {7413"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7414}7415},7416"endCaptures": {},7417"name": "meta.declaration.cpp",7418"patterns": [7419{7420"include": "#normal_variable_assignment"7421},7422{7423"include": "#variable_assignment"7424},7425{7426"include": "$self"7427}7428]7429},7430"number_literal": {7431"match": "(?<!\\w)\\.?\\d(?:(?:[0-9a-zA-Z_\\.]|')|(?<=[eEpP])[+-])*",7432"captures": {7433"0": {7434"patterns": [7435{7436"begin": "(?=.)",7437"end": "$|(?=\\\\end\\{(?:minted|cppcode)\\})",7438"beginCaptures": {},7439"endCaptures": {},7440"patterns": [7441{7442"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*)?$)",7443"captures": {7444"1": {7445"name": "keyword.other.unit.hexadecimal.cpp"7446},7447"2": {7448"name": "constant.numeric.hexadecimal.cpp",7449"patterns": [7450{7451"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",7452"name": "punctuation.separator.constant.numeric.cpp"7453}7454]7455},7456"3": {7457"name": "punctuation.separator.constant.numeric.cpp"7458},7459"4": {7460"name": "constant.numeric.hexadecimal.cpp"7461},7462"5": {7463"name": "constant.numeric.hexadecimal.cpp",7464"patterns": [7465{7466"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",7467"name": "punctuation.separator.constant.numeric.cpp"7468}7469]7470},7471"6": {7472"name": "punctuation.separator.constant.numeric.cpp"7473},7474"7": {7475"name": "keyword.other.unit.exponent.hexadecimal.cpp"7476},7477"8": {7478"name": "keyword.operator.plus.exponent.hexadecimal.cpp"7479},7480"9": {7481"name": "keyword.operator.minus.exponent.hexadecimal.cpp"7482},7483"10": {7484"name": "constant.numeric.exponent.hexadecimal.cpp",7485"patterns": [7486{7487"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",7488"name": "punctuation.separator.constant.numeric.cpp"7489}7490]7491},7492"11": {7493"name": "keyword.other.suffix.literal.built-in.floating-point.cpp keyword.other.unit.suffix.floating-point.cpp"7494},7495"12": {7496"name": "keyword.other.suffix.literal.user-defined.integer.cpp keyword.other.unit.user-defined.cpp"7497}7498}7499},7500{7501"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*)?$)",7502"captures": {7503"1": {7504"name": "constant.numeric.decimal.cpp",7505"patterns": [7506{7507"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",7508"name": "punctuation.separator.constant.numeric.cpp"7509}7510]7511},7512"2": {7513"name": "punctuation.separator.constant.numeric.cpp"7514},7515"3": {7516"name": "constant.numeric.decimal.point.cpp"7517},7518"4": {7519"name": "constant.numeric.decimal.cpp",7520"patterns": [7521{7522"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",7523"name": "punctuation.separator.constant.numeric.cpp"7524}7525]7526},7527"5": {7528"name": "punctuation.separator.constant.numeric.cpp"7529},7530"6": {7531"name": "keyword.other.unit.exponent.decimal.cpp"7532},7533"7": {7534"name": "keyword.operator.plus.exponent.decimal.cpp"7535},7536"8": {7537"name": "keyword.operator.minus.exponent.decimal.cpp"7538},7539"9": {7540"name": "constant.numeric.exponent.decimal.cpp",7541"patterns": [7542{7543"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",7544"name": "punctuation.separator.constant.numeric.cpp"7545}7546]7547},7548"10": {7549"name": "keyword.other.suffix.literal.built-in.floating-point.cpp keyword.other.unit.suffix.floating-point.cpp"7550},7551"11": {7552"name": "keyword.other.suffix.literal.user-defined.integer.cpp keyword.other.unit.user-defined.cpp"7553}7554}7555},7556{7557"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*)?$)",7558"captures": {7559"1": {7560"name": "keyword.other.unit.binary.cpp"7561},7562"2": {7563"name": "constant.numeric.binary.cpp",7564"patterns": [7565{7566"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",7567"name": "punctuation.separator.constant.numeric.cpp"7568}7569]7570},7571"3": {7572"name": "punctuation.separator.constant.numeric.cpp"7573},7574"4": {7575"name": "keyword.other.suffix.literal.built-in.integer.cpp keyword.other.unit.suffix.integer.cpp"7576},7577"5": {7578"name": "keyword.other.suffix.literal.user-defined.integer.cpp keyword.other.unit.user-defined.cpp"7579}7580}7581},7582{7583"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*)?$)",7584"captures": {7585"1": {7586"name": "keyword.other.unit.octal.cpp"7587},7588"2": {7589"name": "constant.numeric.octal.cpp",7590"patterns": [7591{7592"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",7593"name": "punctuation.separator.constant.numeric.cpp"7594}7595]7596},7597"3": {7598"name": "punctuation.separator.constant.numeric.cpp"7599},7600"4": {7601"name": "keyword.other.suffix.literal.built-in.integer.cpp keyword.other.unit.suffix.integer.cpp"7602},7603"5": {7604"name": "keyword.other.suffix.literal.user-defined.integer.cpp keyword.other.unit.user-defined.cpp"7605}7606}7607},7608{7609"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*)?$)",7610"captures": {7611"1": {7612"name": "keyword.other.unit.hexadecimal.cpp"7613},7614"2": {7615"name": "constant.numeric.hexadecimal.cpp",7616"patterns": [7617{7618"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",7619"name": "punctuation.separator.constant.numeric.cpp"7620}7621]7622},7623"3": {7624"name": "punctuation.separator.constant.numeric.cpp"7625},7626"4": {7627"name": "keyword.other.unit.exponent.hexadecimal.cpp"7628},7629"5": {7630"name": "keyword.operator.plus.exponent.hexadecimal.cpp"7631},7632"6": {7633"name": "keyword.operator.minus.exponent.hexadecimal.cpp"7634},7635"7": {7636"name": "constant.numeric.exponent.hexadecimal.cpp",7637"patterns": [7638{7639"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",7640"name": "punctuation.separator.constant.numeric.cpp"7641}7642]7643},7644"8": {7645"name": "keyword.other.suffix.literal.built-in.integer.cpp keyword.other.unit.suffix.integer.cpp"7646},7647"9": {7648"name": "keyword.other.suffix.literal.user-defined.integer.cpp keyword.other.unit.user-defined.cpp"7649}7650}7651},7652{7653"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*)?$)",7654"captures": {7655"1": {7656"name": "constant.numeric.decimal.cpp",7657"patterns": [7658{7659"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",7660"name": "punctuation.separator.constant.numeric.cpp"7661}7662]7663},7664"2": {7665"name": "punctuation.separator.constant.numeric.cpp"7666},7667"3": {7668"name": "keyword.other.unit.exponent.decimal.cpp"7669},7670"4": {7671"name": "keyword.operator.plus.exponent.decimal.cpp"7672},7673"5": {7674"name": "keyword.operator.minus.exponent.decimal.cpp"7675},7676"6": {7677"name": "constant.numeric.exponent.decimal.cpp",7678"patterns": [7679{7680"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",7681"name": "punctuation.separator.constant.numeric.cpp"7682}7683]7684},7685"7": {7686"name": "keyword.other.suffix.literal.built-in.integer.cpp keyword.other.unit.suffix.integer.cpp"7687},7688"8": {7689"name": "keyword.other.suffix.literal.user-defined.integer.cpp keyword.other.unit.user-defined.cpp"7690}7691}7692},7693{7694"match": "(?:(?:[0-9a-zA-Z_\\.]|')|(?<=[eEpP])[+-])+",7695"name": "invalid.illegal.constant.numeric.cpp"7696}7697]7698}7699]7700}7701}7702},7703"operator_overload": {7704"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<60>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\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<60>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)?(?![\\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<60>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+)?::)*+)(operator)(?:((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)const(?!\\w)))?((?:(?:(?:\\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<60>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\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))(?=;|\\<|\\()",7705"end": "(?:(?<=\\}|%>|\\?\\?>)|(?=[;>\\[\\]=]))|(?=\\\\end\\{(?:minted|cppcode)\\})",7706"beginCaptures": {7707"0": {7708"name": "meta.head.function.definition.special.operator-overload.cpp"7709},7710"1": {7711"patterns": [7712{7713"include": "#inline_comment"7714}7715]7716},7717"2": {7718"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7719},7720"3": {7721"name": "comment.block.cpp"7722},7723"4": {7724"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7725},7726"5": {7727"name": "meta.qualified-type.cpp",7728"patterns": [7729{7730"match": "::",7731"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"7732},7733{7734"match": "(?<!\\w)(?:struct|class|union|enum)(?!\\w)",7735"name": "storage.type.$0.cpp"7736},7737{7738"include": "#attributes_context"7739},7740{7741"include": "#storage_types"7742},7743{7744"include": "#number_literal"7745},7746{7747"include": "#string_context"7748},7749{7750"include": "#comma"7751},7752{7753"include": "#scope_resolution_inner_generated"7754},7755{7756"include": "#template_call_range_helper"7757},7758{7759"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}))*",7760"name": "entity.name.type.cpp"7761}7762]7763},7764"6": {7765"patterns": [7766{7767"include": "#attributes_context"7768},7769{7770"include": "#number_literal"7771}7772]7773},7774"7": {7775"patterns": [7776{7777"include": "#inline_comment"7778}7779]7780},7781"8": {7782"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7783},7784"9": {7785"name": "comment.block.cpp"7786},7787"10": {7788"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7789},7790"11": {7791"patterns": [7792{7793"include": "#inline_comment"7794}7795]7796},7797"12": {7798"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7799},7800"13": {7801"name": "comment.block.cpp"7802},7803"14": {7804"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7805},7806"15": {7807"patterns": [7808{7809"match": "::",7810"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"7811},7812{7813"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)",7814"name": "entity.name.scope-resolution.type.cpp"7815},7816{7817"include": "#template_call_range_helper"7818}7819]7820},7821"16": {7822"patterns": [7823{7824"include": "#template_call_range_helper"7825}7826]7827},7828"17": {},7829"18": {7830"patterns": [7831{7832"include": "#inline_comment"7833}7834]7835},7836"19": {7837"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7838},7839"20": {7840"name": "comment.block.cpp"7841},7842"21": {7843"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7844},7845"22": {},7846"23": {7847"patterns": [7848{7849"match": "\\*",7850"name": "storage.modifier.pointer.cpp"7851},7852{7853"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",7854"captures": {7855"1": {7856"patterns": [7857{7858"include": "#inline_comment"7859}7860]7861},7862"2": {7863"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7864},7865"3": {7866"name": "comment.block.cpp"7867},7868"4": {7869"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7870}7871},7872"name": "invalid.illegal.reference-type.cpp"7873},7874{7875"match": "\\&",7876"name": "storage.modifier.reference.cpp"7877}7878]7879},7880"24": {7881"patterns": [7882{7883"include": "#inline_comment"7884}7885]7886},7887"25": {7888"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7889},7890"26": {7891"name": "comment.block.cpp"7892},7893"27": {7894"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7895},7896"28": {7897"patterns": [7898{7899"include": "#inline_comment"7900}7901]7902},7903"29": {7904"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7905},7906"30": {7907"name": "comment.block.cpp"7908},7909"31": {7910"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7911},7912"32": {7913"patterns": [7914{7915"include": "#inline_comment"7916}7917]7918},7919"33": {7920"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7921},7922"34": {7923"name": "comment.block.cpp"7924},7925"35": {7926"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7927},7928"36": {7929"name": "storage.type.modifier.calling-convention.cpp"7930},7931"37": {7932"patterns": [7933{7934"include": "#inline_comment"7935}7936]7937},7938"38": {7939"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7940},7941"39": {7942"name": "comment.block.cpp"7943},7944"40": {7945"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7946},7947"41": {7948"patterns": [7949{7950"include": "#inline_comment"7951}7952]7953},7954"42": {7955"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7956},7957"43": {7958"name": "comment.block.cpp"7959},7960"44": {7961"name": "comment.block.cpp punctuation.definition.comment.end.cpp"7962},7963"45": {7964"patterns": [7965{7966"match": "::",7967"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.operator.cpp"7968},7969{7970"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)",7971"name": "entity.name.scope-resolution.operator.cpp"7972},7973{7974"include": "#template_call_range_helper"7975}7976]7977},7978"46": {7979"patterns": [7980{7981"include": "#template_call_range_helper"7982}7983]7984},7985"47": {},7986"48": {7987"name": "keyword.other.operator.overload.cpp"7988},7989"49": {7990"patterns": [7991{7992"include": "#inline_comment"7993}7994]7995},7996"50": {7997"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"7998},7999"51": {8000"name": "comment.block.cpp"8001},8002"52": {8003"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8004},8005"53": {8006"name": "storage.modifier.const.cpp"8007},8008"54": {8009"patterns": [8010{8011"include": "#inline_comment"8012}8013]8014},8015"55": {8016"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8017},8018"56": {8019"name": "comment.block.cpp"8020},8021"57": {8022"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8023},8024"58": {8025"patterns": [8026{8027"match": "::",8028"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.operator-overload.cpp"8029},8030{8031"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)",8032"name": "entity.name.scope-resolution.operator-overload.cpp"8033},8034{8035"include": "#template_call_range_helper"8036}8037]8038},8039"59": {8040"patterns": [8041{8042"include": "#template_call_range_helper"8043}8044]8045},8046"60": {},8047"61": {8048"name": "entity.name.operator.cpp"8049},8050"62": {8051"name": "entity.name.operator.type.cpp"8052},8053"63": {8054"patterns": [8055{8056"match": "\\*",8057"name": "entity.name.operator.type.pointer.cpp"8058},8059{8060"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",8061"captures": {8062"1": {8063"patterns": [8064{8065"include": "#inline_comment"8066}8067]8068},8069"2": {8070"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8071},8072"3": {8073"name": "comment.block.cpp"8074},8075"4": {8076"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8077}8078},8079"name": "invalid.illegal.reference-type.cpp"8080},8081{8082"match": "\\&",8083"name": "entity.name.operator.type.reference.cpp"8084}8085]8086},8087"64": {8088"patterns": [8089{8090"include": "#inline_comment"8091}8092]8093},8094"65": {8095"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8096},8097"66": {8098"name": "comment.block.cpp"8099},8100"67": {8101"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8102},8103"68": {8104"patterns": [8105{8106"include": "#inline_comment"8107}8108]8109},8110"69": {8111"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8112},8113"70": {8114"name": "comment.block.cpp"8115},8116"71": {8117"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8118},8119"72": {8120"patterns": [8121{8122"include": "#inline_comment"8123}8124]8125},8126"73": {8127"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8128},8129"74": {8130"name": "comment.block.cpp"8131},8132"75": {8133"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8134},8135"76": {8136"name": "entity.name.operator.type.array.cpp"8137},8138"77": {8139"name": "entity.name.operator.custom-literal.cpp"8140},8141"78": {8142"patterns": [8143{8144"include": "#inline_comment"8145}8146]8147},8148"79": {8149"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8150},8151"80": {8152"name": "comment.block.cpp"8153},8154"81": {8155"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8156},8157"82": {8158"name": "entity.name.operator.custom-literal.cpp"8159},8160"83": {8161"patterns": [8162{8163"include": "#inline_comment"8164}8165]8166},8167"84": {8168"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8169},8170"85": {8171"name": "comment.block.cpp"8172},8173"86": {8174"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8175}8176},8177"endCaptures": {},8178"name": "meta.function.definition.special.operator-overload.cpp",8179"patterns": [8180{8181"begin": "\\G ?",8182"end": "(?:\\{|<%|\\?\\?<|(?=;))|(?=\\\\end\\{(?:minted|cppcode)\\})",8183"beginCaptures": {},8184"endCaptures": {8185"0": {8186"name": "punctuation.section.block.begin.bracket.curly.function.definition.special.operator-overload.cpp"8187}8188},8189"name": "meta.head.function.definition.special.operator-overload.cpp",8190"patterns": [8191{8192"include": "#ever_present_context"8193},8194{8195"include": "#template_call_range_helper"8196},8197{8198"begin": "\\(",8199"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",8200"beginCaptures": {8201"0": {8202"name": "punctuation.section.parameters.begin.bracket.round.special.operator-overload.cpp"8203}8204},8205"endCaptures": {8206"0": {8207"name": "punctuation.section.parameters.end.bracket.round.special.operator-overload.cpp"8208}8209},8210"contentName": "meta.function.definition.parameters.special.operator-overload",8211"patterns": [8212{8213"include": "#function_parameter_context"8214},8215{8216"include": "#evaluation_context"8217}8218]8219},8220{8221"include": "#qualifiers_and_specifiers_post_parameters"8222},8223{8224"match": "(\\=)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(default)|(delete))",8225"captures": {8226"1": {8227"name": "keyword.operator.assignment.cpp"8228},8229"2": {8230"patterns": [8231{8232"include": "#inline_comment"8233}8234]8235},8236"3": {8237"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8238},8239"4": {8240"name": "comment.block.cpp"8241},8242"5": {8243"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8244},8245"6": {8246"name": "keyword.other.default.function.cpp"8247},8248"7": {8249"name": "keyword.other.delete.function.cpp"8250}8251}8252},8253{8254"include": "$self"8255}8256]8257},8258{8259"begin": "(?<=\\{|<%|\\?\\?<)",8260"end": "\\}|%>|\\?\\?>|(?=\\\\end\\{(?:minted|cppcode)\\})",8261"beginCaptures": {},8262"endCaptures": {8263"0": {8264"name": "punctuation.section.block.end.bracket.curly.function.definition.special.operator-overload.cpp"8265}8266},8267"name": "meta.body.function.definition.special.operator-overload.cpp",8268"patterns": [8269{8270"include": "#function_body_context"8271}8272]8273},8274{8275"begin": "(?<=\\}|%>|\\?\\?>)[\\s]*",8276"end": "[\\s]*(?=;)|(?=\\\\end\\{(?:minted|cppcode)\\})",8277"beginCaptures": {},8278"endCaptures": {},8279"name": "meta.tail.function.definition.special.operator-overload.cpp",8280"patterns": [8281{8282"include": "$self"8283}8284]8285}8286]8287},8288"operators": {8289"patterns": [8290{8291"begin": "((?<!\\w)sizeof(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()",8292"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",8293"beginCaptures": {8294"1": {8295"name": "keyword.operator.functionlike.cpp keyword.operator.sizeof.cpp"8296},8297"2": {8298"patterns": [8299{8300"include": "#inline_comment"8301}8302]8303},8304"3": {8305"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8306},8307"4": {8308"name": "comment.block.cpp"8309},8310"5": {8311"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8312},8313"6": {8314"name": "punctuation.section.arguments.begin.bracket.round.operator.sizeof.cpp"8315}8316},8317"endCaptures": {8318"0": {8319"name": "punctuation.section.arguments.end.bracket.round.operator.sizeof.cpp"8320}8321},8322"contentName": "meta.arguments.operator.sizeof",8323"patterns": [8324{8325"include": "#evaluation_context"8326}8327]8328},8329{8330"begin": "((?<!\\w)alignof(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()",8331"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",8332"beginCaptures": {8333"1": {8334"name": "keyword.operator.functionlike.cpp keyword.operator.alignof.cpp"8335},8336"2": {8337"patterns": [8338{8339"include": "#inline_comment"8340}8341]8342},8343"3": {8344"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8345},8346"4": {8347"name": "comment.block.cpp"8348},8349"5": {8350"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8351},8352"6": {8353"name": "punctuation.section.arguments.begin.bracket.round.operator.alignof.cpp"8354}8355},8356"endCaptures": {8357"0": {8358"name": "punctuation.section.arguments.end.bracket.round.operator.alignof.cpp"8359}8360},8361"contentName": "meta.arguments.operator.alignof",8362"patterns": [8363{8364"include": "#evaluation_context"8365}8366]8367},8368{8369"begin": "((?<!\\w)alignas(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()",8370"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",8371"beginCaptures": {8372"1": {8373"name": "keyword.operator.functionlike.cpp keyword.operator.alignas.cpp"8374},8375"2": {8376"patterns": [8377{8378"include": "#inline_comment"8379}8380]8381},8382"3": {8383"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8384},8385"4": {8386"name": "comment.block.cpp"8387},8388"5": {8389"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8390},8391"6": {8392"name": "punctuation.section.arguments.begin.bracket.round.operator.alignas.cpp"8393}8394},8395"endCaptures": {8396"0": {8397"name": "punctuation.section.arguments.end.bracket.round.operator.alignas.cpp"8398}8399},8400"contentName": "meta.arguments.operator.alignas",8401"patterns": [8402{8403"include": "#evaluation_context"8404}8405]8406},8407{8408"begin": "((?<!\\w)typeid(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()",8409"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",8410"beginCaptures": {8411"1": {8412"name": "keyword.operator.functionlike.cpp keyword.operator.typeid.cpp"8413},8414"2": {8415"patterns": [8416{8417"include": "#inline_comment"8418}8419]8420},8421"3": {8422"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8423},8424"4": {8425"name": "comment.block.cpp"8426},8427"5": {8428"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8429},8430"6": {8431"name": "punctuation.section.arguments.begin.bracket.round.operator.typeid.cpp"8432}8433},8434"endCaptures": {8435"0": {8436"name": "punctuation.section.arguments.end.bracket.round.operator.typeid.cpp"8437}8438},8439"contentName": "meta.arguments.operator.typeid",8440"patterns": [8441{8442"include": "#evaluation_context"8443}8444]8445},8446{8447"begin": "((?<!\\w)noexcept(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()",8448"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",8449"beginCaptures": {8450"1": {8451"name": "keyword.operator.functionlike.cpp keyword.operator.noexcept.cpp"8452},8453"2": {8454"patterns": [8455{8456"include": "#inline_comment"8457}8458]8459},8460"3": {8461"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8462},8463"4": {8464"name": "comment.block.cpp"8465},8466"5": {8467"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8468},8469"6": {8470"name": "punctuation.section.arguments.begin.bracket.round.operator.noexcept.cpp"8471}8472},8473"endCaptures": {8474"0": {8475"name": "punctuation.section.arguments.end.bracket.round.operator.noexcept.cpp"8476}8477},8478"contentName": "meta.arguments.operator.noexcept",8479"patterns": [8480{8481"include": "#evaluation_context"8482}8483]8484},8485{8486"begin": "(\\bsizeof\\.\\.\\.)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()",8487"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",8488"beginCaptures": {8489"1": {8490"name": "keyword.operator.functionlike.cpp keyword.operator.sizeof.variadic.cpp"8491},8492"2": {8493"patterns": [8494{8495"include": "#inline_comment"8496}8497]8498},8499"3": {8500"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8501},8502"4": {8503"name": "comment.block.cpp"8504},8505"5": {8506"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8507},8508"6": {8509"name": "punctuation.section.arguments.begin.bracket.round.operator.sizeof.variadic.cpp"8510}8511},8512"endCaptures": {8513"0": {8514"name": "punctuation.section.arguments.end.bracket.round.operator.sizeof.variadic.cpp"8515}8516},8517"contentName": "meta.arguments.operator.sizeof.variadic",8518"patterns": [8519{8520"include": "#evaluation_context"8521}8522]8523},8524{8525"match": "--",8526"name": "keyword.operator.decrement.cpp"8527},8528{8529"match": "\\+\\+",8530"name": "keyword.operator.increment.cpp"8531},8532{8533"match": "(?:<<|>>)",8534"name": "keyword.operator.bitwise.shift.cpp"8535},8536{8537"match": "(?:!=|<=|>=|==|<|>)",8538"name": "keyword.operator.comparison.cpp"8539},8540{8541"match": "(?:&&|!|\\|\\|)",8542"name": "keyword.operator.logical.cpp"8543},8544{8545"match": "(?:&|\\||\\^|~)",8546"name": "keyword.operator.bitwise.cpp"8547},8548{8549"match": "(?:((?:%=|\\+=|-=|\\*=|(?<!\\()\\/=))|((?:&=|\\^=|<<=|>>=|\\|=))|(\\=))",8550"captures": {8551"1": {8552"name": "keyword.operator.assignment.compound.cpp"8553},8554"2": {8555"name": "keyword.operator.assignment.compound.bitwise.cpp"8556},8557"3": {8558"name": "keyword.operator.assignment.cpp"8559}8560}8561},8562{8563"match": "(?:%|\\*|\\/|-|\\+)",8564"name": "keyword.operator.arithmetic.cpp"8565},8566{8567"include": "#ternary_operator"8568}8569]8570},8571"over_qualified_types": {8572"patterns": [8573{8574"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)",8575"captures": {8576"1": {8577"name": "storage.type.struct.parameter.cpp"8578},8579"2": {8580"patterns": [8581{8582"include": "#inline_comment"8583}8584]8585},8586"3": {8587"patterns": [8588{8589"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8590"captures": {8591"1": {8592"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8593},8594"2": {8595"name": "comment.block.cpp"8596},8597"3": {8598"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8599}8600}8601}8602]8603},8604"4": {8605"name": "entity.name.type.struct.parameter.cpp"8606},8607"5": {8608"patterns": [8609{8610"include": "#inline_comment"8611}8612]8613},8614"6": {8615"patterns": [8616{8617"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8618"captures": {8619"1": {8620"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8621},8622"2": {8623"name": "comment.block.cpp"8624},8625"3": {8626"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8627}8628}8629}8630]8631},8632"7": {8633"patterns": [8634{8635"match": "\\*",8636"name": "storage.modifier.pointer.cpp"8637},8638{8639"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",8640"captures": {8641"1": {8642"patterns": [8643{8644"include": "#inline_comment"8645}8646]8647},8648"2": {8649"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8650},8651"3": {8652"name": "comment.block.cpp"8653},8654"4": {8655"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8656}8657},8658"name": "invalid.illegal.reference-type.cpp"8659},8660{8661"match": "\\&",8662"name": "storage.modifier.reference.cpp"8663}8664]8665},8666"8": {8667"patterns": [8668{8669"include": "#inline_comment"8670}8671]8672},8673"9": {8674"patterns": [8675{8676"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8677"captures": {8678"1": {8679"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8680},8681"2": {8682"name": "comment.block.cpp"8683},8684"3": {8685"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8686}8687}8688}8689]8690},8691"10": {8692"patterns": [8693{8694"include": "#inline_comment"8695}8696]8697},8698"11": {8699"patterns": [8700{8701"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8702"captures": {8703"1": {8704"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8705},8706"2": {8707"name": "comment.block.cpp"8708},8709"3": {8710"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8711}8712}8713}8714]8715},8716"12": {8717"patterns": [8718{8719"include": "#inline_comment"8720}8721]8722},8723"13": {8724"patterns": [8725{8726"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8727"captures": {8728"1": {8729"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8730},8731"2": {8732"name": "comment.block.cpp"8733},8734"3": {8735"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8736}8737}8738}8739]8740},8741"14": {8742"name": "variable.other.object.declare.cpp"8743},8744"15": {8745"patterns": [8746{8747"include": "#inline_comment"8748}8749]8750},8751"16": {8752"patterns": [8753{8754"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8755"captures": {8756"1": {8757"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8758},8759"2": {8760"name": "comment.block.cpp"8761},8762"3": {8763"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8764}8765}8766}8767]8768},8769"17": {8770"patterns": [8771{8772"include": "#inline_comment"8773}8774]8775},8776"18": {8777"patterns": [8778{8779"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8780"captures": {8781"1": {8782"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8783},8784"2": {8785"name": "comment.block.cpp"8786},8787"3": {8788"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8789}8790}8791}8792]8793},8794"19": {8795"patterns": [8796{8797"include": "#inline_comment"8798}8799]8800},8801"20": {8802"patterns": [8803{8804"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8805"captures": {8806"1": {8807"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8808},8809"2": {8810"name": "comment.block.cpp"8811},8812"3": {8813"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8814}8815}8816}8817]8818}8819}8820},8821{8822"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)",8823"captures": {8824"1": {8825"name": "storage.type.enum.parameter.cpp"8826},8827"2": {8828"patterns": [8829{8830"include": "#inline_comment"8831}8832]8833},8834"3": {8835"patterns": [8836{8837"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8838"captures": {8839"1": {8840"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8841},8842"2": {8843"name": "comment.block.cpp"8844},8845"3": {8846"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8847}8848}8849}8850]8851},8852"4": {8853"name": "entity.name.type.enum.parameter.cpp"8854},8855"5": {8856"patterns": [8857{8858"include": "#inline_comment"8859}8860]8861},8862"6": {8863"patterns": [8864{8865"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8866"captures": {8867"1": {8868"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8869},8870"2": {8871"name": "comment.block.cpp"8872},8873"3": {8874"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8875}8876}8877}8878]8879},8880"7": {8881"patterns": [8882{8883"match": "\\*",8884"name": "storage.modifier.pointer.cpp"8885},8886{8887"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",8888"captures": {8889"1": {8890"patterns": [8891{8892"include": "#inline_comment"8893}8894]8895},8896"2": {8897"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8898},8899"3": {8900"name": "comment.block.cpp"8901},8902"4": {8903"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8904}8905},8906"name": "invalid.illegal.reference-type.cpp"8907},8908{8909"match": "\\&",8910"name": "storage.modifier.reference.cpp"8911}8912]8913},8914"8": {8915"patterns": [8916{8917"include": "#inline_comment"8918}8919]8920},8921"9": {8922"patterns": [8923{8924"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8925"captures": {8926"1": {8927"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8928},8929"2": {8930"name": "comment.block.cpp"8931},8932"3": {8933"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8934}8935}8936}8937]8938},8939"10": {8940"patterns": [8941{8942"include": "#inline_comment"8943}8944]8945},8946"11": {8947"patterns": [8948{8949"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8950"captures": {8951"1": {8952"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8953},8954"2": {8955"name": "comment.block.cpp"8956},8957"3": {8958"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8959}8960}8961}8962]8963},8964"12": {8965"patterns": [8966{8967"include": "#inline_comment"8968}8969]8970},8971"13": {8972"patterns": [8973{8974"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",8975"captures": {8976"1": {8977"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"8978},8979"2": {8980"name": "comment.block.cpp"8981},8982"3": {8983"name": "comment.block.cpp punctuation.definition.comment.end.cpp"8984}8985}8986}8987]8988},8989"14": {8990"name": "variable.other.object.declare.cpp"8991},8992"15": {8993"patterns": [8994{8995"include": "#inline_comment"8996}8997]8998},8999"16": {9000"patterns": [9001{9002"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9003"captures": {9004"1": {9005"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9006},9007"2": {9008"name": "comment.block.cpp"9009},9010"3": {9011"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9012}9013}9014}9015]9016},9017"17": {9018"patterns": [9019{9020"include": "#inline_comment"9021}9022]9023},9024"18": {9025"patterns": [9026{9027"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9028"captures": {9029"1": {9030"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9031},9032"2": {9033"name": "comment.block.cpp"9034},9035"3": {9036"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9037}9038}9039}9040]9041},9042"19": {9043"patterns": [9044{9045"include": "#inline_comment"9046}9047]9048},9049"20": {9050"patterns": [9051{9052"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9053"captures": {9054"1": {9055"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9056},9057"2": {9058"name": "comment.block.cpp"9059},9060"3": {9061"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9062}9063}9064}9065]9066}9067}9068},9069{9070"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)",9071"captures": {9072"1": {9073"name": "storage.type.union.parameter.cpp"9074},9075"2": {9076"patterns": [9077{9078"include": "#inline_comment"9079}9080]9081},9082"3": {9083"patterns": [9084{9085"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9086"captures": {9087"1": {9088"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9089},9090"2": {9091"name": "comment.block.cpp"9092},9093"3": {9094"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9095}9096}9097}9098]9099},9100"4": {9101"name": "entity.name.type.union.parameter.cpp"9102},9103"5": {9104"patterns": [9105{9106"include": "#inline_comment"9107}9108]9109},9110"6": {9111"patterns": [9112{9113"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9114"captures": {9115"1": {9116"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9117},9118"2": {9119"name": "comment.block.cpp"9120},9121"3": {9122"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9123}9124}9125}9126]9127},9128"7": {9129"patterns": [9130{9131"match": "\\*",9132"name": "storage.modifier.pointer.cpp"9133},9134{9135"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",9136"captures": {9137"1": {9138"patterns": [9139{9140"include": "#inline_comment"9141}9142]9143},9144"2": {9145"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9146},9147"3": {9148"name": "comment.block.cpp"9149},9150"4": {9151"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9152}9153},9154"name": "invalid.illegal.reference-type.cpp"9155},9156{9157"match": "\\&",9158"name": "storage.modifier.reference.cpp"9159}9160]9161},9162"8": {9163"patterns": [9164{9165"include": "#inline_comment"9166}9167]9168},9169"9": {9170"patterns": [9171{9172"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9173"captures": {9174"1": {9175"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9176},9177"2": {9178"name": "comment.block.cpp"9179},9180"3": {9181"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9182}9183}9184}9185]9186},9187"10": {9188"patterns": [9189{9190"include": "#inline_comment"9191}9192]9193},9194"11": {9195"patterns": [9196{9197"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9198"captures": {9199"1": {9200"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9201},9202"2": {9203"name": "comment.block.cpp"9204},9205"3": {9206"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9207}9208}9209}9210]9211},9212"12": {9213"patterns": [9214{9215"include": "#inline_comment"9216}9217]9218},9219"13": {9220"patterns": [9221{9222"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9223"captures": {9224"1": {9225"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9226},9227"2": {9228"name": "comment.block.cpp"9229},9230"3": {9231"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9232}9233}9234}9235]9236},9237"14": {9238"name": "variable.other.object.declare.cpp"9239},9240"15": {9241"patterns": [9242{9243"include": "#inline_comment"9244}9245]9246},9247"16": {9248"patterns": [9249{9250"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9251"captures": {9252"1": {9253"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9254},9255"2": {9256"name": "comment.block.cpp"9257},9258"3": {9259"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9260}9261}9262}9263]9264},9265"17": {9266"patterns": [9267{9268"include": "#inline_comment"9269}9270]9271},9272"18": {9273"patterns": [9274{9275"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9276"captures": {9277"1": {9278"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9279},9280"2": {9281"name": "comment.block.cpp"9282},9283"3": {9284"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9285}9286}9287}9288]9289},9290"19": {9291"patterns": [9292{9293"include": "#inline_comment"9294}9295]9296},9297"20": {9298"patterns": [9299{9300"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9301"captures": {9302"1": {9303"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9304},9305"2": {9306"name": "comment.block.cpp"9307},9308"3": {9309"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9310}9311}9312}9313]9314}9315}9316},9317{9318"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)",9319"captures": {9320"1": {9321"name": "storage.type.class.parameter.cpp"9322},9323"2": {9324"patterns": [9325{9326"include": "#inline_comment"9327}9328]9329},9330"3": {9331"patterns": [9332{9333"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9334"captures": {9335"1": {9336"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9337},9338"2": {9339"name": "comment.block.cpp"9340},9341"3": {9342"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9343}9344}9345}9346]9347},9348"4": {9349"name": "entity.name.type.class.parameter.cpp"9350},9351"5": {9352"patterns": [9353{9354"include": "#inline_comment"9355}9356]9357},9358"6": {9359"patterns": [9360{9361"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9362"captures": {9363"1": {9364"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9365},9366"2": {9367"name": "comment.block.cpp"9368},9369"3": {9370"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9371}9372}9373}9374]9375},9376"7": {9377"patterns": [9378{9379"match": "\\*",9380"name": "storage.modifier.pointer.cpp"9381},9382{9383"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",9384"captures": {9385"1": {9386"patterns": [9387{9388"include": "#inline_comment"9389}9390]9391},9392"2": {9393"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9394},9395"3": {9396"name": "comment.block.cpp"9397},9398"4": {9399"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9400}9401},9402"name": "invalid.illegal.reference-type.cpp"9403},9404{9405"match": "\\&",9406"name": "storage.modifier.reference.cpp"9407}9408]9409},9410"8": {9411"patterns": [9412{9413"include": "#inline_comment"9414}9415]9416},9417"9": {9418"patterns": [9419{9420"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9421"captures": {9422"1": {9423"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9424},9425"2": {9426"name": "comment.block.cpp"9427},9428"3": {9429"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9430}9431}9432}9433]9434},9435"10": {9436"patterns": [9437{9438"include": "#inline_comment"9439}9440]9441},9442"11": {9443"patterns": [9444{9445"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9446"captures": {9447"1": {9448"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9449},9450"2": {9451"name": "comment.block.cpp"9452},9453"3": {9454"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9455}9456}9457}9458]9459},9460"12": {9461"patterns": [9462{9463"include": "#inline_comment"9464}9465]9466},9467"13": {9468"patterns": [9469{9470"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9471"captures": {9472"1": {9473"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9474},9475"2": {9476"name": "comment.block.cpp"9477},9478"3": {9479"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9480}9481}9482}9483]9484},9485"14": {9486"name": "variable.other.object.declare.cpp"9487},9488"15": {9489"patterns": [9490{9491"include": "#inline_comment"9492}9493]9494},9495"16": {9496"patterns": [9497{9498"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9499"captures": {9500"1": {9501"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9502},9503"2": {9504"name": "comment.block.cpp"9505},9506"3": {9507"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9508}9509}9510}9511]9512},9513"17": {9514"patterns": [9515{9516"include": "#inline_comment"9517}9518]9519},9520"18": {9521"patterns": [9522{9523"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9524"captures": {9525"1": {9526"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9527},9528"2": {9529"name": "comment.block.cpp"9530},9531"3": {9532"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9533}9534}9535}9536]9537},9538"19": {9539"patterns": [9540{9541"include": "#inline_comment"9542}9543]9544},9545"20": {9546"patterns": [9547{9548"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9549"captures": {9550"1": {9551"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9552},9553"2": {9554"name": "comment.block.cpp"9555},9556"3": {9557"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9558}9559}9560}9561]9562}9563}9564}9565]9566},9567"parameter": {9568"begin": "((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?=\\w)",9569"end": "(?:(?=\\))|(,))|(?=\\\\end\\{(?:minted|cppcode)\\})",9570"beginCaptures": {9571"1": {9572"patterns": [9573{9574"include": "#inline_comment"9575}9576]9577},9578"2": {9579"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9580},9581"3": {9582"name": "comment.block.cpp"9583},9584"4": {9585"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9586}9587},9588"endCaptures": {9589"1": {9590"name": "punctuation.separator.delimiter.comma.cpp"9591}9592},9593"name": "meta.parameter.cpp",9594"patterns": [9595{9596"include": "#ever_present_context"9597},9598{9599"include": "#string_context"9600},9601{9602"include": "#function_pointer_parameter"9603},9604{9605"include": "#decltype"9606},9607{9608"include": "#vararg_ellipses"9609},9610{9611"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))(?=,|\\)|=)",9612"captures": {9613"1": {9614"patterns": [9615{9616"include": "#storage_types"9617}9618]9619},9620"2": {9621"name": "storage.modifier.specifier.parameter.cpp"9622},9623"3": {9624"patterns": [9625{9626"include": "#inline_comment"9627}9628]9629},9630"4": {9631"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9632},9633"5": {9634"name": "comment.block.cpp"9635},9636"6": {9637"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9638},9639"7": {9640"patterns": [9641{9642"include": "#inline_comment"9643}9644]9645},9646"8": {9647"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9648},9649"9": {9650"name": "comment.block.cpp"9651},9652"10": {9653"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9654},9655"11": {9656"name": "storage.type.primitive.cpp storage.type.built-in.primitive.cpp"9657},9658"12": {9659"name": "storage.type.cpp storage.type.built-in.cpp"9660},9661"13": {9662"name": "support.type.posix-reserved.pthread.cpp support.type.built-in.posix-reserved.pthread.cpp"9663},9664"14": {9665"name": "support.type.posix-reserved.cpp support.type.built-in.posix-reserved.cpp"9666},9667"15": {9668"name": "entity.name.type.parameter.cpp"9669},9670"16": {9671"patterns": [9672{9673"include": "#inline_comment"9674}9675]9676},9677"17": {9678"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9679},9680"18": {9681"name": "comment.block.cpp"9682},9683"19": {9684"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9685}9686}9687},9688{9689"include": "#storage_types"9690},9691{9692"include": "#scope_resolution_parameter_inner_generated"9693},9694{9695"match": "(?<!\\w)(?:struct|class|union|enum)(?!\\w)",9696"name": "storage.type.$0.cpp"9697},9698{9699"begin": "(?<==)",9700"end": "(?:(?=\\))|(,))|(?=\\\\end\\{(?:minted|cppcode)\\})",9701"beginCaptures": {},9702"endCaptures": {9703"1": {9704"name": "punctuation.separator.delimiter.comma.cpp"9705}9706},9707"patterns": [9708{9709"include": "#evaluation_context"9710}9711]9712},9713{9714"match": "\\=",9715"name": "keyword.operator.assignment.cpp"9716},9717{9718"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)",9719"captures": {9720"1": {9721"patterns": [9722{9723"include": "#inline_comment"9724}9725]9726},9727"2": {9728"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9729},9730"3": {9731"name": "comment.block.cpp"9732},9733"4": {9734"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9735},9736"5": {9737"name": "variable.parameter.cpp"9738},9739"6": {9740"patterns": [9741{9742"include": "#inline_comment"9743}9744]9745},9746"7": {9747"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9748},9749"8": {9750"name": "comment.block.cpp"9751},9752"9": {9753"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9754}9755}9756},9757{9758"include": "#attributes_context"9759},9760{9761"begin": "\\[",9762"end": "\\]|(?=\\\\end\\{(?:minted|cppcode)\\})",9763"beginCaptures": {9764"0": {9765"name": "punctuation.definition.begin.bracket.square.array.type.cpp"9766}9767},9768"endCaptures": {9769"0": {9770"name": "punctuation.definition.end.bracket.square.array.type.cpp"9771}9772},9773"name": "meta.bracket.square.array.cpp",9774"patterns": [9775{9776"include": "#evaluation_context"9777}9778]9779},9780{9781"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)",9782"name": "entity.name.type.parameter.cpp"9783},9784{9785"include": "#template_call_range_helper"9786},9787{9788"match": "((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))?(?:(?:&|\\*)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:&|\\*)",9789"captures": {9790"0": {9791"patterns": [9792{9793"match": "\\*",9794"name": "storage.modifier.pointer.cpp"9795},9796{9797"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",9798"captures": {9799"1": {9800"patterns": [9801{9802"include": "#inline_comment"9803}9804]9805},9806"2": {9807"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9808},9809"3": {9810"name": "comment.block.cpp"9811},9812"4": {9813"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9814}9815},9816"name": "invalid.illegal.reference-type.cpp"9817},9818{9819"match": "\\&",9820"name": "storage.modifier.reference.cpp"9821}9822]9823},9824"1": {9825"patterns": [9826{9827"include": "#inline_comment"9828}9829]9830},9831"2": {9832"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9833},9834"3": {9835"name": "comment.block.cpp"9836},9837"4": {9838"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9839},9840"5": {9841"patterns": [9842{9843"include": "#inline_comment"9844}9845]9846},9847"6": {9848"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9849},9850"7": {9851"name": "comment.block.cpp"9852},9853"8": {9854"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9855}9856}9857},9858{9859"include": "#ever_present_context"9860}9861]9862},9863"parameter_class": {9864"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)",9865"captures": {9866"1": {9867"name": "storage.type.class.parameter.cpp"9868},9869"2": {9870"patterns": [9871{9872"include": "#inline_comment"9873}9874]9875},9876"3": {9877"patterns": [9878{9879"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9880"captures": {9881"1": {9882"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9883},9884"2": {9885"name": "comment.block.cpp"9886},9887"3": {9888"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9889}9890}9891}9892]9893},9894"4": {9895"name": "entity.name.type.class.parameter.cpp"9896},9897"5": {9898"patterns": [9899{9900"include": "#inline_comment"9901}9902]9903},9904"6": {9905"patterns": [9906{9907"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9908"captures": {9909"1": {9910"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9911},9912"2": {9913"name": "comment.block.cpp"9914},9915"3": {9916"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9917}9918}9919}9920]9921},9922"7": {9923"patterns": [9924{9925"match": "\\*",9926"name": "storage.modifier.pointer.cpp"9927},9928{9929"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",9930"captures": {9931"1": {9932"patterns": [9933{9934"include": "#inline_comment"9935}9936]9937},9938"2": {9939"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9940},9941"3": {9942"name": "comment.block.cpp"9943},9944"4": {9945"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9946}9947},9948"name": "invalid.illegal.reference-type.cpp"9949},9950{9951"match": "\\&",9952"name": "storage.modifier.reference.cpp"9953}9954]9955},9956"8": {9957"patterns": [9958{9959"include": "#inline_comment"9960}9961]9962},9963"9": {9964"patterns": [9965{9966"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9967"captures": {9968"1": {9969"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9970},9971"2": {9972"name": "comment.block.cpp"9973},9974"3": {9975"name": "comment.block.cpp punctuation.definition.comment.end.cpp"9976}9977}9978}9979]9980},9981"10": {9982"patterns": [9983{9984"include": "#inline_comment"9985}9986]9987},9988"11": {9989"patterns": [9990{9991"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",9992"captures": {9993"1": {9994"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"9995},9996"2": {9997"name": "comment.block.cpp"9998},9999"3": {10000"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10001}10002}10003}10004]10005},10006"12": {10007"patterns": [10008{10009"include": "#inline_comment"10010}10011]10012},10013"13": {10014"patterns": [10015{10016"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10017"captures": {10018"1": {10019"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10020},10021"2": {10022"name": "comment.block.cpp"10023},10024"3": {10025"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10026}10027}10028}10029]10030},10031"14": {10032"name": "variable.other.object.declare.cpp"10033},10034"15": {10035"patterns": [10036{10037"include": "#inline_comment"10038}10039]10040},10041"16": {10042"patterns": [10043{10044"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10045"captures": {10046"1": {10047"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10048},10049"2": {10050"name": "comment.block.cpp"10051},10052"3": {10053"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10054}10055}10056}10057]10058},10059"17": {10060"patterns": [10061{10062"include": "#inline_comment"10063}10064]10065},10066"18": {10067"patterns": [10068{10069"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10070"captures": {10071"1": {10072"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10073},10074"2": {10075"name": "comment.block.cpp"10076},10077"3": {10078"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10079}10080}10081}10082]10083},10084"19": {10085"patterns": [10086{10087"include": "#inline_comment"10088}10089]10090},10091"20": {10092"patterns": [10093{10094"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10095"captures": {10096"1": {10097"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10098},10099"2": {10100"name": "comment.block.cpp"10101},10102"3": {10103"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10104}10105}10106}10107]10108}10109}10110},10111"parameter_enum": {10112"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)",10113"captures": {10114"1": {10115"name": "storage.type.enum.parameter.cpp"10116},10117"2": {10118"patterns": [10119{10120"include": "#inline_comment"10121}10122]10123},10124"3": {10125"patterns": [10126{10127"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10128"captures": {10129"1": {10130"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10131},10132"2": {10133"name": "comment.block.cpp"10134},10135"3": {10136"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10137}10138}10139}10140]10141},10142"4": {10143"name": "entity.name.type.enum.parameter.cpp"10144},10145"5": {10146"patterns": [10147{10148"include": "#inline_comment"10149}10150]10151},10152"6": {10153"patterns": [10154{10155"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10156"captures": {10157"1": {10158"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10159},10160"2": {10161"name": "comment.block.cpp"10162},10163"3": {10164"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10165}10166}10167}10168]10169},10170"7": {10171"patterns": [10172{10173"match": "\\*",10174"name": "storage.modifier.pointer.cpp"10175},10176{10177"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",10178"captures": {10179"1": {10180"patterns": [10181{10182"include": "#inline_comment"10183}10184]10185},10186"2": {10187"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10188},10189"3": {10190"name": "comment.block.cpp"10191},10192"4": {10193"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10194}10195},10196"name": "invalid.illegal.reference-type.cpp"10197},10198{10199"match": "\\&",10200"name": "storage.modifier.reference.cpp"10201}10202]10203},10204"8": {10205"patterns": [10206{10207"include": "#inline_comment"10208}10209]10210},10211"9": {10212"patterns": [10213{10214"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10215"captures": {10216"1": {10217"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10218},10219"2": {10220"name": "comment.block.cpp"10221},10222"3": {10223"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10224}10225}10226}10227]10228},10229"10": {10230"patterns": [10231{10232"include": "#inline_comment"10233}10234]10235},10236"11": {10237"patterns": [10238{10239"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10240"captures": {10241"1": {10242"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10243},10244"2": {10245"name": "comment.block.cpp"10246},10247"3": {10248"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10249}10250}10251}10252]10253},10254"12": {10255"patterns": [10256{10257"include": "#inline_comment"10258}10259]10260},10261"13": {10262"patterns": [10263{10264"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10265"captures": {10266"1": {10267"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10268},10269"2": {10270"name": "comment.block.cpp"10271},10272"3": {10273"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10274}10275}10276}10277]10278},10279"14": {10280"name": "variable.other.object.declare.cpp"10281},10282"15": {10283"patterns": [10284{10285"include": "#inline_comment"10286}10287]10288},10289"16": {10290"patterns": [10291{10292"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10293"captures": {10294"1": {10295"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10296},10297"2": {10298"name": "comment.block.cpp"10299},10300"3": {10301"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10302}10303}10304}10305]10306},10307"17": {10308"patterns": [10309{10310"include": "#inline_comment"10311}10312]10313},10314"18": {10315"patterns": [10316{10317"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10318"captures": {10319"1": {10320"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10321},10322"2": {10323"name": "comment.block.cpp"10324},10325"3": {10326"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10327}10328}10329}10330]10331},10332"19": {10333"patterns": [10334{10335"include": "#inline_comment"10336}10337]10338},10339"20": {10340"patterns": [10341{10342"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10343"captures": {10344"1": {10345"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10346},10347"2": {10348"name": "comment.block.cpp"10349},10350"3": {10351"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10352}10353}10354}10355]10356}10357}10358},10359"parameter_or_maybe_value": {10360"begin": "((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?=\\w)",10361"end": "(?:(?=\\))|(,))|(?=\\\\end\\{(?:minted|cppcode)\\})",10362"beginCaptures": {10363"1": {10364"patterns": [10365{10366"include": "#inline_comment"10367}10368]10369},10370"2": {10371"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10372},10373"3": {10374"name": "comment.block.cpp"10375},10376"4": {10377"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10378}10379},10380"endCaptures": {10381"1": {10382"name": "punctuation.separator.delimiter.comma.cpp"10383}10384},10385"name": "meta.parameter.cpp",10386"patterns": [10387{10388"include": "#ever_present_context"10389},10390{10391"include": "#function_pointer_parameter"10392},10393{10394"include": "#memory_operators"10395},10396{10397"include": "#builtin_storage_type_initilizer"10398},10399{10400"include": "#curly_initializer"10401},10402{10403"include": "#decltype"10404},10405{10406"include": "#vararg_ellipses"10407},10408{10409"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))(?=,|\\)|=)",10410"captures": {10411"1": {10412"patterns": [10413{10414"include": "#storage_types"10415}10416]10417},10418"2": {10419"name": "storage.modifier.specifier.parameter.cpp"10420},10421"3": {10422"patterns": [10423{10424"include": "#inline_comment"10425}10426]10427},10428"4": {10429"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10430},10431"5": {10432"name": "comment.block.cpp"10433},10434"6": {10435"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10436},10437"7": {10438"patterns": [10439{10440"include": "#inline_comment"10441}10442]10443},10444"8": {10445"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10446},10447"9": {10448"name": "comment.block.cpp"10449},10450"10": {10451"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10452},10453"11": {10454"name": "storage.type.primitive.cpp storage.type.built-in.primitive.cpp"10455},10456"12": {10457"name": "storage.type.cpp storage.type.built-in.cpp"10458},10459"13": {10460"name": "support.type.posix-reserved.pthread.cpp support.type.built-in.posix-reserved.pthread.cpp"10461},10462"14": {10463"name": "support.type.posix-reserved.cpp support.type.built-in.posix-reserved.cpp"10464},10465"15": {10466"name": "entity.name.type.parameter.cpp"10467},10468"16": {10469"patterns": [10470{10471"include": "#inline_comment"10472}10473]10474},10475"17": {10476"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10477},10478"18": {10479"name": "comment.block.cpp"10480},10481"19": {10482"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10483}10484}10485},10486{10487"include": "#storage_types"10488},10489{10490"include": "#function_call"10491},10492{10493"include": "#scope_resolution_parameter_inner_generated"10494},10495{10496"match": "(?<!\\w)(?:struct|class|union|enum)(?!\\w)",10497"name": "storage.type.$0.cpp"10498},10499{10500"begin": "(?<==)",10501"end": "(?:(?=\\))|(,))|(?=\\\\end\\{(?:minted|cppcode)\\})",10502"beginCaptures": {},10503"endCaptures": {10504"1": {10505"name": "punctuation.separator.delimiter.comma.cpp"10506}10507},10508"patterns": [10509{10510"include": "#evaluation_context"10511}10512]10513},10514{10515"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|$)))",10516"captures": {10517"1": {10518"patterns": [10519{10520"include": "#inline_comment"10521}10522]10523},10524"2": {10525"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10526},10527"3": {10528"name": "comment.block.cpp"10529},10530"4": {10531"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10532},10533"5": {10534"name": "variable.parameter.cpp"10535},10536"6": {10537"patterns": [10538{10539"include": "#inline_comment"10540}10541]10542},10543"7": {10544"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10545},10546"8": {10547"name": "comment.block.cpp"10548},10549"9": {10550"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10551}10552}10553},10554{10555"include": "#attributes_context"10556},10557{10558"begin": "\\[",10559"end": "\\]|(?=\\\\end\\{(?:minted|cppcode)\\})",10560"beginCaptures": {10561"0": {10562"name": "punctuation.definition.begin.bracket.square.array.type.cpp"10563}10564},10565"endCaptures": {10566"0": {10567"name": "punctuation.definition.end.bracket.square.array.type.cpp"10568}10569},10570"name": "meta.bracket.square.array.cpp",10571"patterns": [10572{10573"include": "#evaluation_context"10574}10575]10576},10577{10578"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)",10579"name": "entity.name.type.parameter.cpp"10580},10581{10582"include": "#template_call_range_helper"10583},10584{10585"match": "((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))?(?:(?:&|\\*)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))*(?:&|\\*)",10586"captures": {10587"0": {10588"patterns": [10589{10590"match": "\\*",10591"name": "storage.modifier.pointer.cpp"10592},10593{10594"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",10595"captures": {10596"1": {10597"patterns": [10598{10599"include": "#inline_comment"10600}10601]10602},10603"2": {10604"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10605},10606"3": {10607"name": "comment.block.cpp"10608},10609"4": {10610"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10611}10612},10613"name": "invalid.illegal.reference-type.cpp"10614},10615{10616"match": "\\&",10617"name": "storage.modifier.reference.cpp"10618}10619]10620},10621"1": {10622"patterns": [10623{10624"include": "#inline_comment"10625}10626]10627},10628"2": {10629"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10630},10631"3": {10632"name": "comment.block.cpp"10633},10634"4": {10635"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10636},10637"5": {10638"patterns": [10639{10640"include": "#inline_comment"10641}10642]10643},10644"6": {10645"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10646},10647"7": {10648"name": "comment.block.cpp"10649},10650"8": {10651"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10652}10653}10654},10655{10656"include": "#evaluation_context"10657},10658{10659"include": "#ever_present_context"10660}10661]10662},10663"parameter_struct": {10664"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)",10665"captures": {10666"1": {10667"name": "storage.type.struct.parameter.cpp"10668},10669"2": {10670"patterns": [10671{10672"include": "#inline_comment"10673}10674]10675},10676"3": {10677"patterns": [10678{10679"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10680"captures": {10681"1": {10682"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10683},10684"2": {10685"name": "comment.block.cpp"10686},10687"3": {10688"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10689}10690}10691}10692]10693},10694"4": {10695"name": "entity.name.type.struct.parameter.cpp"10696},10697"5": {10698"patterns": [10699{10700"include": "#inline_comment"10701}10702]10703},10704"6": {10705"patterns": [10706{10707"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10708"captures": {10709"1": {10710"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10711},10712"2": {10713"name": "comment.block.cpp"10714},10715"3": {10716"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10717}10718}10719}10720]10721},10722"7": {10723"patterns": [10724{10725"match": "\\*",10726"name": "storage.modifier.pointer.cpp"10727},10728{10729"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",10730"captures": {10731"1": {10732"patterns": [10733{10734"include": "#inline_comment"10735}10736]10737},10738"2": {10739"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10740},10741"3": {10742"name": "comment.block.cpp"10743},10744"4": {10745"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10746}10747},10748"name": "invalid.illegal.reference-type.cpp"10749},10750{10751"match": "\\&",10752"name": "storage.modifier.reference.cpp"10753}10754]10755},10756"8": {10757"patterns": [10758{10759"include": "#inline_comment"10760}10761]10762},10763"9": {10764"patterns": [10765{10766"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10767"captures": {10768"1": {10769"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10770},10771"2": {10772"name": "comment.block.cpp"10773},10774"3": {10775"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10776}10777}10778}10779]10780},10781"10": {10782"patterns": [10783{10784"include": "#inline_comment"10785}10786]10787},10788"11": {10789"patterns": [10790{10791"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10792"captures": {10793"1": {10794"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10795},10796"2": {10797"name": "comment.block.cpp"10798},10799"3": {10800"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10801}10802}10803}10804]10805},10806"12": {10807"patterns": [10808{10809"include": "#inline_comment"10810}10811]10812},10813"13": {10814"patterns": [10815{10816"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10817"captures": {10818"1": {10819"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10820},10821"2": {10822"name": "comment.block.cpp"10823},10824"3": {10825"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10826}10827}10828}10829]10830},10831"14": {10832"name": "variable.other.object.declare.cpp"10833},10834"15": {10835"patterns": [10836{10837"include": "#inline_comment"10838}10839]10840},10841"16": {10842"patterns": [10843{10844"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10845"captures": {10846"1": {10847"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10848},10849"2": {10850"name": "comment.block.cpp"10851},10852"3": {10853"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10854}10855}10856}10857]10858},10859"17": {10860"patterns": [10861{10862"include": "#inline_comment"10863}10864]10865},10866"18": {10867"patterns": [10868{10869"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10870"captures": {10871"1": {10872"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10873},10874"2": {10875"name": "comment.block.cpp"10876},10877"3": {10878"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10879}10880}10881}10882]10883},10884"19": {10885"patterns": [10886{10887"include": "#inline_comment"10888}10889]10890},10891"20": {10892"patterns": [10893{10894"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10895"captures": {10896"1": {10897"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10898},10899"2": {10900"name": "comment.block.cpp"10901},10902"3": {10903"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10904}10905}10906}10907]10908}10909}10910},10911"parameter_union": {10912"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)",10913"captures": {10914"1": {10915"name": "storage.type.union.parameter.cpp"10916},10917"2": {10918"patterns": [10919{10920"include": "#inline_comment"10921}10922]10923},10924"3": {10925"patterns": [10926{10927"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10928"captures": {10929"1": {10930"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10931},10932"2": {10933"name": "comment.block.cpp"10934},10935"3": {10936"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10937}10938}10939}10940]10941},10942"4": {10943"name": "entity.name.type.union.parameter.cpp"10944},10945"5": {10946"patterns": [10947{10948"include": "#inline_comment"10949}10950]10951},10952"6": {10953"patterns": [10954{10955"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",10956"captures": {10957"1": {10958"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10959},10960"2": {10961"name": "comment.block.cpp"10962},10963"3": {10964"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10965}10966}10967}10968]10969},10970"7": {10971"patterns": [10972{10973"match": "\\*",10974"name": "storage.modifier.pointer.cpp"10975},10976{10977"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",10978"captures": {10979"1": {10980"patterns": [10981{10982"include": "#inline_comment"10983}10984]10985},10986"2": {10987"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"10988},10989"3": {10990"name": "comment.block.cpp"10991},10992"4": {10993"name": "comment.block.cpp punctuation.definition.comment.end.cpp"10994}10995},10996"name": "invalid.illegal.reference-type.cpp"10997},10998{10999"match": "\\&",11000"name": "storage.modifier.reference.cpp"11001}11002]11003},11004"8": {11005"patterns": [11006{11007"include": "#inline_comment"11008}11009]11010},11011"9": {11012"patterns": [11013{11014"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",11015"captures": {11016"1": {11017"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"11018},11019"2": {11020"name": "comment.block.cpp"11021},11022"3": {11023"name": "comment.block.cpp punctuation.definition.comment.end.cpp"11024}11025}11026}11027]11028},11029"10": {11030"patterns": [11031{11032"include": "#inline_comment"11033}11034]11035},11036"11": {11037"patterns": [11038{11039"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",11040"captures": {11041"1": {11042"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"11043},11044"2": {11045"name": "comment.block.cpp"11046},11047"3": {11048"name": "comment.block.cpp punctuation.definition.comment.end.cpp"11049}11050}11051}11052]11053},11054"12": {11055"patterns": [11056{11057"include": "#inline_comment"11058}11059]11060},11061"13": {11062"patterns": [11063{11064"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",11065"captures": {11066"1": {11067"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"11068},11069"2": {11070"name": "comment.block.cpp"11071},11072"3": {11073"name": "comment.block.cpp punctuation.definition.comment.end.cpp"11074}11075}11076}11077]11078},11079"14": {11080"name": "variable.other.object.declare.cpp"11081},11082"15": {11083"patterns": [11084{11085"include": "#inline_comment"11086}11087]11088},11089"16": {11090"patterns": [11091{11092"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",11093"captures": {11094"1": {11095"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"11096},11097"2": {11098"name": "comment.block.cpp"11099},11100"3": {11101"name": "comment.block.cpp punctuation.definition.comment.end.cpp"11102}11103}11104}11105]11106},11107"17": {11108"patterns": [11109{11110"include": "#inline_comment"11111}11112]11113},11114"18": {11115"patterns": [11116{11117"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",11118"captures": {11119"1": {11120"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"11121},11122"2": {11123"name": "comment.block.cpp"11124},11125"3": {11126"name": "comment.block.cpp punctuation.definition.comment.end.cpp"11127}11128}11129}11130]11131},11132"19": {11133"patterns": [11134{11135"include": "#inline_comment"11136}11137]11138},11139"20": {11140"patterns": [11141{11142"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",11143"captures": {11144"1": {11145"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"11146},11147"2": {11148"name": "comment.block.cpp"11149},11150"3": {11151"name": "comment.block.cpp punctuation.definition.comment.end.cpp"11152}11153}11154}11155]11156}11157}11158},11159"parentheses": {11160"begin": "\\(",11161"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",11162"beginCaptures": {11163"0": {11164"name": "punctuation.section.parens.begin.bracket.round.cpp"11165}11166},11167"endCaptures": {11168"0": {11169"name": "punctuation.section.parens.end.bracket.round.cpp"11170}11171},11172"name": "meta.parens.cpp",11173"patterns": [11174{11175"include": "#range_for_inner"11176},11177{11178"include": "#over_qualified_types"11179},11180{11181"match": "(?<!:):(?!:)",11182"name": "punctuation.separator.colon.range-based.cpp"11183},11184{11185"include": "#evaluation_context"11186}11187]11188},11189"pragma": {11190"begin": "^((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(#)(?:\\s+)?pragma\\b",11191"end": "(?<!\\\\)(?:(?=\\n)|(?<=^\\n|[^\\\\]\\n)(?=$))|(?=\\\\end\\{(?:minted|cppcode)\\})",11192"beginCaptures": {11193"0": {11194"name": "keyword.control.directive.pragma.cpp"11195},11196"1": {11197"patterns": [11198{11199"include": "#inline_comment"11200}11201]11202},11203"2": {11204"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"11205},11206"3": {11207"name": "comment.block.cpp"11208},11209"4": {11210"name": "comment.block.cpp punctuation.definition.comment.end.cpp"11211},11212"5": {11213"name": "punctuation.definition.directive.cpp"11214}11215},11216"endCaptures": {},11217"name": "meta.preprocessor.pragma.cpp",11218"patterns": [11219{11220"include": "#comments"11221},11222{11223"include": "#string_context"11224},11225{11226"match": "[a-zA-Z_$][\\w\\-$]*",11227"name": "entity.other.attribute-name.pragma.preprocessor.cpp"11228},11229{11230"include": "#preprocessor_number_literal"11231},11232{11233"include": "#line_continuation_character"11234}11235]11236},11237"pragma_mark": {11238"match": "(^((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(#)(?:\\s+)?pragma\\s+mark)\\s+(.*)",11239"captures": {11240"1": {11241"name": "keyword.control.directive.pragma.pragma-mark.cpp"11242},11243"2": {11244"patterns": [11245{11246"include": "#inline_comment"11247}11248]11249},11250"3": {11251"patterns": [11252{11253"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",11254"captures": {11255"1": {11256"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"11257},11258"2": {11259"name": "comment.block.cpp"11260},11261"3": {11262"name": "comment.block.cpp punctuation.definition.comment.end.cpp"11263}11264}11265}11266]11267},11268"4": {11269"name": "punctuation.definition.directive.cpp"11270},11271"5": {11272"name": "entity.name.tag.pragma-mark.cpp"11273}11274},11275"name": "meta.preprocessor.pragma.cpp"11276},11277"predefined_macros": {11278"patterns": [11279{11280"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",11281"captures": {11282"1": {11283"name": "entity.name.other.preprocessor.macro.predefined.$1.cpp"11284}11285}11286},11287{11288"match": "\\b__([A-Z_]+)__\\b",11289"name": "entity.name.other.preprocessor.macro.predefined.probably.$1.cpp"11290}11291]11292},11293"preprocessor_conditional_context": {11294"patterns": [11295{11296"include": "#preprocessor_conditional_defined"11297},11298{11299"include": "#comments"11300},11301{11302"include": "#language_constants"11303},11304{11305"include": "#string_context"11306},11307{11308"include": "#preprocessor_number_literal"11309},11310{11311"include": "#operators"11312},11313{11314"include": "#predefined_macros"11315},11316{11317"include": "#macro_name"11318},11319{11320"include": "#line_continuation_character"11321}11322]11323},11324"preprocessor_conditional_defined": {11325"begin": "((?<!\\w)defined(?!\\w))(\\()",11326"end": "(?:\\)|(?<!\\\\)(?:(?=\\n)|(?<=^\\n|[^\\\\]\\n)(?=$)))|(?=\\\\end\\{(?:minted|cppcode)\\})",11327"beginCaptures": {11328"1": {11329"name": "keyword.control.directive.conditional.defined.cpp"11330},11331"2": {11332"name": "punctuation.section.parens.control.defined.cpp"11333}11334},11335"endCaptures": {11336"0": {11337"name": "punctuation.section.parens.control.defined.cpp"11338}11339},11340"patterns": [11341{11342"include": "#macro_name"11343}11344]11345},11346"preprocessor_conditional_parentheses": {11347"begin": "\\(",11348"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",11349"beginCaptures": {11350"0": {11351"name": "punctuation.section.parens.begin.bracket.round.cpp"11352}11353},11354"endCaptures": {11355"0": {11356"name": "punctuation.section.parens.end.bracket.round.cpp"11357}11358},11359"name": "meta.parens.preprocessor.conditional.cpp"11360},11361"preprocessor_conditional_range": {11362"begin": "^((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(#)(?:\\s+)?((?:(?:ifndef|ifdef)|if))",11363"end": "(?<!\\\\)(?:(?=\\n)|(?<=^\\n|[^\\\\]\\n)(?=$))|(?=\\\\end\\{(?:minted|cppcode)\\})",11364"beginCaptures": {11365"0": {11366"name": "keyword.control.directive.conditional.$6.cpp"11367},11368"1": {11369"patterns": [11370{11371"include": "#inline_comment"11372}11373]11374},11375"2": {11376"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"11377},11378"3": {11379"name": "comment.block.cpp"11380},11381"4": {11382"name": "comment.block.cpp punctuation.definition.comment.end.cpp"11383},11384"5": {11385"name": "punctuation.definition.directive.cpp"11386},11387"6": {}11388},11389"endCaptures": {},11390"contentName": "meta.preprocessor.conditional",11391"patterns": [11392{11393"include": "#preprocessor_conditional_context"11394}11395]11396},11397"preprocessor_conditional_standalone": {11398"match": "^((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(#)(?:\\s+)?((?<!\\w)(?:endif|else|elif|elifdef|elifndef)(?!\\w))",11399"captures": {11400"1": {11401"patterns": [11402{11403"include": "#inline_comment"11404}11405]11406},11407"2": {11408"patterns": [11409{11410"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",11411"captures": {11412"1": {11413"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"11414},11415"2": {11416"name": "comment.block.cpp"11417},11418"3": {11419"name": "comment.block.cpp punctuation.definition.comment.end.cpp"11420}11421}11422}11423]11424},11425"3": {11426"name": "punctuation.definition.directive.cpp"11427}11428},11429"name": "keyword.control.directive.$4.cpp"11430},11431"preprocessor_context": {11432"patterns": [11433{11434"include": "#pragma_mark"11435},11436{11437"include": "#pragma"11438},11439{11440"include": "#include"11441},11442{11443"include": "#line"11444},11445{11446"include": "#diagnostic"11447},11448{11449"include": "#undef"11450},11451{11452"include": "#preprocessor_conditional_range"11453},11454{11455"include": "#macro"11456},11457{11458"include": "#preprocessor_conditional_standalone"11459},11460{11461"include": "#macro_argument"11462}11463]11464},11465"preprocessor_number_literal": {11466"match": "(?<!\\w)\\.?\\d(?:(?:[0-9a-zA-Z_\\.]|')|(?<=[eEpP])[+-])*",11467"captures": {11468"0": {11469"patterns": [11470{11471"begin": "(?=.)",11472"end": "$|(?=\\\\end\\{(?:minted|cppcode)\\})",11473"beginCaptures": {},11474"endCaptures": {},11475"patterns": [11476{11477"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))?$",11478"captures": {11479"1": {11480"name": "keyword.other.unit.hexadecimal.cpp"11481},11482"2": {11483"name": "constant.numeric.hexadecimal.cpp",11484"patterns": [11485{11486"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",11487"name": "punctuation.separator.constant.numeric.cpp"11488}11489]11490},11491"3": {11492"name": "punctuation.separator.constant.numeric.cpp"11493},11494"4": {11495"name": "constant.numeric.hexadecimal.cpp"11496},11497"5": {11498"name": "constant.numeric.hexadecimal.cpp",11499"patterns": [11500{11501"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",11502"name": "punctuation.separator.constant.numeric.cpp"11503}11504]11505},11506"6": {11507"name": "punctuation.separator.constant.numeric.cpp"11508},11509"7": {11510"name": "keyword.other.unit.exponent.hexadecimal.cpp"11511},11512"8": {11513"name": "keyword.operator.plus.exponent.hexadecimal.cpp"11514},11515"9": {11516"name": "keyword.operator.minus.exponent.hexadecimal.cpp"11517},11518"10": {11519"name": "constant.numeric.exponent.hexadecimal.cpp",11520"patterns": [11521{11522"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",11523"name": "punctuation.separator.constant.numeric.cpp"11524}11525]11526},11527"11": {11528"name": "keyword.other.suffix.literal.built-in.floating-point.cpp keyword.other.unit.suffix.floating-point.cpp"11529}11530}11531},11532{11533"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))?$",11534"captures": {11535"1": {11536"name": "constant.numeric.decimal.cpp",11537"patterns": [11538{11539"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",11540"name": "punctuation.separator.constant.numeric.cpp"11541}11542]11543},11544"2": {11545"name": "punctuation.separator.constant.numeric.cpp"11546},11547"3": {11548"name": "constant.numeric.decimal.point.cpp"11549},11550"4": {11551"name": "constant.numeric.decimal.cpp",11552"patterns": [11553{11554"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",11555"name": "punctuation.separator.constant.numeric.cpp"11556}11557]11558},11559"5": {11560"name": "punctuation.separator.constant.numeric.cpp"11561},11562"6": {11563"name": "keyword.other.unit.exponent.decimal.cpp"11564},11565"7": {11566"name": "keyword.operator.plus.exponent.decimal.cpp"11567},11568"8": {11569"name": "keyword.operator.minus.exponent.decimal.cpp"11570},11571"9": {11572"name": "constant.numeric.exponent.decimal.cpp",11573"patterns": [11574{11575"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",11576"name": "punctuation.separator.constant.numeric.cpp"11577}11578]11579},11580"10": {11581"name": "keyword.other.suffix.literal.built-in.floating-point.cpp keyword.other.unit.suffix.floating-point.cpp"11582}11583}11584},11585{11586"match": "(\\G0[bB])([01](?:[01]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)((?:[uU]|(?:[uU]ll?)|(?:[uU]LL?)|(?:ll?[uU]?)|(?:LL?[uU]?)|[fF])(?!\\w))?$",11587"captures": {11588"1": {11589"name": "keyword.other.unit.binary.cpp"11590},11591"2": {11592"name": "constant.numeric.binary.cpp",11593"patterns": [11594{11595"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",11596"name": "punctuation.separator.constant.numeric.cpp"11597}11598]11599},11600"3": {11601"name": "punctuation.separator.constant.numeric.cpp"11602},11603"4": {11604"name": "keyword.other.suffix.literal.built-in.integer.cpp keyword.other.unit.suffix.integer.cpp"11605}11606}11607},11608{11609"match": "(\\G0)((?:[0-7]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))+)((?:[uU]|(?:[uU]ll?)|(?:[uU]LL?)|(?:ll?[uU]?)|(?:LL?[uU]?)|[fF])(?!\\w))?$",11610"captures": {11611"1": {11612"name": "keyword.other.unit.octal.cpp"11613},11614"2": {11615"name": "constant.numeric.octal.cpp",11616"patterns": [11617{11618"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",11619"name": "punctuation.separator.constant.numeric.cpp"11620}11621]11622},11623"3": {11624"name": "punctuation.separator.constant.numeric.cpp"11625},11626"4": {11627"name": "keyword.other.suffix.literal.built-in.integer.cpp keyword.other.unit.suffix.integer.cpp"11628}11629}11630},11631{11632"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))?$",11633"captures": {11634"1": {11635"name": "keyword.other.unit.hexadecimal.cpp"11636},11637"2": {11638"name": "constant.numeric.hexadecimal.cpp",11639"patterns": [11640{11641"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",11642"name": "punctuation.separator.constant.numeric.cpp"11643}11644]11645},11646"3": {11647"name": "punctuation.separator.constant.numeric.cpp"11648},11649"4": {11650"name": "keyword.other.unit.exponent.hexadecimal.cpp"11651},11652"5": {11653"name": "keyword.operator.plus.exponent.hexadecimal.cpp"11654},11655"6": {11656"name": "keyword.operator.minus.exponent.hexadecimal.cpp"11657},11658"7": {11659"name": "constant.numeric.exponent.hexadecimal.cpp",11660"patterns": [11661{11662"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",11663"name": "punctuation.separator.constant.numeric.cpp"11664}11665]11666},11667"8": {11668"name": "keyword.other.suffix.literal.built-in.integer.cpp keyword.other.unit.suffix.integer.cpp"11669}11670}11671},11672{11673"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))?$",11674"captures": {11675"1": {11676"name": "constant.numeric.decimal.cpp",11677"patterns": [11678{11679"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",11680"name": "punctuation.separator.constant.numeric.cpp"11681}11682]11683},11684"2": {11685"name": "punctuation.separator.constant.numeric.cpp"11686},11687"3": {11688"name": "keyword.other.unit.exponent.decimal.cpp"11689},11690"4": {11691"name": "keyword.operator.plus.exponent.decimal.cpp"11692},11693"5": {11694"name": "keyword.operator.minus.exponent.decimal.cpp"11695},11696"6": {11697"name": "constant.numeric.exponent.decimal.cpp",11698"patterns": [11699{11700"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",11701"name": "punctuation.separator.constant.numeric.cpp"11702}11703]11704},11705"7": {11706"name": "keyword.other.suffix.literal.built-in.integer.cpp keyword.other.unit.suffix.integer.cpp"11707}11708}11709},11710{11711"match": "(?:(?:[0-9a-zA-Z_\\.]|')|(?<=[eEpP])[+-])+",11712"name": "invalid.illegal.constant.numeric.cpp"11713}11714]11715}11716]11717}11718}11719},11720"qualified_type": {11721"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<:.])",11722"captures": {11723"0": {11724"patterns": [11725{11726"match": "::",11727"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"11728},11729{11730"match": "(?<!\\w)(?:struct|class|union|enum)(?!\\w)",11731"name": "storage.type.$0.cpp"11732},11733{11734"include": "#attributes_context"11735},11736{11737"include": "#storage_types"11738},11739{11740"include": "#number_literal"11741},11742{11743"include": "#string_context"11744},11745{11746"include": "#comma"11747},11748{11749"include": "#scope_resolution_inner_generated"11750},11751{11752"include": "#template_call_range_helper"11753},11754{11755"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}))*",11756"name": "entity.name.type.cpp"11757}11758]11759},11760"1": {11761"patterns": [11762{11763"include": "#attributes_context"11764},11765{11766"include": "#number_literal"11767}11768]11769},11770"2": {11771"patterns": [11772{11773"include": "#inline_comment"11774}11775]11776},11777"3": {11778"patterns": [11779{11780"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",11781"captures": {11782"1": {11783"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"11784},11785"2": {11786"name": "comment.block.cpp"11787},11788"3": {11789"name": "comment.block.cpp punctuation.definition.comment.end.cpp"11790}11791}11792}11793]11794},11795"4": {11796"patterns": [11797{11798"include": "#inline_comment"11799}11800]11801},11802"5": {11803"patterns": [11804{11805"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",11806"captures": {11807"1": {11808"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"11809},11810"2": {11811"name": "comment.block.cpp"11812},11813"3": {11814"name": "comment.block.cpp punctuation.definition.comment.end.cpp"11815}11816}11817}11818]11819},11820"6": {11821"patterns": [11822{11823"match": "::",11824"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"11825},11826{11827"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)",11828"name": "entity.name.scope-resolution.type.cpp"11829},11830{11831"include": "#template_call_range_helper"11832}11833]11834},11835"7": {11836"patterns": [11837{11838"include": "#template_call_range_helper"11839}11840]11841},11842"9": {11843"patterns": [11844{11845"include": "#inline_comment"11846}11847]11848},11849"10": {11850"patterns": [11851{11852"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",11853"captures": {11854"1": {11855"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"11856},11857"2": {11858"name": "comment.block.cpp"11859},11860"3": {11861"name": "comment.block.cpp punctuation.definition.comment.end.cpp"11862}11863}11864}11865]11866}11867},11868"name": "meta.qualified-type.cpp"11869},11870"qualifiers_and_specifiers_post_parameters": {11871"patterns": [11872{11873"begin": "((?<!\\w)requires(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()",11874"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",11875"beginCaptures": {11876"1": {11877"name": "keyword.other.functionlike.cpp keyword.other.requires.cpp"11878},11879"2": {11880"patterns": [11881{11882"include": "#inline_comment"11883}11884]11885},11886"3": {11887"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"11888},11889"4": {11890"name": "comment.block.cpp"11891},11892"5": {11893"name": "comment.block.cpp punctuation.definition.comment.end.cpp"11894},11895"6": {11896"name": "punctuation.section.arguments.begin.bracket.round.requires.cpp"11897}11898},11899"endCaptures": {11900"0": {11901"name": "punctuation.section.arguments.end.bracket.round.requires.cpp"11902}11903},11904"contentName": "meta.arguments.requires",11905"patterns": [11906{11907"include": "#evaluation_context"11908}11909]11910},11911{11912"match": "((?:(?:(?:(?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)(?<!\\w)(?:override|volatile|noexcept|final|const)(?!\\w))+)(?=\\s*(?:\\{|;|\\n|\\r|=))",11913"captures": {11914"1": {11915"patterns": [11916{11917"match": "((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:override|volatile|noexcept|final|const)(?!\\w))",11918"captures": {11919"1": {11920"patterns": [11921{11922"include": "#inline_comment"11923}11924]11925},11926"2": {11927"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"11928},11929"3": {11930"name": "comment.block.cpp"11931},11932"4": {11933"name": "comment.block.cpp punctuation.definition.comment.end.cpp"11934},11935"5": {11936"name": "storage.modifier.specifier.functional.post-parameters.$5.cpp"11937}11938}11939}11940]11941}11942}11943}11944]11945},11946"qualifiers_and_specifiers_post_parameters_inline": {11947"match": "((?:(?:(?:(?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)(?<!\\w)(?:override|volatile|noexcept|final|const)(?!\\w))+)(?=\\s*(?:\\{|;|\\n|\\r|=))",11948"captures": {11949"1": {11950"patterns": [11951{11952"match": "((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:override|volatile|noexcept|final|const)(?!\\w))",11953"captures": {11954"1": {11955"patterns": [11956{11957"include": "#inline_comment"11958}11959]11960},11961"2": {11962"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"11963},11964"3": {11965"name": "comment.block.cpp"11966},11967"4": {11968"name": "comment.block.cpp punctuation.definition.comment.end.cpp"11969},11970"5": {11971"name": "storage.modifier.specifier.functional.post-parameters.$5.cpp"11972}11973}11974}11975]11976}11977}11978},11979"range_for_inner": {11980"begin": "(?<=\\Wfor \\(|^for \\(|\\Wfor\\(|^for\\()",11981"end": "(?=\\))|(?=\\\\end\\{(?:minted|cppcode)\\})",11982"beginCaptures": {},11983"endCaptures": {},11984"name": "meta.parens.control.for.cpp",11985"patterns": [11986{11987"match": "((?:((?:(?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)(?<!\\w)(?:thread_local|volatile|register|restrict|static|extern|const)(?!\\w)\\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<27>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\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<27>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)?(?![\\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))((?:[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))(:)(?!:)",11988"captures": {11989"1": {11990"name": "meta.type.cpp"11991},11992"2": {11993"patterns": [11994{11995"include": "#storage_specifiers"11996}11997]11998},11999"3": {12000"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12001},12002"4": {12003"name": "comment.block.cpp"12004},12005"5": {12006"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12007},12008"6": {12009"patterns": [12010{12011"include": "#inline_comment"12012}12013]12014},12015"7": {12016"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12017},12018"8": {12019"name": "comment.block.cpp"12020},12021"9": {12022"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12023},12024"10": {12025"name": "meta.qualified-type.cpp",12026"patterns": [12027{12028"match": "::",12029"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"12030},12031{12032"match": "(?<!\\w)(?:struct|class|union|enum)(?!\\w)",12033"name": "storage.type.$0.cpp"12034},12035{12036"include": "#attributes_context"12037},12038{12039"include": "#storage_types"12040},12041{12042"include": "#number_literal"12043},12044{12045"include": "#string_context"12046},12047{12048"include": "#comma"12049},12050{12051"include": "#scope_resolution_inner_generated"12052},12053{12054"include": "#template_call_range_helper"12055},12056{12057"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}))*",12058"name": "entity.name.type.cpp"12059}12060]12061},12062"11": {12063"patterns": [12064{12065"include": "#attributes_context"12066},12067{12068"include": "#number_literal"12069}12070]12071},12072"12": {12073"patterns": [12074{12075"include": "#inline_comment"12076}12077]12078},12079"13": {12080"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12081},12082"14": {12083"name": "comment.block.cpp"12084},12085"15": {12086"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12087},12088"16": {12089"patterns": [12090{12091"include": "#inline_comment"12092}12093]12094},12095"17": {12096"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12097},12098"18": {12099"name": "comment.block.cpp"12100},12101"19": {12102"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12103},12104"20": {12105"patterns": [12106{12107"match": "::",12108"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"12109},12110{12111"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)",12112"name": "entity.name.scope-resolution.type.cpp"12113},12114{12115"include": "#template_call_range_helper"12116}12117]12118},12119"21": {12120"patterns": [12121{12122"include": "#template_call_range_helper"12123}12124]12125},12126"22": {},12127"23": {12128"patterns": [12129{12130"include": "#inline_comment"12131}12132]12133},12134"24": {12135"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12136},12137"25": {12138"name": "comment.block.cpp"12139},12140"26": {12141"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12142},12143"27": {},12144"28": {12145"patterns": [12146{12147"match": "\\*",12148"name": "storage.modifier.pointer.cpp"12149},12150{12151"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",12152"captures": {12153"1": {12154"patterns": [12155{12156"include": "#inline_comment"12157}12158]12159},12160"2": {12161"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12162},12163"3": {12164"name": "comment.block.cpp"12165},12166"4": {12167"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12168}12169},12170"name": "invalid.illegal.reference-type.cpp"12171},12172{12173"match": "\\&",12174"name": "storage.modifier.reference.cpp"12175}12176]12177},12178"29": {12179"patterns": [12180{12181"include": "#inline_comment"12182}12183]12184},12185"30": {12186"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12187},12188"31": {12189"name": "comment.block.cpp"12190},12191"32": {12192"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12193},12194"33": {12195"patterns": [12196{12197"include": "#inline_comment"12198}12199]12200},12201"34": {12202"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12203},12204"35": {12205"name": "comment.block.cpp"12206},12207"36": {12208"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12209},12210"37": {12211"patterns": [12212{12213"include": "#inline_comment"12214}12215]12216},12217"38": {12218"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12219},12220"39": {12221"name": "comment.block.cpp"12222},12223"40": {12224"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12225},12226"41": {12227"name": "variable.other.object.declare.for.cpp"12228},12229"42": {12230"patterns": [12231{12232"include": "#inline_comment"12233}12234]12235},12236"43": {12237"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12238},12239"44": {12240"name": "comment.block.cpp"12241},12242"45": {12243"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12244},12245"46": {12246"name": "punctuation.separator.colon.range-based.cpp"12247}12248}12249},12250{12251"match": "((?:((?:(?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)(?<!\\w)(?:thread_local|volatile|register|restrict|static|extern|const)(?!\\w)\\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<27>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\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<27>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)?(?![\\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))((?:[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))(,)((?:(?:(?:\\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))(\\])((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(:)(?!:)",12252"captures": {12253"1": {12254"name": "meta.type.cpp"12255},12256"2": {12257"patterns": [12258{12259"include": "#storage_specifiers"12260}12261]12262},12263"3": {12264"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12265},12266"4": {12267"name": "comment.block.cpp"12268},12269"5": {12270"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12271},12272"6": {12273"patterns": [12274{12275"include": "#inline_comment"12276}12277]12278},12279"7": {12280"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12281},12282"8": {12283"name": "comment.block.cpp"12284},12285"9": {12286"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12287},12288"10": {12289"name": "meta.qualified-type.cpp",12290"patterns": [12291{12292"match": "::",12293"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"12294},12295{12296"match": "(?<!\\w)(?:struct|class|union|enum)(?!\\w)",12297"name": "storage.type.$0.cpp"12298},12299{12300"include": "#attributes_context"12301},12302{12303"include": "#storage_types"12304},12305{12306"include": "#number_literal"12307},12308{12309"include": "#string_context"12310},12311{12312"include": "#comma"12313},12314{12315"include": "#scope_resolution_inner_generated"12316},12317{12318"include": "#template_call_range_helper"12319},12320{12321"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}))*",12322"name": "entity.name.type.cpp"12323}12324]12325},12326"11": {12327"patterns": [12328{12329"include": "#attributes_context"12330},12331{12332"include": "#number_literal"12333}12334]12335},12336"12": {12337"patterns": [12338{12339"include": "#inline_comment"12340}12341]12342},12343"13": {12344"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12345},12346"14": {12347"name": "comment.block.cpp"12348},12349"15": {12350"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12351},12352"16": {12353"patterns": [12354{12355"include": "#inline_comment"12356}12357]12358},12359"17": {12360"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12361},12362"18": {12363"name": "comment.block.cpp"12364},12365"19": {12366"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12367},12368"20": {12369"patterns": [12370{12371"match": "::",12372"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"12373},12374{12375"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)",12376"name": "entity.name.scope-resolution.type.cpp"12377},12378{12379"include": "#template_call_range_helper"12380}12381]12382},12383"21": {12384"patterns": [12385{12386"include": "#template_call_range_helper"12387}12388]12389},12390"23": {12391"patterns": [12392{12393"include": "#inline_comment"12394}12395]12396},12397"24": {12398"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12399},12400"25": {12401"name": "comment.block.cpp"12402},12403"26": {12404"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12405},12406"28": {12407"patterns": [12408{12409"match": "\\*",12410"name": "storage.modifier.pointer.cpp"12411},12412{12413"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",12414"captures": {12415"1": {12416"patterns": [12417{12418"include": "#inline_comment"12419}12420]12421},12422"2": {12423"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12424},12425"3": {12426"name": "comment.block.cpp"12427},12428"4": {12429"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12430}12431},12432"name": "invalid.illegal.reference-type.cpp"12433},12434{12435"match": "\\&",12436"name": "storage.modifier.reference.cpp"12437}12438]12439},12440"29": {12441"patterns": [12442{12443"include": "#inline_comment"12444}12445]12446},12447"30": {12448"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12449},12450"31": {12451"name": "comment.block.cpp"12452},12453"32": {12454"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12455},12456"33": {12457"patterns": [12458{12459"include": "#inline_comment"12460}12461]12462},12463"34": {12464"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12465},12466"35": {12467"name": "comment.block.cpp"12468},12469"36": {12470"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12471},12472"37": {12473"patterns": [12474{12475"include": "#inline_comment"12476}12477]12478},12479"38": {12480"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12481},12482"39": {12483"name": "comment.block.cpp"12484},12485"40": {12486"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12487},12488"41": {12489"name": "punctuation.definition.begin.bracket.square.binding.cpp"12490},12491"42": {12492"patterns": [12493{12494"include": "#inline_comment"12495}12496]12497},12498"43": {12499"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12500},12501"44": {12502"name": "comment.block.cpp"12503},12504"45": {12505"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12506},12507"46": {12508"name": "variable.other.for.cpp"12509},12510"47": {12511"patterns": [12512{12513"include": "#inline_comment"12514}12515]12516},12517"48": {12518"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12519},12520"49": {12521"name": "comment.block.cpp"12522},12523"50": {12524"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12525},12526"51": {12527"name": "punctuation.separator.delimiter.comma.cpp"12528},12529"52": {12530"patterns": [12531{12532"include": "#inline_comment"12533}12534]12535},12536"53": {12537"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12538},12539"54": {12540"name": "comment.block.cpp"12541},12542"55": {12543"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12544},12545"56": {12546"name": "variable.other.for.cpp"12547},12548"57": {12549"patterns": [12550{12551"include": "#inline_comment"12552}12553]12554},12555"58": {12556"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12557},12558"59": {12559"name": "comment.block.cpp"12560},12561"60": {12562"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12563},12564"61": {12565"name": "punctuation.definition.end.bracket.square.binding.cpp"12566},12567"62": {12568"patterns": [12569{12570"include": "#inline_comment"12571}12572]12573},12574"63": {12575"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12576},12577"64": {12578"name": "comment.block.cpp"12579},12580"65": {12581"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12582},12583"66": {12584"name": "punctuation.separator.colon.range-based.cpp"12585}12586},12587"name": "meta.binding.cpp"12588},12589{12590"include": "#evaluation_context"12591}12592]12593},12594"requires_keyword": {12595"begin": "((?<!\\w)requires(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()",12596"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",12597"beginCaptures": {12598"1": {12599"name": "keyword.other.functionlike.cpp keyword.other.requires.cpp"12600},12601"2": {12602"patterns": [12603{12604"include": "#inline_comment"12605}12606]12607},12608"3": {12609"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12610},12611"4": {12612"name": "comment.block.cpp"12613},12614"5": {12615"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12616},12617"6": {12618"name": "punctuation.section.arguments.begin.bracket.round.requires.cpp"12619}12620},12621"endCaptures": {12622"0": {12623"name": "punctuation.section.arguments.end.bracket.round.requires.cpp"12624}12625},12626"contentName": "meta.arguments.requires",12627"patterns": [12628{12629"include": "#evaluation_context"12630}12631]12632},12633"scope_resolution": {12634"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*+",12635"captures": {12636"0": {12637"patterns": [12638{12639"include": "#scope_resolution_inner_generated"12640}12641]12642},12643"1": {12644"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"12645},12646"2": {12647"patterns": [12648{12649"include": "#template_call_range_helper"12650}12651]12652}12653}12654},12655"scope_resolution_function_call": {12656"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*+",12657"captures": {12658"0": {12659"patterns": [12660{12661"include": "#scope_resolution_function_call_inner_generated"12662}12663]12664},12665"1": {12666"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.call.cpp"12667},12668"2": {12669"patterns": [12670{12671"include": "#template_call_range_helper"12672}12673]12674}12675}12676},12677"scope_resolution_function_call_inner_generated": {12678"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*+)?(::)",12679"captures": {12680"1": {12681"patterns": [12682{12683"include": "#scope_resolution_function_call_inner_generated"12684}12685]12686},12687"2": {12688"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.call.cpp"12689},12690"3": {12691"patterns": [12692{12693"include": "#template_call_range_helper"12694}12695]12696},12697"4": {},12698"5": {12699"name": "entity.name.scope-resolution.function.call.cpp"12700},12701"6": {12702"name": "meta.template.call.cpp",12703"patterns": [12704{12705"include": "#template_call_range_helper"12706}12707]12708},12709"7": {},12710"8": {12711"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12712},12713"9": {12714"name": "comment.block.cpp"12715},12716"10": {12717"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12718},12719"11": {12720"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.call.cpp"12721}12722}12723},12724"scope_resolution_function_definition": {12725"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*+",12726"captures": {12727"0": {12728"patterns": [12729{12730"include": "#scope_resolution_function_definition_inner_generated"12731}12732]12733},12734"1": {12735"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.definition.cpp"12736},12737"2": {12738"patterns": [12739{12740"include": "#template_call_range_helper"12741}12742]12743}12744}12745},12746"scope_resolution_function_definition_inner_generated": {12747"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*+)?(::)",12748"captures": {12749"1": {12750"patterns": [12751{12752"include": "#scope_resolution_function_definition_inner_generated"12753}12754]12755},12756"2": {12757"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.definition.cpp"12758},12759"3": {12760"patterns": [12761{12762"include": "#template_call_range_helper"12763}12764]12765},12766"4": {},12767"5": {12768"name": "entity.name.scope-resolution.function.definition.cpp"12769},12770"6": {12771"name": "meta.template.call.cpp",12772"patterns": [12773{12774"include": "#template_call_range_helper"12775}12776]12777},12778"7": {},12779"8": {12780"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12781},12782"9": {12783"name": "comment.block.cpp"12784},12785"10": {12786"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12787},12788"11": {12789"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.definition.cpp"12790}12791}12792},12793"scope_resolution_function_definition_operator_overload": {12794"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*+",12795"captures": {12796"0": {12797"patterns": [12798{12799"include": "#scope_resolution_function_definition_operator_overload_inner_generated"12800}12801]12802},12803"1": {12804"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.definition.operator-overload.cpp"12805},12806"2": {12807"patterns": [12808{12809"include": "#template_call_range_helper"12810}12811]12812}12813}12814},12815"scope_resolution_function_definition_operator_overload_inner_generated": {12816"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*+)?(::)",12817"captures": {12818"1": {12819"patterns": [12820{12821"include": "#scope_resolution_function_definition_operator_overload_inner_generated"12822}12823]12824},12825"2": {12826"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.definition.operator-overload.cpp"12827},12828"3": {12829"patterns": [12830{12831"include": "#template_call_range_helper"12832}12833]12834},12835"4": {},12836"5": {12837"name": "entity.name.scope-resolution.function.definition.operator-overload.cpp"12838},12839"6": {12840"name": "meta.template.call.cpp",12841"patterns": [12842{12843"include": "#template_call_range_helper"12844}12845]12846},12847"7": {},12848"8": {12849"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12850},12851"9": {12852"name": "comment.block.cpp"12853},12854"10": {12855"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12856},12857"11": {12858"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.definition.operator-overload.cpp"12859}12860}12861},12862"scope_resolution_inner_generated": {12863"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*+)?(::)",12864"captures": {12865"1": {12866"patterns": [12867{12868"include": "#scope_resolution_inner_generated"12869}12870]12871},12872"2": {12873"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"12874},12875"3": {12876"patterns": [12877{12878"include": "#template_call_range_helper"12879}12880]12881},12882"4": {},12883"5": {12884"name": "entity.name.scope-resolution.cpp"12885},12886"6": {12887"name": "meta.template.call.cpp",12888"patterns": [12889{12890"include": "#template_call_range_helper"12891}12892]12893},12894"7": {},12895"8": {12896"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12897},12898"9": {12899"name": "comment.block.cpp"12900},12901"10": {12902"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12903},12904"11": {12905"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"12906}12907}12908},12909"scope_resolution_namespace_alias": {12910"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*+",12911"captures": {12912"0": {12913"patterns": [12914{12915"include": "#scope_resolution_namespace_alias_inner_generated"12916}12917]12918},12919"1": {12920"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.alias.cpp"12921},12922"2": {12923"patterns": [12924{12925"include": "#template_call_range_helper"12926}12927]12928}12929}12930},12931"scope_resolution_namespace_alias_inner_generated": {12932"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*+)?(::)",12933"captures": {12934"1": {12935"patterns": [12936{12937"include": "#scope_resolution_namespace_alias_inner_generated"12938}12939]12940},12941"2": {12942"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.alias.cpp"12943},12944"3": {12945"patterns": [12946{12947"include": "#template_call_range_helper"12948}12949]12950},12951"4": {},12952"5": {12953"name": "entity.name.scope-resolution.namespace.alias.cpp"12954},12955"6": {12956"name": "meta.template.call.cpp",12957"patterns": [12958{12959"include": "#template_call_range_helper"12960}12961]12962},12963"7": {},12964"8": {12965"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"12966},12967"9": {12968"name": "comment.block.cpp"12969},12970"10": {12971"name": "comment.block.cpp punctuation.definition.comment.end.cpp"12972},12973"11": {12974"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.alias.cpp"12975}12976}12977},12978"scope_resolution_namespace_block": {12979"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*+",12980"captures": {12981"0": {12982"patterns": [12983{12984"include": "#scope_resolution_namespace_block_inner_generated"12985}12986]12987},12988"1": {12989"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.block.cpp"12990},12991"2": {12992"patterns": [12993{12994"include": "#template_call_range_helper"12995}12996]12997}12998}12999},13000"scope_resolution_namespace_block_inner_generated": {13001"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*+)?(::)",13002"captures": {13003"1": {13004"patterns": [13005{13006"include": "#scope_resolution_namespace_block_inner_generated"13007}13008]13009},13010"2": {13011"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.block.cpp"13012},13013"3": {13014"patterns": [13015{13016"include": "#template_call_range_helper"13017}13018]13019},13020"4": {},13021"5": {13022"name": "entity.name.scope-resolution.namespace.block.cpp"13023},13024"6": {13025"name": "meta.template.call.cpp",13026"patterns": [13027{13028"include": "#template_call_range_helper"13029}13030]13031},13032"7": {},13033"8": {13034"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13035},13036"9": {13037"name": "comment.block.cpp"13038},13039"10": {13040"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13041},13042"11": {13043"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.block.cpp"13044}13045}13046},13047"scope_resolution_namespace_using": {13048"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*+",13049"captures": {13050"0": {13051"patterns": [13052{13053"include": "#scope_resolution_namespace_using_inner_generated"13054}13055]13056},13057"1": {13058"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.using.cpp"13059},13060"2": {13061"patterns": [13062{13063"include": "#template_call_range_helper"13064}13065]13066}13067}13068},13069"scope_resolution_namespace_using_inner_generated": {13070"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*+)?(::)",13071"captures": {13072"1": {13073"patterns": [13074{13075"include": "#scope_resolution_namespace_using_inner_generated"13076}13077]13078},13079"2": {13080"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.using.cpp"13081},13082"3": {13083"patterns": [13084{13085"include": "#template_call_range_helper"13086}13087]13088},13089"4": {},13090"5": {13091"name": "entity.name.scope-resolution.namespace.using.cpp"13092},13093"6": {13094"name": "meta.template.call.cpp",13095"patterns": [13096{13097"include": "#template_call_range_helper"13098}13099]13100},13101"7": {},13102"8": {13103"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13104},13105"9": {13106"name": "comment.block.cpp"13107},13108"10": {13109"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13110},13111"11": {13112"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.using.cpp"13113}13114}13115},13116"scope_resolution_parameter": {13117"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*+",13118"captures": {13119"0": {13120"patterns": [13121{13122"include": "#scope_resolution_parameter_inner_generated"13123}13124]13125},13126"1": {13127"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.parameter.cpp"13128},13129"2": {13130"patterns": [13131{13132"include": "#template_call_range_helper"13133}13134]13135}13136}13137},13138"scope_resolution_parameter_inner_generated": {13139"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*+)?(::)",13140"captures": {13141"1": {13142"patterns": [13143{13144"include": "#scope_resolution_parameter_inner_generated"13145}13146]13147},13148"2": {13149"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.parameter.cpp"13150},13151"3": {13152"patterns": [13153{13154"include": "#template_call_range_helper"13155}13156]13157},13158"4": {},13159"5": {13160"name": "entity.name.scope-resolution.parameter.cpp"13161},13162"6": {13163"name": "meta.template.call.cpp",13164"patterns": [13165{13166"include": "#template_call_range_helper"13167}13168]13169},13170"7": {},13171"8": {13172"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13173},13174"9": {13175"name": "comment.block.cpp"13176},13177"10": {13178"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13179},13180"11": {13181"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.parameter.cpp"13182}13183}13184},13185"scope_resolution_template_call": {13186"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*+",13187"captures": {13188"0": {13189"patterns": [13190{13191"include": "#scope_resolution_template_call_inner_generated"13192}13193]13194},13195"1": {13196"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.template.call.cpp"13197},13198"2": {13199"patterns": [13200{13201"include": "#template_call_range_helper"13202}13203]13204}13205}13206},13207"scope_resolution_template_call_inner_generated": {13208"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*+)?(::)",13209"captures": {13210"1": {13211"patterns": [13212{13213"include": "#scope_resolution_template_call_inner_generated"13214}13215]13216},13217"2": {13218"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.template.call.cpp"13219},13220"3": {13221"patterns": [13222{13223"include": "#template_call_range_helper"13224}13225]13226},13227"4": {},13228"5": {13229"name": "entity.name.scope-resolution.template.call.cpp"13230},13231"6": {13232"name": "meta.template.call.cpp",13233"patterns": [13234{13235"include": "#template_call_range_helper"13236}13237]13238},13239"7": {},13240"8": {13241"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13242},13243"9": {13244"name": "comment.block.cpp"13245},13246"10": {13247"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13248},13249"11": {13250"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.template.call.cpp"13251}13252}13253},13254"scope_resolution_template_definition": {13255"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*+",13256"captures": {13257"0": {13258"patterns": [13259{13260"include": "#scope_resolution_template_definition_inner_generated"13261}13262]13263},13264"1": {13265"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.template.definition.cpp"13266},13267"2": {13268"patterns": [13269{13270"include": "#template_call_range_helper"13271}13272]13273}13274}13275},13276"scope_resolution_template_definition_inner_generated": {13277"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*+)?(::)",13278"captures": {13279"1": {13280"patterns": [13281{13282"include": "#scope_resolution_template_definition_inner_generated"13283}13284]13285},13286"2": {13287"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.template.definition.cpp"13288},13289"3": {13290"patterns": [13291{13292"include": "#template_call_range_helper"13293}13294]13295},13296"4": {},13297"5": {13298"name": "entity.name.scope-resolution.template.definition.cpp"13299},13300"6": {13301"name": "meta.template.call.cpp",13302"patterns": [13303{13304"include": "#template_call_range_helper"13305}13306]13307},13308"7": {},13309"8": {13310"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13311},13312"9": {13313"name": "comment.block.cpp"13314},13315"10": {13316"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13317},13318"11": {13319"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.template.definition.cpp"13320}13321}13322},13323"semicolon": {13324"match": ";",13325"name": "punctuation.terminator.statement.cpp"13326},13327"simple_array_assignment": {13328"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)))*(?:&|\\*))?((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(?:(?:(?:(\\b[a-z0-9]+\\b)|(\\b[a-zA-Z0-9]+_[a-zA-Z0-9]*\\b))|(\\b[a-z]+[A-Z][a-zA-Z0-9]*\\b))|(\\b[A-Z][A-Z_0-9]*\\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*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:((?:%=|\\+=|-=|\\*=|(?<!\\()\\/=))|((?:&=|\\^=|<<=|>>=|\\|=))|(\\=))",13329"captures": {13330"1": {13331"name": "meta.qualified-type.cpp",13332"patterns": [13333{13334"match": "::",13335"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"13336},13337{13338"match": "(?<!\\w)(?:struct|class|union|enum)(?!\\w)",13339"name": "storage.type.$0.cpp"13340},13341{13342"include": "#attributes_context"13343},13344{13345"include": "#storage_types"13346},13347{13348"include": "#number_literal"13349},13350{13351"include": "#string_context"13352},13353{13354"include": "#comma"13355},13356{13357"include": "#scope_resolution_inner_generated"13358},13359{13360"include": "#template_call_range_helper"13361},13362{13363"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}))*",13364"name": "entity.name.type.cpp"13365}13366]13367},13368"2": {13369"patterns": [13370{13371"include": "#attributes_context"13372},13373{13374"include": "#number_literal"13375}13376]13377},13378"3": {13379"patterns": [13380{13381"include": "#inline_comment"13382}13383]13384},13385"4": {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"5": {13404"patterns": [13405{13406"include": "#inline_comment"13407}13408]13409},13410"6": {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"7": {13429"patterns": [13430{13431"match": "::",13432"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"13433},13434{13435"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)",13436"name": "entity.name.scope-resolution.type.cpp"13437},13438{13439"include": "#template_call_range_helper"13440}13441]13442},13443"8": {13444"patterns": [13445{13446"include": "#template_call_range_helper"13447}13448]13449},13450"9": {},13451"10": {13452"patterns": [13453{13454"include": "#inline_comment"13455}13456]13457},13458"11": {13459"patterns": [13460{13461"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",13462"captures": {13463"1": {13464"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13465},13466"2": {13467"name": "comment.block.cpp"13468},13469"3": {13470"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13471}13472}13473}13474]13475},13476"12": {},13477"13": {13478"patterns": [13479{13480"match": "\\*",13481"name": "storage.modifier.pointer.cpp"13482},13483{13484"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",13485"captures": {13486"1": {13487"patterns": [13488{13489"include": "#inline_comment"13490}13491]13492},13493"2": {13494"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13495},13496"3": {13497"name": "comment.block.cpp"13498},13499"4": {13500"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13501}13502},13503"name": "invalid.illegal.reference-type.cpp"13504},13505{13506"match": "\\&",13507"name": "storage.modifier.reference.cpp"13508}13509]13510},13511"14": {13512"patterns": [13513{13514"include": "#inline_comment"13515}13516]13517},13518"15": {13519"patterns": [13520{13521"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",13522"captures": {13523"1": {13524"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13525},13526"2": {13527"name": "comment.block.cpp"13528},13529"3": {13530"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13531}13532}13533}13534]13535},13536"16": {13537"patterns": [13538{13539"include": "#inline_comment"13540}13541]13542},13543"17": {13544"patterns": [13545{13546"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",13547"captures": {13548"1": {13549"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13550},13551"2": {13552"name": "comment.block.cpp"13553},13554"3": {13555"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13556}13557}13558}13559]13560},13561"18": {13562"patterns": [13563{13564"include": "#inline_comment"13565}13566]13567},13568"19": {13569"patterns": [13570{13571"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",13572"captures": {13573"1": {13574"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13575},13576"2": {13577"name": "comment.block.cpp"13578},13579"3": {13580"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13581}13582}13583}13584]13585},13586"20": {13587"name": "variable.lower-case.cpp variable.other.assignment.cpp"13588},13589"21": {13590"name": "variable.snake-case.cpp variable.other.assignment.cpp"13591},13592"22": {13593"name": "variable.camel-case.cpp variable.other.assignment.cpp"13594},13595"23": {13596"name": "variable.upper-case.cpp variable.other.assignment.cpp"13597},13598"24": {13599"name": "variable.other.unknown.$24.cpp"13600},13601"25": {13602"name": "punctuation.definition.begin.bracket.square.array.type.cpp"13603},13604"26": {13605"name": "punctuation.definition.end.bracket.square.array.type.cpp"13606},13607"27": {13608"patterns": [13609{13610"include": "#inline_comment"13611}13612]13613},13614"28": {13615"patterns": [13616{13617"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",13618"captures": {13619"1": {13620"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13621},13622"2": {13623"name": "comment.block.cpp"13624},13625"3": {13626"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13627}13628}13629}13630]13631},13632"29": {13633"name": "keyword.operator.assignment.compound.cpp"13634},13635"30": {13636"name": "keyword.operator.assignment.compound.bitwise.cpp"13637},13638"31": {13639"name": "keyword.operator.assignment.cpp"13640}13641}13642},13643"simple_constructor_call": {13644"match": "(?!class|struct|union|enum|explicit|new|delete|operator|template|throw|decltype|typename|override|final)\\b(\\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))(?=(?<!\\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))(?=(?:\\{|\\()))))",13645"captures": {13646"1": {13647"name": "meta.qualified-type.cpp",13648"patterns": [13649{13650"match": "::",13651"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"13652},13653{13654"match": "(?<!\\w)(?:struct|class|union|enum)(?!\\w)",13655"name": "storage.type.$0.cpp"13656},13657{13658"include": "#attributes_context"13659},13660{13661"include": "#storage_types"13662},13663{13664"include": "#number_literal"13665},13666{13667"include": "#string_context"13668},13669{13670"include": "#comma"13671},13672{13673"include": "#scope_resolution_inner_generated"13674},13675{13676"include": "#template_call_range_helper"13677},13678{13679"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}))*",13680"name": "entity.name.type.cpp"13681}13682]13683},13684"2": {13685"patterns": [13686{13687"include": "#attributes_context"13688},13689{13690"include": "#number_literal"13691}13692]13693},13694"3": {13695"patterns": [13696{13697"include": "#inline_comment"13698}13699]13700},13701"4": {13702"patterns": [13703{13704"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",13705"captures": {13706"1": {13707"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13708},13709"2": {13710"name": "comment.block.cpp"13711},13712"3": {13713"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13714}13715}13716}13717]13718},13719"5": {13720"patterns": [13721{13722"include": "#inline_comment"13723}13724]13725},13726"6": {13727"patterns": [13728{13729"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",13730"captures": {13731"1": {13732"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13733},13734"2": {13735"name": "comment.block.cpp"13736},13737"3": {13738"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13739}13740}13741}13742]13743},13744"7": {13745"patterns": [13746{13747"match": "::",13748"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"13749},13750{13751"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)",13752"name": "entity.name.scope-resolution.type.cpp"13753},13754{13755"include": "#template_call_range_helper"13756}13757]13758},13759"8": {13760"patterns": [13761{13762"include": "#template_call_range_helper"13763}13764]13765},13766"9": {},13767"10": {13768"patterns": [13769{13770"include": "#inline_comment"13771}13772]13773},13774"11": {13775"patterns": [13776{13777"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",13778"captures": {13779"1": {13780"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13781},13782"2": {13783"name": "comment.block.cpp"13784},13785"3": {13786"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13787}13788}13789}13790]13791},13792"12": {},13793"13": {13794"patterns": [13795{13796"include": "#inline_comment"13797}13798]13799},13800"14": {13801"patterns": [13802{13803"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",13804"captures": {13805"1": {13806"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13807},13808"2": {13809"name": "comment.block.cpp"13810},13811"3": {13812"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13813}13814}13815}13816]13817},13818"15": {13819"patterns": [13820{13821"include": "#inline_comment"13822}13823]13824},13825"16": {13826"patterns": [13827{13828"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",13829"captures": {13830"1": {13831"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13832},13833"2": {13834"name": "comment.block.cpp"13835},13836"3": {13837"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13838}13839}13840}13841]13842}13843}13844},13845"simple_type": {13846"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)))*(?:&|\\*))?",13847"captures": {13848"1": {13849"name": "meta.qualified-type.cpp",13850"patterns": [13851{13852"match": "::",13853"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"13854},13855{13856"match": "(?<!\\w)(?:struct|class|union|enum)(?!\\w)",13857"name": "storage.type.$0.cpp"13858},13859{13860"include": "#attributes_context"13861},13862{13863"include": "#storage_types"13864},13865{13866"include": "#number_literal"13867},13868{13869"include": "#string_context"13870},13871{13872"include": "#comma"13873},13874{13875"include": "#scope_resolution_inner_generated"13876},13877{13878"include": "#template_call_range_helper"13879},13880{13881"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}))*",13882"name": "entity.name.type.cpp"13883}13884]13885},13886"2": {13887"patterns": [13888{13889"include": "#attributes_context"13890},13891{13892"include": "#number_literal"13893}13894]13895},13896"3": {13897"patterns": [13898{13899"include": "#inline_comment"13900}13901]13902},13903"4": {13904"patterns": [13905{13906"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",13907"captures": {13908"1": {13909"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13910},13911"2": {13912"name": "comment.block.cpp"13913},13914"3": {13915"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13916}13917}13918}13919]13920},13921"5": {13922"patterns": [13923{13924"include": "#inline_comment"13925}13926]13927},13928"6": {13929"patterns": [13930{13931"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",13932"captures": {13933"1": {13934"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13935},13936"2": {13937"name": "comment.block.cpp"13938},13939"3": {13940"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13941}13942}13943}13944]13945},13946"7": {13947"patterns": [13948{13949"match": "::",13950"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"13951},13952{13953"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)",13954"name": "entity.name.scope-resolution.type.cpp"13955},13956{13957"include": "#template_call_range_helper"13958}13959]13960},13961"8": {13962"patterns": [13963{13964"include": "#template_call_range_helper"13965}13966]13967},13968"9": {},13969"10": {13970"patterns": [13971{13972"include": "#inline_comment"13973}13974]13975},13976"11": {13977"patterns": [13978{13979"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",13980"captures": {13981"1": {13982"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"13983},13984"2": {13985"name": "comment.block.cpp"13986},13987"3": {13988"name": "comment.block.cpp punctuation.definition.comment.end.cpp"13989}13990}13991}13992]13993},13994"12": {},13995"13": {13996"patterns": [13997{13998"match": "\\*",13999"name": "storage.modifier.pointer.cpp"14000},14001{14002"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",14003"captures": {14004"1": {14005"patterns": [14006{14007"include": "#inline_comment"14008}14009]14010},14011"2": {14012"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14013},14014"3": {14015"name": "comment.block.cpp"14016},14017"4": {14018"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14019}14020},14021"name": "invalid.illegal.reference-type.cpp"14022},14023{14024"match": "\\&",14025"name": "storage.modifier.reference.cpp"14026}14027]14028},14029"14": {14030"patterns": [14031{14032"include": "#inline_comment"14033}14034]14035},14036"15": {14037"patterns": [14038{14039"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",14040"captures": {14041"1": {14042"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14043},14044"2": {14045"name": "comment.block.cpp"14046},14047"3": {14048"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14049}14050}14051}14052]14053},14054"16": {14055"patterns": [14056{14057"include": "#inline_comment"14058}14059]14060},14061"17": {14062"patterns": [14063{14064"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",14065"captures": {14066"1": {14067"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14068},14069"2": {14070"name": "comment.block.cpp"14071},14072"3": {14073"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14074}14075}14076}14077]14078}14079}14080},14081"sizeof_operator": {14082"begin": "((?<!\\w)sizeof(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()",14083"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",14084"beginCaptures": {14085"1": {14086"name": "keyword.operator.functionlike.cpp keyword.operator.sizeof.cpp"14087},14088"2": {14089"patterns": [14090{14091"include": "#inline_comment"14092}14093]14094},14095"3": {14096"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14097},14098"4": {14099"name": "comment.block.cpp"14100},14101"5": {14102"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14103},14104"6": {14105"name": "punctuation.section.arguments.begin.bracket.round.operator.sizeof.cpp"14106}14107},14108"endCaptures": {14109"0": {14110"name": "punctuation.section.arguments.end.bracket.round.operator.sizeof.cpp"14111}14112},14113"contentName": "meta.arguments.operator.sizeof",14114"patterns": [14115{14116"include": "#evaluation_context"14117}14118]14119},14120"sizeof_variadic_operator": {14121"begin": "(\\bsizeof\\.\\.\\.)((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()",14122"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",14123"beginCaptures": {14124"1": {14125"name": "keyword.operator.functionlike.cpp keyword.operator.sizeof.variadic.cpp"14126},14127"2": {14128"patterns": [14129{14130"include": "#inline_comment"14131}14132]14133},14134"3": {14135"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14136},14137"4": {14138"name": "comment.block.cpp"14139},14140"5": {14141"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14142},14143"6": {14144"name": "punctuation.section.arguments.begin.bracket.round.operator.sizeof.variadic.cpp"14145}14146},14147"endCaptures": {14148"0": {14149"name": "punctuation.section.arguments.end.bracket.round.operator.sizeof.variadic.cpp"14150}14151},14152"contentName": "meta.arguments.operator.sizeof.variadic",14153"patterns": [14154{14155"include": "#evaluation_context"14156}14157]14158},14159"square_brackets": {14160"name": "meta.bracket.square.access",14161"begin": "([a-zA-Z_][a-zA-Z_0-9]*|(?<=[\\]\\)]))?(\\[)(?!\\])",14162"beginCaptures": {14163"1": {14164"name": "variable.other.object"14165},14166"2": {14167"name": "punctuation.definition.begin.bracket.square"14168}14169},14170"end": "\\]|(?=\\\\end\\{(?:minted|cppcode)\\})",14171"endCaptures": {14172"0": {14173"name": "punctuation.definition.end.bracket.square"14174}14175},14176"patterns": [14177{14178"include": "#evaluation_context"14179}14180]14181},14182"standard_declares": {14183"patterns": [14184{14185"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])",14186"captures": {14187"1": {14188"name": "storage.type.struct.declare.cpp"14189},14190"2": {14191"patterns": [14192{14193"include": "#inline_comment"14194}14195]14196},14197"3": {14198"patterns": [14199{14200"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",14201"captures": {14202"1": {14203"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14204},14205"2": {14206"name": "comment.block.cpp"14207},14208"3": {14209"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14210}14211}14212}14213]14214},14215"4": {14216"name": "entity.name.type.struct.cpp"14217},14218"5": {14219"patterns": [14220{14221"match": "\\*",14222"name": "storage.modifier.pointer.cpp"14223},14224{14225"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",14226"captures": {14227"1": {14228"patterns": [14229{14230"include": "#inline_comment"14231}14232]14233},14234"2": {14235"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14236},14237"3": {14238"name": "comment.block.cpp"14239},14240"4": {14241"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14242}14243},14244"name": "invalid.illegal.reference-type.cpp"14245},14246{14247"match": "\\&",14248"name": "storage.modifier.reference.cpp"14249}14250]14251},14252"6": {14253"patterns": [14254{14255"include": "#inline_comment"14256}14257]14258},14259"7": {14260"patterns": [14261{14262"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",14263"captures": {14264"1": {14265"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14266},14267"2": {14268"name": "comment.block.cpp"14269},14270"3": {14271"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14272}14273}14274}14275]14276},14277"8": {14278"patterns": [14279{14280"include": "#inline_comment"14281}14282]14283},14284"9": {14285"patterns": [14286{14287"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",14288"captures": {14289"1": {14290"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14291},14292"2": {14293"name": "comment.block.cpp"14294},14295"3": {14296"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14297}14298}14299}14300]14301},14302"10": {14303"patterns": [14304{14305"include": "#inline_comment"14306}14307]14308},14309"11": {14310"patterns": [14311{14312"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",14313"captures": {14314"1": {14315"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14316},14317"2": {14318"name": "comment.block.cpp"14319},14320"3": {14321"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14322}14323}14324}14325]14326},14327"12": {14328"name": "variable.other.object.declare.cpp"14329},14330"13": {14331"patterns": [14332{14333"include": "#inline_comment"14334}14335]14336},14337"14": {14338"patterns": [14339{14340"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",14341"captures": {14342"1": {14343"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14344},14345"2": {14346"name": "comment.block.cpp"14347},14348"3": {14349"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14350}14351}14352}14353]14354}14355}14356},14357{14358"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])",14359"captures": {14360"1": {14361"name": "storage.type.union.declare.cpp"14362},14363"2": {14364"patterns": [14365{14366"include": "#inline_comment"14367}14368]14369},14370"3": {14371"patterns": [14372{14373"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",14374"captures": {14375"1": {14376"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14377},14378"2": {14379"name": "comment.block.cpp"14380},14381"3": {14382"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14383}14384}14385}14386]14387},14388"4": {14389"name": "entity.name.type.union.cpp"14390},14391"5": {14392"patterns": [14393{14394"match": "\\*",14395"name": "storage.modifier.pointer.cpp"14396},14397{14398"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",14399"captures": {14400"1": {14401"patterns": [14402{14403"include": "#inline_comment"14404}14405]14406},14407"2": {14408"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14409},14410"3": {14411"name": "comment.block.cpp"14412},14413"4": {14414"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14415}14416},14417"name": "invalid.illegal.reference-type.cpp"14418},14419{14420"match": "\\&",14421"name": "storage.modifier.reference.cpp"14422}14423]14424},14425"6": {14426"patterns": [14427{14428"include": "#inline_comment"14429}14430]14431},14432"7": {14433"patterns": [14434{14435"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",14436"captures": {14437"1": {14438"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14439},14440"2": {14441"name": "comment.block.cpp"14442},14443"3": {14444"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14445}14446}14447}14448]14449},14450"8": {14451"patterns": [14452{14453"include": "#inline_comment"14454}14455]14456},14457"9": {14458"patterns": [14459{14460"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",14461"captures": {14462"1": {14463"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14464},14465"2": {14466"name": "comment.block.cpp"14467},14468"3": {14469"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14470}14471}14472}14473]14474},14475"10": {14476"patterns": [14477{14478"include": "#inline_comment"14479}14480]14481},14482"11": {14483"patterns": [14484{14485"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",14486"captures": {14487"1": {14488"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14489},14490"2": {14491"name": "comment.block.cpp"14492},14493"3": {14494"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14495}14496}14497}14498]14499},14500"12": {14501"name": "variable.other.object.declare.cpp"14502},14503"13": {14504"patterns": [14505{14506"include": "#inline_comment"14507}14508]14509},14510"14": {14511"patterns": [14512{14513"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",14514"captures": {14515"1": {14516"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14517},14518"2": {14519"name": "comment.block.cpp"14520},14521"3": {14522"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14523}14524}14525}14526]14527}14528}14529},14530{14531"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])",14532"captures": {14533"1": {14534"name": "storage.type.enum.declare.cpp"14535},14536"2": {14537"patterns": [14538{14539"include": "#inline_comment"14540}14541]14542},14543"3": {14544"patterns": [14545{14546"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",14547"captures": {14548"1": {14549"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14550},14551"2": {14552"name": "comment.block.cpp"14553},14554"3": {14555"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14556}14557}14558}14559]14560},14561"4": {14562"name": "entity.name.type.enum.cpp"14563},14564"5": {14565"patterns": [14566{14567"match": "\\*",14568"name": "storage.modifier.pointer.cpp"14569},14570{14571"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",14572"captures": {14573"1": {14574"patterns": [14575{14576"include": "#inline_comment"14577}14578]14579},14580"2": {14581"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14582},14583"3": {14584"name": "comment.block.cpp"14585},14586"4": {14587"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14588}14589},14590"name": "invalid.illegal.reference-type.cpp"14591},14592{14593"match": "\\&",14594"name": "storage.modifier.reference.cpp"14595}14596]14597},14598"6": {14599"patterns": [14600{14601"include": "#inline_comment"14602}14603]14604},14605"7": {14606"patterns": [14607{14608"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",14609"captures": {14610"1": {14611"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14612},14613"2": {14614"name": "comment.block.cpp"14615},14616"3": {14617"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14618}14619}14620}14621]14622},14623"8": {14624"patterns": [14625{14626"include": "#inline_comment"14627}14628]14629},14630"9": {14631"patterns": [14632{14633"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",14634"captures": {14635"1": {14636"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14637},14638"2": {14639"name": "comment.block.cpp"14640},14641"3": {14642"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14643}14644}14645}14646]14647},14648"10": {14649"patterns": [14650{14651"include": "#inline_comment"14652}14653]14654},14655"11": {14656"patterns": [14657{14658"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",14659"captures": {14660"1": {14661"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14662},14663"2": {14664"name": "comment.block.cpp"14665},14666"3": {14667"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14668}14669}14670}14671]14672},14673"12": {14674"name": "variable.other.object.declare.cpp"14675},14676"13": {14677"patterns": [14678{14679"include": "#inline_comment"14680}14681]14682},14683"14": {14684"patterns": [14685{14686"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",14687"captures": {14688"1": {14689"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14690},14691"2": {14692"name": "comment.block.cpp"14693},14694"3": {14695"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14696}14697}14698}14699]14700}14701}14702},14703{14704"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])",14705"captures": {14706"1": {14707"name": "storage.type.class.declare.cpp"14708},14709"2": {14710"patterns": [14711{14712"include": "#inline_comment"14713}14714]14715},14716"3": {14717"patterns": [14718{14719"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",14720"captures": {14721"1": {14722"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14723},14724"2": {14725"name": "comment.block.cpp"14726},14727"3": {14728"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14729}14730}14731}14732]14733},14734"4": {14735"name": "entity.name.type.class.cpp"14736},14737"5": {14738"patterns": [14739{14740"match": "\\*",14741"name": "storage.modifier.pointer.cpp"14742},14743{14744"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",14745"captures": {14746"1": {14747"patterns": [14748{14749"include": "#inline_comment"14750}14751]14752},14753"2": {14754"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14755},14756"3": {14757"name": "comment.block.cpp"14758},14759"4": {14760"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14761}14762},14763"name": "invalid.illegal.reference-type.cpp"14764},14765{14766"match": "\\&",14767"name": "storage.modifier.reference.cpp"14768}14769]14770},14771"6": {14772"patterns": [14773{14774"include": "#inline_comment"14775}14776]14777},14778"7": {14779"patterns": [14780{14781"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",14782"captures": {14783"1": {14784"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14785},14786"2": {14787"name": "comment.block.cpp"14788},14789"3": {14790"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14791}14792}14793}14794]14795},14796"8": {14797"patterns": [14798{14799"include": "#inline_comment"14800}14801]14802},14803"9": {14804"patterns": [14805{14806"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",14807"captures": {14808"1": {14809"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14810},14811"2": {14812"name": "comment.block.cpp"14813},14814"3": {14815"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14816}14817}14818}14819]14820},14821"10": {14822"patterns": [14823{14824"include": "#inline_comment"14825}14826]14827},14828"11": {14829"patterns": [14830{14831"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",14832"captures": {14833"1": {14834"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14835},14836"2": {14837"name": "comment.block.cpp"14838},14839"3": {14840"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14841}14842}14843}14844]14845},14846"12": {14847"name": "variable.other.object.declare.cpp"14848},14849"13": {14850"patterns": [14851{14852"include": "#inline_comment"14853}14854]14855},14856"14": {14857"patterns": [14858{14859"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",14860"captures": {14861"1": {14862"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14863},14864"2": {14865"name": "comment.block.cpp"14866},14867"3": {14868"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14869}14870}14871}14872]14873}14874}14875}14876]14877},14878"static_assert": {14879"begin": "((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)static_assert|_Static_assert(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()",14880"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",14881"beginCaptures": {14882"1": {14883"patterns": [14884{14885"include": "#inline_comment"14886}14887]14888},14889"2": {14890"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14891},14892"3": {14893"name": "comment.block.cpp"14894},14895"4": {14896"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14897},14898"5": {14899"name": "keyword.other.static-assert.cpp"14900},14901"6": {14902"patterns": [14903{14904"include": "#inline_comment"14905}14906]14907},14908"7": {14909"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14910},14911"8": {14912"name": "comment.block.cpp"14913},14914"9": {14915"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14916},14917"10": {14918"name": "punctuation.section.arguments.begin.bracket.round.static-assert.cpp"14919}14920},14921"endCaptures": {14922"0": {14923"name": "punctuation.section.arguments.end.bracket.round.static-assert.cpp"14924}14925},14926"patterns": [14927{14928"begin": "(,)(?:\\s+)?(?=(?:L|u8|u|U(?:\\s+)?\\\")?)",14929"end": "(?=\\))|(?=\\\\end\\{(?:minted|cppcode)\\})",14930"beginCaptures": {14931"1": {14932"name": "punctuation.separator.delimiter.comma.cpp"14933}14934},14935"endCaptures": {},14936"name": "meta.static-assert.message.cpp",14937"patterns": [14938{14939"include": "#string_context"14940}14941]14942},14943{14944"include": "#evaluation_context"14945}14946]14947},14948"std_space": {14949"match": "(?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)",14950"captures": {14951"0": {14952"patterns": [14953{14954"include": "#inline_comment"14955}14956]14957},14958"1": {14959"patterns": [14960{14961"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",14962"captures": {14963"1": {14964"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14965},14966"2": {14967"name": "comment.block.cpp"14968},14969"3": {14970"name": "comment.block.cpp punctuation.definition.comment.end.cpp"14971}14972}14973}14974]14975}14976}14977},14978"storage_specifiers": {14979"match": "((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:thread_local|volatile|register|restrict|static|extern|const)(?!\\w))",14980"captures": {14981"1": {14982"patterns": [14983{14984"include": "#inline_comment"14985}14986]14987},14988"2": {14989"patterns": [14990{14991"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",14992"captures": {14993"1": {14994"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"14995},14996"2": {14997"name": "comment.block.cpp"14998},14999"3": {15000"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15001}15002}15003}15004]15005},15006"3": {15007"name": "storage.modifier.specifier.$3.cpp"15008}15009}15010},15011"storage_types": {15012"patterns": [15013{15014"include": "#storage_specifiers"15015},15016{15017"include": "#inline_builtin_storage_type"15018},15019{15020"include": "#decltype"15021},15022{15023"include": "#typename"15024}15025]15026},15027"string_context": {15028"patterns": [15029{15030"begin": "((?:u|u8|U|L)?)\"",15031"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}))*))?|(?=\\\\end\\{(?:minted|cppcode)\\})",15032"beginCaptures": {15033"0": {15034"name": "punctuation.definition.string.begin.cpp"15035},15036"1": {15037"name": "meta.encoding.cpp"15038}15039},15040"endCaptures": {15041"1": {15042"name": "punctuation.definition.string.end.cpp"15043},15044"2": {15045"name": "keyword.other.suffix.literal.user-defined.reserved.string.cpp"15046},15047"3": {15048"name": "keyword.other.suffix.literal.user-defined.string.cpp"15049}15050},15051"name": "string.quoted.double.cpp",15052"patterns": [15053{15054"match": "(?:\\\\u[0-9a-fA-F]{4}|\\\\U[0-9a-fA-F]{8})",15055"name": "constant.character.escape.cpp"15056},15057{15058"match": "\\\\['\"?\\\\abfnrtv]",15059"name": "constant.character.escape.cpp"15060},15061{15062"match": "\\\\[0-7]{1,3}",15063"name": "constant.character.escape.cpp"15064},15065{15066"match": "(?:(\\\\x0*[0-9a-fA-F]{2}(?![0-9a-fA-F]))|((?:\\\\x[0-9a-fA-F]*|\\\\x)))",15067"captures": {15068"1": {15069"name": "constant.character.escape.cpp"15070},15071"2": {15072"name": "invalid.illegal.unknown-escape.cpp"15073}15074}15075},15076{15077"include": "#string_escapes_context_c"15078}15079]15080},15081{15082"begin": "(?<![0-9A-Fa-f])((?:u|u8|U|L)?)'",15083"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}))*))?|(?=\\\\end\\{(?:minted|cppcode)\\})",15084"beginCaptures": {15085"0": {15086"name": "punctuation.definition.string.begin.cpp"15087},15088"1": {15089"name": "meta.encoding.cpp"15090}15091},15092"endCaptures": {15093"1": {15094"name": "punctuation.definition.string.end.cpp"15095},15096"2": {15097"name": "keyword.other.suffix.literal.user-defined.reserved.character.cpp"15098},15099"3": {15100"name": "keyword.other.suffix.literal.user-defined.character.cpp"15101}15102},15103"name": "string.quoted.single.cpp",15104"patterns": [15105{15106"match": "(?:(\\\\x0*[0-9a-fA-F]{2}(?![0-9a-fA-F]))|((?:\\\\x[0-9a-fA-F]*|\\\\x)))",15107"captures": {15108"1": {15109"name": "constant.character.escape.cpp"15110},15111"2": {15112"name": "invalid.illegal.unknown-escape.cpp"15113}15114}15115},15116{15117"include": "#string_escapes_context_c"15118},15119{15120"include": "#line_continuation_character"15121}15122]15123},15124{15125"begin": "((?:[uUL]8?)?R)\\\"(?:(?:_r|re)|regex)\\(",15126"end": "\\)(?:(?:_r|re)|regex)\\\"|(?=\\\\end\\{(?:minted|cppcode)\\})",15127"beginCaptures": {15128"0": {15129"name": "punctuation.definition.string.begin.cpp"15130},15131"1": {15132"name": "meta.encoding.cpp"15133}15134},15135"endCaptures": {15136"0": {15137"name": "punctuation.definition.string.end.cpp"15138}15139},15140"name": "string.quoted.double.raw.regex.cpp",15141"patterns": [15142{15143"include": "source.regexp.python"15144}15145]15146},15147{15148"begin": "((?:[uUL]8?)?R)\\\"(?:glsl|GLSL)\\(",15149"end": "\\)(?:glsl|GLSL)\\\"|(?=\\\\end\\{(?:minted|cppcode)\\})",15150"beginCaptures": {15151"0": {15152"name": "punctuation.definition.string.begin.cpp"15153},15154"1": {15155"name": "meta.encoding.cpp"15156}15157},15158"endCaptures": {15159"0": {15160"name": "punctuation.definition.string.end.cpp"15161}15162},15163"name": "meta.string.quoted.double.raw.glsl.cpp",15164"patterns": [15165{15166"include": "source.glsl"15167}15168]15169},15170{15171"begin": "((?:[uUL]8?)?R)\\\"\\(",15172"end": "\\)\\\"|(?=\\\\end\\{(?:minted|cppcode)\\})",15173"beginCaptures": {15174"0": {15175"name": "punctuation.definition.string.begin.cpp"15176},15177"1": {15178"name": "meta.encoding.cpp"15179}15180},15181"endCaptures": {15182"0": {15183"name": "punctuation.definition.string.end.cpp"15184}15185},15186"name": "string.quoted.double.raw.cpp",15187"patterns": [15188{}15189]15190},15191{15192"begin": "((?:u|u8|U|L)?R)\"(?:([^ ()\\\\\\t]{0,16})|([^ ()\\\\\\t]*))\\(",15193"beginCaptures": {15194"0": {15195"name": "punctuation.definition.string.$2.begin"15196},15197"1": {15198"name": "meta.encoding"15199},15200"3": {15201"name": "invalid.illegal.delimiter-too-long"15202}15203},15204"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}))*))?|(?=\\\\end\\{(?:minted|cppcode)\\})",15205"endCaptures": {15206"1": {15207"name": "punctuation.definition.string.$2.end"15208},15209"3": {15210"name": "invalid.illegal.delimiter-too-long"15211},15212"4": {15213"name": "keyword.other.suffix.literal.user-defined.reserved.string.cpp"15214},15215"5": {15216"name": "keyword.other.suffix.literal.user-defined.string.cpp"15217}15218},15219"name": "string.quoted.double.raw.$2"15220}15221]15222},15223"string_escaped_char": {15224"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} )",15225"name": "constant.character.escape"15226},15227"string_escapes_context_c": {15228"patterns": [15229{15230"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} )",15231"name": "constant.character.escape"15232},15233{15234"match": "\\\\.",15235"name": "invalid.illegal.unknown-escape"15236},15237{15238"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",15239"name": "constant.other.placeholder"15240}15241]15242},15243"struct_block": {15244"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))(:(?!:)))?)",15245"end": "(?:(?:(?<=\\}|%>|\\?\\?>)(?:\\s+)?(;)|(;))|(?=[;>\\[\\]=]))|(?=\\\\end\\{(?:minted|cppcode)\\})",15246"beginCaptures": {15247"0": {15248"name": "meta.head.struct.cpp"15249},15250"1": {15251"name": "storage.type.$1.cpp"15252},15253"2": {15254"patterns": [15255{15256"include": "#inline_comment"15257}15258]15259},15260"3": {15261"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15262},15263"4": {15264"name": "comment.block.cpp"15265},15266"5": {15267"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15268},15269"6": {15270"patterns": [15271{15272"include": "#attributes_context"15273},15274{15275"include": "#number_literal"15276}15277]15278},15279"7": {15280"patterns": [15281{15282"include": "#inline_comment"15283}15284]15285},15286"8": {15287"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15288},15289"9": {15290"name": "comment.block.cpp"15291},15292"10": {15293"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15294},15295"11": {15296"patterns": [15297{15298"match": "((?<!\\w)final(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))",15299"captures": {15300"1": {15301"name": "storage.type.modifier.final.cpp"15302},15303"2": {15304"patterns": [15305{15306"include": "#inline_comment"15307}15308]15309},15310"3": {15311"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15312},15313"4": {15314"name": "comment.block.cpp"15315},15316"5": {15317"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15318}15319}15320},15321{15322"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)))?(?=:|{|$)",15323"captures": {15324"1": {15325"name": "entity.name.type.struct.cpp"15326},15327"2": {15328"patterns": [15329{15330"include": "#inline_comment"15331}15332]15333},15334"3": {15335"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15336},15337"4": {15338"name": "comment.block.cpp"15339},15340"5": {15341"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15342},15343"6": {15344"name": "storage.type.modifier.final.cpp"15345},15346"7": {15347"patterns": [15348{15349"include": "#inline_comment"15350}15351]15352},15353"8": {15354"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15355},15356"9": {15357"name": "comment.block.cpp"15358},15359"10": {15360"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15361}15362}15363},15364{15365"match": "DLLEXPORT",15366"name": "entity.name.other.preprocessor.macro.predefined.DLLEXPORT.cpp"15367},15368{15369"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}))*",15370"name": "entity.name.other.preprocessor.macro.predefined.probably.$0.cpp"15371}15372]15373},15374"12": {15375"patterns": [15376{15377"include": "#inline_comment"15378}15379]15380},15381"13": {15382"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15383},15384"14": {15385"name": "comment.block.cpp"15386},15387"15": {15388"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15389},15390"16": {15391"patterns": [15392{15393"include": "#inline_comment"15394}15395]15396},15397"17": {15398"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15399},15400"18": {15401"name": "comment.block.cpp"15402},15403"19": {15404"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15405},15406"20": {15407"name": "punctuation.separator.colon.inheritance.cpp"15408}15409},15410"endCaptures": {15411"1": {15412"name": "punctuation.terminator.statement.cpp"15413},15414"2": {15415"name": "punctuation.terminator.statement.cpp"15416}15417},15418"name": "meta.block.struct.cpp",15419"patterns": [15420{15421"begin": "\\G ?",15422"end": "(?:\\{|<%|\\?\\?<|(?=;))|(?=\\\\end\\{(?:minted|cppcode)\\})",15423"beginCaptures": {},15424"endCaptures": {15425"0": {15426"name": "punctuation.section.block.begin.bracket.curly.struct.cpp"15427}15428},15429"name": "meta.head.struct.cpp",15430"patterns": [15431{15432"include": "#ever_present_context"15433},15434{15435"include": "#inheritance_context"15436},15437{15438"include": "#template_call_range_helper"15439}15440]15441},15442{15443"begin": "(?<=\\{|<%|\\?\\?<)",15444"end": "\\}|%>|\\?\\?>|(?=\\\\end\\{(?:minted|cppcode)\\})",15445"beginCaptures": {},15446"endCaptures": {15447"0": {15448"name": "punctuation.section.block.end.bracket.curly.struct.cpp"15449}15450},15451"name": "meta.body.struct.cpp",15452"patterns": [15453{15454"include": "#function_pointer"15455},15456{15457"include": "#static_assert"15458},15459{15460"include": "#constructor_inline"15461},15462{15463"include": "#destructor_inline"15464},15465{15466"include": "#operator_overload"15467},15468{15469"include": "#normal_variable_declaration"15470},15471{15472"include": "#normal_variable_assignment"15473},15474{15475"include": "$self"15476}15477]15478},15479{15480"begin": "(?<=\\}|%>|\\?\\?>)[\\s]*",15481"end": "[\\s]*(?=;)|(?=\\\\end\\{(?:minted|cppcode)\\})",15482"beginCaptures": {},15483"endCaptures": {},15484"name": "meta.tail.struct.cpp",15485"patterns": [15486{15487"include": "$self"15488}15489]15490}15491]15492},15493"struct_declare": {15494"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])",15495"captures": {15496"1": {15497"name": "storage.type.struct.declare.cpp"15498},15499"2": {15500"patterns": [15501{15502"include": "#inline_comment"15503}15504]15505},15506"3": {15507"patterns": [15508{15509"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",15510"captures": {15511"1": {15512"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15513},15514"2": {15515"name": "comment.block.cpp"15516},15517"3": {15518"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15519}15520}15521}15522]15523},15524"4": {15525"name": "entity.name.type.struct.cpp"15526},15527"5": {15528"patterns": [15529{15530"match": "\\*",15531"name": "storage.modifier.pointer.cpp"15532},15533{15534"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",15535"captures": {15536"1": {15537"patterns": [15538{15539"include": "#inline_comment"15540}15541]15542},15543"2": {15544"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15545},15546"3": {15547"name": "comment.block.cpp"15548},15549"4": {15550"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15551}15552},15553"name": "invalid.illegal.reference-type.cpp"15554},15555{15556"match": "\\&",15557"name": "storage.modifier.reference.cpp"15558}15559]15560},15561"6": {15562"patterns": [15563{15564"include": "#inline_comment"15565}15566]15567},15568"7": {15569"patterns": [15570{15571"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",15572"captures": {15573"1": {15574"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15575},15576"2": {15577"name": "comment.block.cpp"15578},15579"3": {15580"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15581}15582}15583}15584]15585},15586"8": {15587"patterns": [15588{15589"include": "#inline_comment"15590}15591]15592},15593"9": {15594"patterns": [15595{15596"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",15597"captures": {15598"1": {15599"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15600},15601"2": {15602"name": "comment.block.cpp"15603},15604"3": {15605"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15606}15607}15608}15609]15610},15611"10": {15612"patterns": [15613{15614"include": "#inline_comment"15615}15616]15617},15618"11": {15619"patterns": [15620{15621"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",15622"captures": {15623"1": {15624"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15625},15626"2": {15627"name": "comment.block.cpp"15628},15629"3": {15630"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15631}15632}15633}15634]15635},15636"12": {15637"name": "variable.other.object.declare.cpp"15638},15639"13": {15640"patterns": [15641{15642"include": "#inline_comment"15643}15644]15645},15646"14": {15647"patterns": [15648{15649"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",15650"captures": {15651"1": {15652"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15653},15654"2": {15655"name": "comment.block.cpp"15656},15657"3": {15658"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15659}15660}15661}15662]15663}15664}15665},15666"switch_conditional_parentheses": {15667"begin": "((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()",15668"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",15669"beginCaptures": {15670"1": {15671"patterns": [15672{15673"include": "#inline_comment"15674}15675]15676},15677"2": {15678"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15679},15680"3": {15681"name": "comment.block.cpp"15682},15683"4": {15684"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15685},15686"5": {15687"name": "punctuation.section.parens.begin.bracket.round.conditional.switch.cpp"15688}15689},15690"endCaptures": {15691"0": {15692"name": "punctuation.section.parens.end.bracket.round.conditional.switch.cpp"15693}15694},15695"name": "meta.conditional.switch.cpp",15696"patterns": [15697{15698"include": "#range_for_inner"15699},15700{15701"include": "#evaluation_context"15702}15703]15704},15705"switch_statement": {15706"begin": "((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)switch(?!\\w))",15707"end": "(?:(?<=\\}|%>|\\?\\?>)|(?=[;>\\[\\]=]))|(?=\\\\end\\{(?:minted|cppcode)\\})",15708"beginCaptures": {15709"0": {15710"name": "meta.head.switch.cpp"15711},15712"1": {15713"patterns": [15714{15715"include": "#inline_comment"15716}15717]15718},15719"2": {15720"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15721},15722"3": {15723"name": "comment.block.cpp"15724},15725"4": {15726"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15727},15728"5": {15729"name": "keyword.control.switch.cpp"15730}15731},15732"endCaptures": {},15733"name": "meta.block.switch.cpp",15734"patterns": [15735{15736"begin": "\\G ?",15737"end": "(?:\\{|<%|\\?\\?<|(?=;))|(?=\\\\end\\{(?:minted|cppcode)\\})",15738"beginCaptures": {},15739"endCaptures": {15740"0": {15741"name": "punctuation.section.block.begin.bracket.curly.switch.cpp"15742}15743},15744"name": "meta.head.switch.cpp",15745"patterns": [15746{15747"include": "#switch_conditional_parentheses"15748},15749{15750"include": "$self"15751}15752]15753},15754{15755"begin": "(?<=\\{|<%|\\?\\?<)",15756"end": "\\}|%>|\\?\\?>|(?=\\\\end\\{(?:minted|cppcode)\\})",15757"beginCaptures": {},15758"endCaptures": {15759"0": {15760"name": "punctuation.section.block.end.bracket.curly.switch.cpp"15761}15762},15763"name": "meta.body.switch.cpp",15764"patterns": [15765{15766"include": "#default_statement"15767},15768{15769"include": "#case_statement"15770},15771{15772"include": "$self"15773}15774]15775},15776{15777"begin": "(?<=\\}|%>|\\?\\?>)[\\s]*",15778"end": "[\\s]*(?=;)|(?=\\\\end\\{(?:minted|cppcode)\\})",15779"beginCaptures": {},15780"endCaptures": {},15781"name": "meta.tail.switch.cpp",15782"patterns": [15783{15784"include": "$self"15785}15786]15787}15788]15789},15790"template_argument_defaulted": {15791"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+)?(\\=)",15792"captures": {15793"1": {15794"name": "storage.type.template.argument.$1.cpp"15795},15796"2": {15797"name": "entity.name.type.template.cpp"15798},15799"3": {15800"name": "keyword.operator.assignment.cpp"15801}15802}15803},15804"template_call_context": {15805"patterns": [15806{15807"include": "#ever_present_context"15808},15809{15810"include": "#template_call_range_helper"15811},15812{15813"include": "#storage_types"15814},15815{15816"include": "#language_constants"15817},15818{15819"include": "#scope_resolution_template_call_inner_generated"15820},15821{15822"include": "#operators"15823},15824{15825"include": "#number_literal"15826},15827{15828"include": "#string_context"15829},15830{15831"include": "#comma_in_template_argument"15832},15833{15834"include": "#qualified_type"15835}15836]15837},15838"template_call_innards": {15839"match": "((?<!<)<(?!<)(?:(?:(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/)))|(?:\"(?:[^\"]*|\\\\\")\")|(?:'(?:[^']*|\\\\')')|\\g<1>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\s*+",15840"captures": {15841"0": {15842"patterns": [15843{15844"include": "#template_call_range_helper"15845}15846]15847},15848"2": {15849"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"15850},15851"3": {15852"name": "comment.block.cpp"15853},15854"4": {15855"name": "comment.block.cpp punctuation.definition.comment.end.cpp"15856}15857},15858"name": "meta.template.call.cpp"15859},15860"template_call_range": {15861"begin": "<",15862"end": ">|(?=\\\\end\\{(?:minted|cppcode)\\})",15863"beginCaptures": {15864"0": {15865"name": "punctuation.section.angle-brackets.begin.template.call.cpp"15866}15867},15868"endCaptures": {15869"0": {15870"name": "punctuation.section.angle-brackets.end.template.call.cpp"15871}15872},15873"name": "meta.template.call.cpp",15874"patterns": [15875{15876"include": "#template_call_context"15877}15878]15879},15880"template_call_range_helper": {15881"patterns": [15882{15883"match": "\\b((?<!\\w)\\.?\\d(?:(?:[0-9a-zA-Z_\\.]|')|(?<=[eEpP])[+-])*)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(<<)",15884"captures": {15885"1": {15886"patterns": [15887{15888"begin": "(?=.)",15889"end": "$|(?=\\\\end\\{(?:minted|cppcode)\\})",15890"beginCaptures": {},15891"endCaptures": {},15892"patterns": [15893{15894"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*)?$)",15895"captures": {15896"1": {15897"name": "keyword.other.unit.hexadecimal.cpp"15898},15899"2": {15900"name": "constant.numeric.hexadecimal.cpp",15901"patterns": [15902{15903"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",15904"name": "punctuation.separator.constant.numeric.cpp"15905}15906]15907},15908"3": {15909"name": "punctuation.separator.constant.numeric.cpp"15910},15911"4": {15912"name": "constant.numeric.hexadecimal.cpp"15913},15914"5": {15915"name": "constant.numeric.hexadecimal.cpp",15916"patterns": [15917{15918"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",15919"name": "punctuation.separator.constant.numeric.cpp"15920}15921]15922},15923"6": {15924"name": "punctuation.separator.constant.numeric.cpp"15925},15926"7": {15927"name": "keyword.other.unit.exponent.hexadecimal.cpp"15928},15929"8": {15930"name": "keyword.operator.plus.exponent.hexadecimal.cpp"15931},15932"9": {15933"name": "keyword.operator.minus.exponent.hexadecimal.cpp"15934},15935"10": {15936"name": "constant.numeric.exponent.hexadecimal.cpp",15937"patterns": [15938{15939"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",15940"name": "punctuation.separator.constant.numeric.cpp"15941}15942]15943},15944"11": {15945"name": "keyword.other.suffix.literal.built-in.floating-point.cpp keyword.other.unit.suffix.floating-point.cpp"15946},15947"12": {15948"name": "keyword.other.suffix.literal.user-defined.integer.cpp keyword.other.unit.user-defined.cpp"15949}15950}15951},15952{15953"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*)?$)",15954"captures": {15955"1": {15956"name": "constant.numeric.decimal.cpp",15957"patterns": [15958{15959"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",15960"name": "punctuation.separator.constant.numeric.cpp"15961}15962]15963},15964"2": {15965"name": "punctuation.separator.constant.numeric.cpp"15966},15967"3": {15968"name": "constant.numeric.decimal.point.cpp"15969},15970"4": {15971"name": "constant.numeric.decimal.cpp",15972"patterns": [15973{15974"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",15975"name": "punctuation.separator.constant.numeric.cpp"15976}15977]15978},15979"5": {15980"name": "punctuation.separator.constant.numeric.cpp"15981},15982"6": {15983"name": "keyword.other.unit.exponent.decimal.cpp"15984},15985"7": {15986"name": "keyword.operator.plus.exponent.decimal.cpp"15987},15988"8": {15989"name": "keyword.operator.minus.exponent.decimal.cpp"15990},15991"9": {15992"name": "constant.numeric.exponent.decimal.cpp",15993"patterns": [15994{15995"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",15996"name": "punctuation.separator.constant.numeric.cpp"15997}15998]15999},16000"10": {16001"name": "keyword.other.suffix.literal.built-in.floating-point.cpp keyword.other.unit.suffix.floating-point.cpp"16002},16003"11": {16004"name": "keyword.other.suffix.literal.user-defined.integer.cpp keyword.other.unit.user-defined.cpp"16005}16006}16007},16008{16009"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*)?$)",16010"captures": {16011"1": {16012"name": "keyword.other.unit.binary.cpp"16013},16014"2": {16015"name": "constant.numeric.binary.cpp",16016"patterns": [16017{16018"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",16019"name": "punctuation.separator.constant.numeric.cpp"16020}16021]16022},16023"3": {16024"name": "punctuation.separator.constant.numeric.cpp"16025},16026"4": {16027"name": "keyword.other.suffix.literal.built-in.integer.cpp keyword.other.unit.suffix.integer.cpp"16028},16029"5": {16030"name": "keyword.other.suffix.literal.user-defined.integer.cpp keyword.other.unit.user-defined.cpp"16031}16032}16033},16034{16035"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*)?$)",16036"captures": {16037"1": {16038"name": "keyword.other.unit.octal.cpp"16039},16040"2": {16041"name": "constant.numeric.octal.cpp",16042"patterns": [16043{16044"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",16045"name": "punctuation.separator.constant.numeric.cpp"16046}16047]16048},16049"3": {16050"name": "punctuation.separator.constant.numeric.cpp"16051},16052"4": {16053"name": "keyword.other.suffix.literal.built-in.integer.cpp keyword.other.unit.suffix.integer.cpp"16054},16055"5": {16056"name": "keyword.other.suffix.literal.user-defined.integer.cpp keyword.other.unit.user-defined.cpp"16057}16058}16059},16060{16061"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*)?$)",16062"captures": {16063"1": {16064"name": "keyword.other.unit.hexadecimal.cpp"16065},16066"2": {16067"name": "constant.numeric.hexadecimal.cpp",16068"patterns": [16069{16070"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",16071"name": "punctuation.separator.constant.numeric.cpp"16072}16073]16074},16075"3": {16076"name": "punctuation.separator.constant.numeric.cpp"16077},16078"4": {16079"name": "keyword.other.unit.exponent.hexadecimal.cpp"16080},16081"5": {16082"name": "keyword.operator.plus.exponent.hexadecimal.cpp"16083},16084"6": {16085"name": "keyword.operator.minus.exponent.hexadecimal.cpp"16086},16087"7": {16088"name": "constant.numeric.exponent.hexadecimal.cpp",16089"patterns": [16090{16091"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",16092"name": "punctuation.separator.constant.numeric.cpp"16093}16094]16095},16096"8": {16097"name": "keyword.other.suffix.literal.built-in.integer.cpp keyword.other.unit.suffix.integer.cpp"16098},16099"9": {16100"name": "keyword.other.suffix.literal.user-defined.integer.cpp keyword.other.unit.user-defined.cpp"16101}16102}16103},16104{16105"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*)?$)",16106"captures": {16107"1": {16108"name": "constant.numeric.decimal.cpp",16109"patterns": [16110{16111"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",16112"name": "punctuation.separator.constant.numeric.cpp"16113}16114]16115},16116"2": {16117"name": "punctuation.separator.constant.numeric.cpp"16118},16119"3": {16120"name": "keyword.other.unit.exponent.decimal.cpp"16121},16122"4": {16123"name": "keyword.operator.plus.exponent.decimal.cpp"16124},16125"5": {16126"name": "keyword.operator.minus.exponent.decimal.cpp"16127},16128"6": {16129"name": "constant.numeric.exponent.decimal.cpp",16130"patterns": [16131{16132"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",16133"name": "punctuation.separator.constant.numeric.cpp"16134}16135]16136},16137"7": {16138"name": "keyword.other.suffix.literal.built-in.integer.cpp keyword.other.unit.suffix.integer.cpp"16139},16140"8": {16141"name": "keyword.other.suffix.literal.user-defined.integer.cpp keyword.other.unit.user-defined.cpp"16142}16143}16144},16145{16146"match": "(?:(?:[0-9a-zA-Z_\\.]|')|(?<=[eEpP])[+-])+",16147"name": "invalid.illegal.constant.numeric.cpp"16148}16149]16150}16151]16152},16153"2": {16154"patterns": [16155{16156"include": "#inline_comment"16157}16158]16159},16160"3": {16161"patterns": [16162{16163"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",16164"captures": {16165"1": {16166"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"16167},16168"2": {16169"name": "comment.block.cpp"16170},16171"3": {16172"name": "comment.block.cpp punctuation.definition.comment.end.cpp"16173}16174}16175}16176]16177},16178"4": {16179"name": "keyword.operator.bitwise.shift.cpp"16180}16181}16182},16183{16184"match": "\\b((?<!\\w)\\.?\\d(?:(?:[0-9a-zA-Z_\\.]|')|(?<=[eEpP])[+-])*)((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(<)",16185"captures": {16186"1": {16187"patterns": [16188{16189"begin": "(?=.)",16190"end": "$|(?=\\\\end\\{(?:minted|cppcode)\\})",16191"beginCaptures": {},16192"endCaptures": {},16193"patterns": [16194{16195"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*)?$)",16196"captures": {16197"1": {16198"name": "keyword.other.unit.hexadecimal.cpp"16199},16200"2": {16201"name": "constant.numeric.hexadecimal.cpp",16202"patterns": [16203{16204"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",16205"name": "punctuation.separator.constant.numeric.cpp"16206}16207]16208},16209"3": {16210"name": "punctuation.separator.constant.numeric.cpp"16211},16212"4": {16213"name": "constant.numeric.hexadecimal.cpp"16214},16215"5": {16216"name": "constant.numeric.hexadecimal.cpp",16217"patterns": [16218{16219"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",16220"name": "punctuation.separator.constant.numeric.cpp"16221}16222]16223},16224"6": {16225"name": "punctuation.separator.constant.numeric.cpp"16226},16227"7": {16228"name": "keyword.other.unit.exponent.hexadecimal.cpp"16229},16230"8": {16231"name": "keyword.operator.plus.exponent.hexadecimal.cpp"16232},16233"9": {16234"name": "keyword.operator.minus.exponent.hexadecimal.cpp"16235},16236"10": {16237"name": "constant.numeric.exponent.hexadecimal.cpp",16238"patterns": [16239{16240"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",16241"name": "punctuation.separator.constant.numeric.cpp"16242}16243]16244},16245"11": {16246"name": "keyword.other.suffix.literal.built-in.floating-point.cpp keyword.other.unit.suffix.floating-point.cpp"16247},16248"12": {16249"name": "keyword.other.suffix.literal.user-defined.integer.cpp keyword.other.unit.user-defined.cpp"16250}16251}16252},16253{16254"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*)?$)",16255"captures": {16256"1": {16257"name": "constant.numeric.decimal.cpp",16258"patterns": [16259{16260"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",16261"name": "punctuation.separator.constant.numeric.cpp"16262}16263]16264},16265"2": {16266"name": "punctuation.separator.constant.numeric.cpp"16267},16268"3": {16269"name": "constant.numeric.decimal.point.cpp"16270},16271"4": {16272"name": "constant.numeric.decimal.cpp",16273"patterns": [16274{16275"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",16276"name": "punctuation.separator.constant.numeric.cpp"16277}16278]16279},16280"5": {16281"name": "punctuation.separator.constant.numeric.cpp"16282},16283"6": {16284"name": "keyword.other.unit.exponent.decimal.cpp"16285},16286"7": {16287"name": "keyword.operator.plus.exponent.decimal.cpp"16288},16289"8": {16290"name": "keyword.operator.minus.exponent.decimal.cpp"16291},16292"9": {16293"name": "constant.numeric.exponent.decimal.cpp",16294"patterns": [16295{16296"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",16297"name": "punctuation.separator.constant.numeric.cpp"16298}16299]16300},16301"10": {16302"name": "keyword.other.suffix.literal.built-in.floating-point.cpp keyword.other.unit.suffix.floating-point.cpp"16303},16304"11": {16305"name": "keyword.other.suffix.literal.user-defined.integer.cpp keyword.other.unit.user-defined.cpp"16306}16307}16308},16309{16310"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*)?$)",16311"captures": {16312"1": {16313"name": "keyword.other.unit.binary.cpp"16314},16315"2": {16316"name": "constant.numeric.binary.cpp",16317"patterns": [16318{16319"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",16320"name": "punctuation.separator.constant.numeric.cpp"16321}16322]16323},16324"3": {16325"name": "punctuation.separator.constant.numeric.cpp"16326},16327"4": {16328"name": "keyword.other.suffix.literal.built-in.integer.cpp keyword.other.unit.suffix.integer.cpp"16329},16330"5": {16331"name": "keyword.other.suffix.literal.user-defined.integer.cpp keyword.other.unit.user-defined.cpp"16332}16333}16334},16335{16336"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*)?$)",16337"captures": {16338"1": {16339"name": "keyword.other.unit.octal.cpp"16340},16341"2": {16342"name": "constant.numeric.octal.cpp",16343"patterns": [16344{16345"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",16346"name": "punctuation.separator.constant.numeric.cpp"16347}16348]16349},16350"3": {16351"name": "punctuation.separator.constant.numeric.cpp"16352},16353"4": {16354"name": "keyword.other.suffix.literal.built-in.integer.cpp keyword.other.unit.suffix.integer.cpp"16355},16356"5": {16357"name": "keyword.other.suffix.literal.user-defined.integer.cpp keyword.other.unit.user-defined.cpp"16358}16359}16360},16361{16362"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*)?$)",16363"captures": {16364"1": {16365"name": "keyword.other.unit.hexadecimal.cpp"16366},16367"2": {16368"name": "constant.numeric.hexadecimal.cpp",16369"patterns": [16370{16371"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",16372"name": "punctuation.separator.constant.numeric.cpp"16373}16374]16375},16376"3": {16377"name": "punctuation.separator.constant.numeric.cpp"16378},16379"4": {16380"name": "keyword.other.unit.exponent.hexadecimal.cpp"16381},16382"5": {16383"name": "keyword.operator.plus.exponent.hexadecimal.cpp"16384},16385"6": {16386"name": "keyword.operator.minus.exponent.hexadecimal.cpp"16387},16388"7": {16389"name": "constant.numeric.exponent.hexadecimal.cpp",16390"patterns": [16391{16392"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",16393"name": "punctuation.separator.constant.numeric.cpp"16394}16395]16396},16397"8": {16398"name": "keyword.other.suffix.literal.built-in.integer.cpp keyword.other.unit.suffix.integer.cpp"16399},16400"9": {16401"name": "keyword.other.suffix.literal.user-defined.integer.cpp keyword.other.unit.user-defined.cpp"16402}16403}16404},16405{16406"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*)?$)",16407"captures": {16408"1": {16409"name": "constant.numeric.decimal.cpp",16410"patterns": [16411{16412"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",16413"name": "punctuation.separator.constant.numeric.cpp"16414}16415]16416},16417"2": {16418"name": "punctuation.separator.constant.numeric.cpp"16419},16420"3": {16421"name": "keyword.other.unit.exponent.decimal.cpp"16422},16423"4": {16424"name": "keyword.operator.plus.exponent.decimal.cpp"16425},16426"5": {16427"name": "keyword.operator.minus.exponent.decimal.cpp"16428},16429"6": {16430"name": "constant.numeric.exponent.decimal.cpp",16431"patterns": [16432{16433"match": "(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])",16434"name": "punctuation.separator.constant.numeric.cpp"16435}16436]16437},16438"7": {16439"name": "keyword.other.suffix.literal.built-in.integer.cpp keyword.other.unit.suffix.integer.cpp"16440},16441"8": {16442"name": "keyword.other.suffix.literal.user-defined.integer.cpp keyword.other.unit.user-defined.cpp"16443}16444}16445},16446{16447"match": "(?:(?:[0-9a-zA-Z_\\.]|')|(?<=[eEpP])[+-])+",16448"name": "invalid.illegal.constant.numeric.cpp"16449}16450]16451}16452]16453},16454"2": {16455"patterns": [16456{16457"include": "#inline_comment"16458}16459]16460},16461"3": {16462"patterns": [16463{16464"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",16465"captures": {16466"1": {16467"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"16468},16469"2": {16470"name": "comment.block.cpp"16471},16472"3": {16473"name": "comment.block.cpp punctuation.definition.comment.end.cpp"16474}16475}16476}16477]16478},16479"4": {16480"name": "keyword.operator.comparison.cpp"16481}16482}16483},16484{16485"include": "#template_call_range"16486}16487]16488},16489"template_definition": {16490"begin": "(?<!\\w)(template)(?:\\s+)?(<)",16491"end": ">|(?=\\\\end\\{(?:minted|cppcode)\\})",16492"beginCaptures": {16493"1": {16494"name": "storage.type.template.cpp"16495},16496"2": {16497"name": "punctuation.section.angle-brackets.begin.template.definition.cpp"16498}16499},16500"endCaptures": {16501"0": {16502"name": "punctuation.section.angle-brackets.end.template.definition.cpp"16503}16504},16505"name": "meta.template.definition.cpp",16506"patterns": [16507{16508"begin": "(?<=\\w)(?:\\s+)?<",16509"end": ">|(?=\\\\end\\{(?:minted|cppcode)\\})",16510"beginCaptures": {16511"0": {16512"name": "punctuation.section.angle-brackets.begin.template.call.cpp"16513}16514},16515"endCaptures": {16516"0": {16517"name": "punctuation.section.angle-brackets.end.template.call.cpp"16518}16519},16520"patterns": [16521{16522"include": "#template_call_context"16523}16524]16525},16526{16527"include": "#template_definition_context"16528}16529]16530},16531"template_definition_argument": {16532"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}))*)?(?:(,)|(?=>|$))",16533"captures": {16534"1": {16535"patterns": [16536{16537"include": "#inline_comment"16538}16539]16540},16541"2": {16542"patterns": [16543{16544"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",16545"captures": {16546"1": {16547"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"16548},16549"2": {16550"name": "comment.block.cpp"16551},16552"3": {16553"name": "comment.block.cpp punctuation.definition.comment.end.cpp"16554}16555}16556}16557]16558},16559"3": {16560"name": "storage.type.template.argument.$3.cpp"16561},16562"4": {16563"patterns": [16564{16565"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}))*",16566"name": "storage.type.template.argument.$0.cpp"16567}16568]16569},16570"5": {16571"name": "entity.name.type.template.cpp"16572},16573"6": {16574"name": "storage.type.template.argument.$6.cpp"16575},16576"7": {16577"name": "punctuation.vararg-ellipses.template.definition.cpp"16578},16579"8": {16580"name": "entity.name.type.template.cpp"16581},16582"9": {16583"name": "storage.type.template.cpp"16584},16585"10": {16586"name": "punctuation.section.angle-brackets.begin.template.definition.cpp"16587},16588"11": {16589"name": "storage.type.template.argument.$11.cpp"16590},16591"12": {16592"name": "entity.name.type.template.cpp"16593},16594"13": {16595"name": "punctuation.section.angle-brackets.end.template.definition.cpp"16596},16597"14": {16598"name": "storage.type.template.argument.$14.cpp"16599},16600"15": {16601"name": "entity.name.type.template.cpp"16602},16603"16": {16604"name": "keyword.operator.assignment.cpp"16605},16606"17": {16607"name": "punctuation.separator.delimiter.comma.template.argument.cpp"16608}16609}16610},16611"template_definition_context": {16612"patterns": [16613{16614"include": "#scope_resolution_template_definition_inner_generated"16615},16616{16617"include": "#template_definition_argument"16618},16619{16620"include": "#template_argument_defaulted"16621},16622{16623"include": "#template_call_innards"16624},16625{16626"include": "#evaluation_context"16627}16628]16629},16630"template_explicit_instantiation": {16631"match": "(?<!\\w)(?:(extern)\\s+)?(template)\\s+",16632"captures": {16633"1": {16634"name": "storage.modifier.specifier.extern.cpp"16635},16636"2": {16637"name": "storage.type.template.cpp"16638}16639},16640"name": "meta.template.explicit-instantiation.cpp"16641},16642"template_isolated_definition": {16643"match": "(?<!\\w)(template)(?:\\s+)?(<)(.*)(>)(?:\\s+)?$",16644"captures": {16645"1": {16646"name": "storage.type.template.cpp"16647},16648"2": {16649"name": "punctuation.section.angle-brackets.begin.template.definition.cpp"16650},16651"3": {16652"name": "meta.template.definition.cpp",16653"patterns": [16654{16655"include": "#template_definition_context"16656}16657]16658},16659"4": {16660"name": "punctuation.section.angle-brackets.end.template.definition.cpp"16661}16662}16663},16664"ternary_operator": {16665"begin": "\\?",16666"end": ":|(?=\\\\end\\{(?:minted|cppcode)\\})",16667"beginCaptures": {16668"0": {16669"name": "keyword.operator.ternary.cpp"16670}16671},16672"endCaptures": {16673"0": {16674"name": "keyword.operator.ternary.cpp"16675}16676},16677"patterns": [16678{16679"include": "#ever_present_context"16680},16681{16682"include": "#string_context"16683},16684{16685"include": "#number_literal"16686},16687{16688"include": "#method_access"16689},16690{16691"include": "#member_access"16692},16693{16694"include": "#predefined_macros"16695},16696{16697"include": "#operators"16698},16699{16700"include": "#memory_operators"16701},16702{16703"include": "#wordlike_operators"16704},16705{16706"include": "#type_casting_operators"16707},16708{16709"include": "#control_flow_keywords"16710},16711{16712"include": "#exception_keywords"16713},16714{16715"include": "#the_this_keyword"16716},16717{16718"include": "#language_constants"16719},16720{16721"include": "#constructor_bracket_call"16722},16723{16724"include": "#simple_constructor_call"16725},16726{16727"include": "#simple_array_assignment"16728},16729{16730"include": "#builtin_storage_type_initilizer"16731},16732{16733"include": "#qualifiers_and_specifiers_post_parameters"16734},16735{16736"include": "#functional_specifiers_pre_parameters"16737},16738{16739"include": "#storage_types"16740},16741{16742"include": "#lambdas"16743},16744{16745"include": "#attributes_context"16746},16747{16748"include": "#parentheses"16749},16750{16751"include": "#function_call"16752},16753{16754"include": "#scope_resolution_inner_generated"16755},16756{16757"include": "#square_brackets"16758},16759{16760"include": "#semicolon"16761},16762{16763"include": "#comma"16764},16765{16766"include": "#unknown_variable"16767}16768],16769"applyEndPatternLast": 116770},16771"the_this_keyword": {16772"match": "((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)this(?!\\w))",16773"captures": {16774"1": {16775"patterns": [16776{16777"include": "#inline_comment"16778}16779]16780},16781"2": {16782"patterns": [16783{16784"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",16785"captures": {16786"1": {16787"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"16788},16789"2": {16790"name": "comment.block.cpp"16791},16792"3": {16793"name": "comment.block.cpp punctuation.definition.comment.end.cpp"16794}16795}16796}16797]16798},16799"3": {16800"name": "variable.language.this.cpp"16801}16802}16803},16804"type_alias": {16805"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)",16806"captures": {16807"1": {16808"name": "keyword.other.using.directive.cpp"16809},16810"2": {16811"name": "entity.name.type.cpp"16812},16813"3": {16814"patterns": [16815{16816"include": "#attributes_context"16817},16818{16819"include": "#number_literal"16820}16821]16822},16823"4": {16824"name": "keyword.operator.assignment.cpp"16825},16826"5": {16827"name": "keyword.other.typename.cpp"16828},16829"6": {16830"patterns": [16831{16832"include": "#storage_specifiers"16833}16834]16835},16836"7": {16837"patterns": [16838{16839"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",16840"captures": {16841"1": {16842"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"16843},16844"2": {16845"name": "comment.block.cpp"16846},16847"3": {16848"name": "comment.block.cpp punctuation.definition.comment.end.cpp"16849}16850}16851}16852]16853},16854"8": {16855"name": "meta.qualified-type.cpp",16856"patterns": [16857{16858"match": "::",16859"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"16860},16861{16862"match": "(?<!\\w)(?:struct|class|union|enum)(?!\\w)",16863"name": "storage.type.$0.cpp"16864},16865{16866"include": "#attributes_context"16867},16868{16869"include": "#storage_types"16870},16871{16872"include": "#number_literal"16873},16874{16875"include": "#string_context"16876},16877{16878"include": "#comma"16879},16880{16881"include": "#scope_resolution_inner_generated"16882},16883{16884"include": "#template_call_range_helper"16885},16886{16887"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}))*",16888"name": "entity.name.type.cpp"16889}16890]16891},16892"9": {16893"patterns": [16894{16895"include": "#attributes_context"16896},16897{16898"include": "#number_literal"16899}16900]16901},16902"10": {16903"patterns": [16904{16905"include": "#inline_comment"16906}16907]16908},16909"11": {16910"patterns": [16911{16912"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",16913"captures": {16914"1": {16915"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"16916},16917"2": {16918"name": "comment.block.cpp"16919},16920"3": {16921"name": "comment.block.cpp punctuation.definition.comment.end.cpp"16922}16923}16924}16925]16926},16927"12": {16928"patterns": [16929{16930"include": "#inline_comment"16931}16932]16933},16934"13": {16935"patterns": [16936{16937"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",16938"captures": {16939"1": {16940"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"16941},16942"2": {16943"name": "comment.block.cpp"16944},16945"3": {16946"name": "comment.block.cpp punctuation.definition.comment.end.cpp"16947}16948}16949}16950]16951},16952"14": {16953"patterns": [16954{16955"match": "::",16956"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"16957},16958{16959"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)",16960"name": "entity.name.scope-resolution.type.cpp"16961},16962{16963"include": "#template_call_range_helper"16964}16965]16966},16967"15": {16968"patterns": [16969{16970"include": "#template_call_range_helper"16971}16972]16973},16974"17": {16975"patterns": [16976{16977"include": "#inline_comment"16978}16979]16980},16981"18": {16982"patterns": [16983{16984"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",16985"captures": {16986"1": {16987"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"16988},16989"2": {16990"name": "comment.block.cpp"16991},16992"3": {16993"name": "comment.block.cpp punctuation.definition.comment.end.cpp"16994}16995}16996}16997]16998},16999"20": {17000"name": "meta.declaration.type.alias.value.unknown.cpp",17001"patterns": [17002{17003"include": "#evaluation_context"17004}17005]17006},17007"21": {17008"patterns": [17009{17010"match": "\\*",17011"name": "storage.modifier.pointer.cpp"17012},17013{17014"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",17015"captures": {17016"1": {17017"patterns": [17018{17019"include": "#inline_comment"17020}17021]17022},17023"2": {17024"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"17025},17026"3": {17027"name": "comment.block.cpp"17028},17029"4": {17030"name": "comment.block.cpp punctuation.definition.comment.end.cpp"17031}17032},17033"name": "invalid.illegal.reference-type.cpp"17034},17035{17036"match": "\\&",17037"name": "storage.modifier.reference.cpp"17038}17039]17040},17041"22": {17042"patterns": [17043{17044"include": "#inline_comment"17045}17046]17047},17048"23": {17049"patterns": [17050{17051"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",17052"captures": {17053"1": {17054"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"17055},17056"2": {17057"name": "comment.block.cpp"17058},17059"3": {17060"name": "comment.block.cpp punctuation.definition.comment.end.cpp"17061}17062}17063}17064]17065},17066"24": {17067"patterns": [17068{17069"include": "#inline_comment"17070}17071]17072},17073"25": {17074"patterns": [17075{17076"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",17077"captures": {17078"1": {17079"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"17080},17081"2": {17082"name": "comment.block.cpp"17083},17084"3": {17085"name": "comment.block.cpp punctuation.definition.comment.end.cpp"17086}17087}17088}17089]17090},17091"26": {17092"patterns": [17093{17094"include": "#inline_comment"17095}17096]17097},17098"27": {17099"patterns": [17100{17101"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",17102"captures": {17103"1": {17104"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"17105},17106"2": {17107"name": "comment.block.cpp"17108},17109"3": {17110"name": "comment.block.cpp punctuation.definition.comment.end.cpp"17111}17112}17113}17114]17115},17116"28": {17117"name": "punctuation.definition.begin.bracket.square.cpp"17118},17119"29": {17120"patterns": [17121{17122"include": "#evaluation_context"17123}17124]17125},17126"30": {17127"name": "punctuation.definition.end.bracket.square.cpp"17128},17129"31": {17130"name": "punctuation.terminator.statement.cpp"17131}17132},17133"name": "meta.declaration.type.alias.cpp"17134},17135"type_casting_operators": {17136"match": "((?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:reinterpret_cast|dynamic_cast|static_cast|const_cast)(?!\\w))",17137"captures": {17138"1": {17139"patterns": [17140{17141"include": "#inline_comment"17142}17143]17144},17145"2": {17146"patterns": [17147{17148"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",17149"captures": {17150"1": {17151"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"17152},17153"2": {17154"name": "comment.block.cpp"17155},17156"3": {17157"name": "comment.block.cpp punctuation.definition.comment.end.cpp"17158}17159}17160}17161]17162},17163"3": {17164"name": "keyword.operator.wordlike.cpp keyword.operator.cast.$3.cpp"17165}17166}17167},17168"typedef_class": {17169"begin": "((?<!\\w)typedef(?!\\w))(?:\\s+)?(?=(?<!\\w)class(?!\\w))",17170"end": "(?<=;)|(?=\\\\end\\{(?:minted|cppcode)\\})",17171"beginCaptures": {17172"1": {17173"name": "keyword.other.typedef.cpp"17174}17175},17176"endCaptures": {},17177"patterns": [17178{17179"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))(:(?!:)))?)",17180"end": "(?:(?:(?<=\\}|%>|\\?\\?>)(?:\\s+)?(;)|(;))|(?=[;>\\[\\]=]))|(?=\\\\end\\{(?:minted|cppcode)\\})",17181"beginCaptures": {17182"0": {17183"name": "meta.head.class.cpp"17184},17185"1": {17186"name": "storage.type.$1.cpp"17187},17188"2": {17189"patterns": [17190{17191"include": "#inline_comment"17192}17193]17194},17195"3": {17196"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"17197},17198"4": {17199"name": "comment.block.cpp"17200},17201"5": {17202"name": "comment.block.cpp punctuation.definition.comment.end.cpp"17203},17204"6": {17205"patterns": [17206{17207"include": "#attributes_context"17208},17209{17210"include": "#number_literal"17211}17212]17213},17214"7": {17215"patterns": [17216{17217"include": "#inline_comment"17218}17219]17220},17221"8": {17222"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"17223},17224"9": {17225"name": "comment.block.cpp"17226},17227"10": {17228"name": "comment.block.cpp punctuation.definition.comment.end.cpp"17229},17230"11": {17231"patterns": [17232{17233"match": "((?<!\\w)final(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))",17234"captures": {17235"1": {17236"name": "storage.type.modifier.final.cpp"17237},17238"2": {17239"patterns": [17240{17241"include": "#inline_comment"17242}17243]17244},17245"3": {17246"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"17247},17248"4": {17249"name": "comment.block.cpp"17250},17251"5": {17252"name": "comment.block.cpp punctuation.definition.comment.end.cpp"17253}17254}17255},17256{17257"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)))?(?=:|{|$)",17258"captures": {17259"1": {17260"name": "entity.name.type.class.cpp"17261},17262"2": {17263"patterns": [17264{17265"include": "#inline_comment"17266}17267]17268},17269"3": {17270"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"17271},17272"4": {17273"name": "comment.block.cpp"17274},17275"5": {17276"name": "comment.block.cpp punctuation.definition.comment.end.cpp"17277},17278"6": {17279"name": "storage.type.modifier.final.cpp"17280},17281"7": {17282"patterns": [17283{17284"include": "#inline_comment"17285}17286]17287},17288"8": {17289"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"17290},17291"9": {17292"name": "comment.block.cpp"17293},17294"10": {17295"name": "comment.block.cpp punctuation.definition.comment.end.cpp"17296}17297}17298},17299{17300"match": "DLLEXPORT",17301"name": "entity.name.other.preprocessor.macro.predefined.DLLEXPORT.cpp"17302},17303{17304"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}))*",17305"name": "entity.name.other.preprocessor.macro.predefined.probably.$0.cpp"17306}17307]17308},17309"12": {17310"patterns": [17311{17312"include": "#inline_comment"17313}17314]17315},17316"13": {17317"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"17318},17319"14": {17320"name": "comment.block.cpp"17321},17322"15": {17323"name": "comment.block.cpp punctuation.definition.comment.end.cpp"17324},17325"16": {17326"patterns": [17327{17328"include": "#inline_comment"17329}17330]17331},17332"17": {17333"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"17334},17335"18": {17336"name": "comment.block.cpp"17337},17338"19": {17339"name": "comment.block.cpp punctuation.definition.comment.end.cpp"17340},17341"20": {17342"name": "punctuation.separator.colon.inheritance.cpp"17343}17344},17345"endCaptures": {17346"1": {17347"name": "punctuation.terminator.statement.cpp"17348},17349"2": {17350"name": "punctuation.terminator.statement.cpp"17351}17352},17353"name": "meta.block.class.cpp",17354"patterns": [17355{17356"begin": "\\G ?",17357"end": "(?:\\{|<%|\\?\\?<|(?=;))|(?=\\\\end\\{(?:minted|cppcode)\\})",17358"beginCaptures": {},17359"endCaptures": {17360"0": {17361"name": "punctuation.section.block.begin.bracket.curly.class.cpp"17362}17363},17364"name": "meta.head.class.cpp",17365"patterns": [17366{17367"include": "#ever_present_context"17368},17369{17370"include": "#inheritance_context"17371},17372{17373"include": "#template_call_range_helper"17374}17375]17376},17377{17378"begin": "(?<=\\{|<%|\\?\\?<)",17379"end": "\\}|%>|\\?\\?>|(?=\\\\end\\{(?:minted|cppcode)\\})",17380"beginCaptures": {},17381"endCaptures": {17382"0": {17383"name": "punctuation.section.block.end.bracket.curly.class.cpp"17384}17385},17386"name": "meta.body.class.cpp",17387"patterns": [17388{17389"include": "#function_pointer"17390},17391{17392"include": "#static_assert"17393},17394{17395"include": "#constructor_inline"17396},17397{17398"include": "#destructor_inline"17399},17400{17401"include": "#operator_overload"17402},17403{17404"include": "#normal_variable_declaration"17405},17406{17407"include": "#normal_variable_assignment"17408},17409{17410"include": "$self"17411}17412]17413},17414{17415"begin": "(?<=\\}|%>|\\?\\?>)[\\s]*",17416"end": "[\\s]*(?=;)|(?=\\\\end\\{(?:minted|cppcode)\\})",17417"beginCaptures": {},17418"endCaptures": {},17419"name": "meta.tail.class.cpp",17420"patterns": [17421{17422"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))",17423"captures": {17424"1": {17425"patterns": [17426{17427"match": "\\*",17428"name": "storage.modifier.pointer.cpp"17429},17430{17431"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",17432"captures": {17433"1": {17434"patterns": [17435{17436"include": "#inline_comment"17437}17438]17439},17440"2": {17441"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"17442},17443"3": {17444"name": "comment.block.cpp"17445},17446"4": {17447"name": "comment.block.cpp punctuation.definition.comment.end.cpp"17448}17449},17450"name": "invalid.illegal.reference-type.cpp"17451},17452{17453"match": "\\&",17454"name": "storage.modifier.reference.cpp"17455}17456]17457},17458"2": {17459"patterns": [17460{17461"include": "#inline_comment"17462}17463]17464},17465"3": {17466"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"17467},17468"4": {17469"name": "comment.block.cpp"17470},17471"5": {17472"name": "comment.block.cpp punctuation.definition.comment.end.cpp"17473},17474"6": {17475"patterns": [17476{17477"include": "#inline_comment"17478}17479]17480},17481"7": {17482"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"17483},17484"8": {17485"name": "comment.block.cpp"17486},17487"9": {17488"name": "comment.block.cpp punctuation.definition.comment.end.cpp"17489},17490"10": {17491"patterns": [17492{17493"include": "#inline_comment"17494}17495]17496},17497"11": {17498"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"17499},17500"12": {17501"name": "comment.block.cpp"17502},17503"13": {17504"name": "comment.block.cpp punctuation.definition.comment.end.cpp"17505},17506"14": {17507"name": "entity.name.type.alias.cpp"17508}17509}17510},17511{17512"match": ","17513}17514]17515}17516]17517}17518]17519},17520"typedef_function_pointer": {17521"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*\\))",17522"end": "(?<=;)|(?=\\\\end\\{(?:minted|cppcode)\\})",17523"beginCaptures": {17524"1": {17525"name": "keyword.other.typedef.cpp"17526}17527},17528"endCaptures": {},17529"patterns": [17530{17531"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+)?(\\()",17532"end": "(\\))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:(?:((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))((?<!\\w)(?:override|volatile|noexcept|final|const)(?!\\w)))+(?=\\s*(?:\\{|;|\\n|\\r|=))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)))?(?=[{=,);>]|\\n)(?!\\()|(?=\\\\end\\{(?:minted|cppcode)\\})",17533"beginCaptures": {17534"1": {17535"name": "meta.qualified-type.cpp",17536"patterns": [17537{17538"match": "::",17539"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"17540},17541{17542"match": "(?<!\\w)(?:struct|class|union|enum)(?!\\w)",17543"name": "storage.type.$0.cpp"17544},17545{17546"include": "#attributes_context"17547},17548{17549"include": "#storage_types"17550},17551{17552"include": "#number_literal"17553},17554{17555"include": "#string_context"17556},17557{17558"include": "#comma"17559},17560{17561"include": "#scope_resolution_inner_generated"17562},17563{17564"include": "#template_call_range_helper"17565},17566{17567"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}))*",17568"name": "entity.name.type.cpp"17569}17570]17571},17572"2": {17573"patterns": [17574{17575"include": "#attributes_context"17576},17577{17578"include": "#number_literal"17579}17580]17581},17582"3": {17583"patterns": [17584{17585"include": "#inline_comment"17586}17587]17588},17589"4": {17590"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"17591},17592"5": {17593"name": "comment.block.cpp"17594},17595"6": {17596"name": "comment.block.cpp punctuation.definition.comment.end.cpp"17597},17598"7": {17599"patterns": [17600{17601"include": "#inline_comment"17602}17603]17604},17605"8": {17606"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"17607},17608"9": {17609"name": "comment.block.cpp"17610},17611"10": {17612"name": "comment.block.cpp punctuation.definition.comment.end.cpp"17613},17614"11": {17615"patterns": [17616{17617"match": "::",17618"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"17619},17620{17621"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)",17622"name": "entity.name.scope-resolution.type.cpp"17623},17624{17625"include": "#template_call_range_helper"17626}17627]17628},17629"12": {17630"patterns": [17631{17632"include": "#template_call_range_helper"17633}17634]17635},17636"13": {},17637"14": {17638"patterns": [17639{17640"include": "#inline_comment"17641}17642]17643},17644"15": {17645"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"17646},17647"16": {17648"name": "comment.block.cpp"17649},17650"17": {17651"name": "comment.block.cpp punctuation.definition.comment.end.cpp"17652},17653"18": {},17654"19": {17655"patterns": [17656{17657"match": "\\*",17658"name": "storage.modifier.pointer.cpp"17659},17660{17661"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",17662"captures": {17663"1": {17664"patterns": [17665{17666"include": "#inline_comment"17667}17668]17669},17670"2": {17671"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"17672},17673"3": {17674"name": "comment.block.cpp"17675},17676"4": {17677"name": "comment.block.cpp punctuation.definition.comment.end.cpp"17678}17679},17680"name": "invalid.illegal.reference-type.cpp"17681},17682{17683"match": "\\&",17684"name": "storage.modifier.reference.cpp"17685}17686]17687},17688"20": {17689"patterns": [17690{17691"include": "#inline_comment"17692}17693]17694},17695"21": {17696"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"17697},17698"22": {17699"name": "comment.block.cpp"17700},17701"23": {17702"name": "comment.block.cpp punctuation.definition.comment.end.cpp"17703},17704"24": {17705"patterns": [17706{17707"include": "#inline_comment"17708}17709]17710},17711"25": {17712"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"17713},17714"26": {17715"name": "comment.block.cpp"17716},17717"27": {17718"name": "comment.block.cpp punctuation.definition.comment.end.cpp"17719},17720"28": {17721"patterns": [17722{17723"include": "#inline_comment"17724}17725]17726},17727"29": {17728"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"17729},17730"30": {17731"name": "comment.block.cpp"17732},17733"31": {17734"name": "comment.block.cpp punctuation.definition.comment.end.cpp"17735},17736"32": {17737"name": "punctuation.section.parens.begin.bracket.round.function.pointer.cpp"17738},17739"33": {17740"name": "punctuation.definition.function.pointer.dereference.cpp"17741},17742"34": {17743"name": "entity.name.type.alias.cpp entity.name.type.pointer.function.cpp"17744},17745"35": {17746"name": "punctuation.definition.begin.bracket.square.cpp"17747},17748"36": {17749"patterns": [17750{17751"include": "#evaluation_context"17752}17753]17754},17755"37": {17756"name": "punctuation.definition.end.bracket.square.cpp"17757},17758"38": {17759"name": "punctuation.section.parens.end.bracket.round.function.pointer.cpp"17760},17761"39": {17762"name": "punctuation.section.parameters.begin.bracket.round.function.pointer.cpp"17763}17764},17765"endCaptures": {17766"1": {17767"name": "punctuation.section.parameters.end.bracket.round.function.pointer.cpp"17768},17769"2": {17770"patterns": [17771{17772"include": "#inline_comment"17773}17774]17775},17776"3": {17777"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"17778},17779"4": {17780"name": "comment.block.cpp"17781},17782"5": {17783"name": "comment.block.cpp punctuation.definition.comment.end.cpp"17784},17785"6": {17786"patterns": [17787{17788"include": "#inline_comment"17789}17790]17791},17792"7": {17793"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"17794},17795"8": {17796"name": "comment.block.cpp"17797},17798"9": {17799"name": "comment.block.cpp punctuation.definition.comment.end.cpp"17800},17801"10": {17802"name": "storage.modifier.specifier.functional.post-parameters.$10.cpp"17803},17804"11": {17805"patterns": [17806{17807"include": "#inline_comment"17808}17809]17810},17811"12": {17812"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"17813},17814"13": {17815"name": "comment.block.cpp"17816},17817"14": {17818"name": "comment.block.cpp punctuation.definition.comment.end.cpp"17819}17820},17821"patterns": [17822{17823"include": "#function_parameter_context"17824}17825]17826}17827]17828},17829"typedef_struct": {17830"begin": "((?<!\\w)typedef(?!\\w))(?:\\s+)?(?=(?<!\\w)struct(?!\\w))",17831"end": "(?<=;)|(?=\\\\end\\{(?:minted|cppcode)\\})",17832"beginCaptures": {17833"1": {17834"name": "keyword.other.typedef.cpp"17835}17836},17837"endCaptures": {},17838"patterns": [17839{17840"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))(:(?!:)))?)",17841"end": "(?:(?:(?<=\\}|%>|\\?\\?>)(?:\\s+)?(;)|(;))|(?=[;>\\[\\]=]))|(?=\\\\end\\{(?:minted|cppcode)\\})",17842"beginCaptures": {17843"0": {17844"name": "meta.head.struct.cpp"17845},17846"1": {17847"name": "storage.type.$1.cpp"17848},17849"2": {17850"patterns": [17851{17852"include": "#inline_comment"17853}17854]17855},17856"3": {17857"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"17858},17859"4": {17860"name": "comment.block.cpp"17861},17862"5": {17863"name": "comment.block.cpp punctuation.definition.comment.end.cpp"17864},17865"6": {17866"patterns": [17867{17868"include": "#attributes_context"17869},17870{17871"include": "#number_literal"17872}17873]17874},17875"7": {17876"patterns": [17877{17878"include": "#inline_comment"17879}17880]17881},17882"8": {17883"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"17884},17885"9": {17886"name": "comment.block.cpp"17887},17888"10": {17889"name": "comment.block.cpp punctuation.definition.comment.end.cpp"17890},17891"11": {17892"patterns": [17893{17894"match": "((?<!\\w)final(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))",17895"captures": {17896"1": {17897"name": "storage.type.modifier.final.cpp"17898},17899"2": {17900"patterns": [17901{17902"include": "#inline_comment"17903}17904]17905},17906"3": {17907"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"17908},17909"4": {17910"name": "comment.block.cpp"17911},17912"5": {17913"name": "comment.block.cpp punctuation.definition.comment.end.cpp"17914}17915}17916},17917{17918"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)))?(?=:|{|$)",17919"captures": {17920"1": {17921"name": "entity.name.type.struct.cpp"17922},17923"2": {17924"patterns": [17925{17926"include": "#inline_comment"17927}17928]17929},17930"3": {17931"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"17932},17933"4": {17934"name": "comment.block.cpp"17935},17936"5": {17937"name": "comment.block.cpp punctuation.definition.comment.end.cpp"17938},17939"6": {17940"name": "storage.type.modifier.final.cpp"17941},17942"7": {17943"patterns": [17944{17945"include": "#inline_comment"17946}17947]17948},17949"8": {17950"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"17951},17952"9": {17953"name": "comment.block.cpp"17954},17955"10": {17956"name": "comment.block.cpp punctuation.definition.comment.end.cpp"17957}17958}17959},17960{17961"match": "DLLEXPORT",17962"name": "entity.name.other.preprocessor.macro.predefined.DLLEXPORT.cpp"17963},17964{17965"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}))*",17966"name": "entity.name.other.preprocessor.macro.predefined.probably.$0.cpp"17967}17968]17969},17970"12": {17971"patterns": [17972{17973"include": "#inline_comment"17974}17975]17976},17977"13": {17978"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"17979},17980"14": {17981"name": "comment.block.cpp"17982},17983"15": {17984"name": "comment.block.cpp punctuation.definition.comment.end.cpp"17985},17986"16": {17987"patterns": [17988{17989"include": "#inline_comment"17990}17991]17992},17993"17": {17994"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"17995},17996"18": {17997"name": "comment.block.cpp"17998},17999"19": {18000"name": "comment.block.cpp punctuation.definition.comment.end.cpp"18001},18002"20": {18003"name": "punctuation.separator.colon.inheritance.cpp"18004}18005},18006"endCaptures": {18007"1": {18008"name": "punctuation.terminator.statement.cpp"18009},18010"2": {18011"name": "punctuation.terminator.statement.cpp"18012}18013},18014"name": "meta.block.struct.cpp",18015"patterns": [18016{18017"begin": "\\G ?",18018"end": "(?:\\{|<%|\\?\\?<|(?=;))|(?=\\\\end\\{(?:minted|cppcode)\\})",18019"beginCaptures": {},18020"endCaptures": {18021"0": {18022"name": "punctuation.section.block.begin.bracket.curly.struct.cpp"18023}18024},18025"name": "meta.head.struct.cpp",18026"patterns": [18027{18028"include": "#ever_present_context"18029},18030{18031"include": "#inheritance_context"18032},18033{18034"include": "#template_call_range_helper"18035}18036]18037},18038{18039"begin": "(?<=\\{|<%|\\?\\?<)",18040"end": "\\}|%>|\\?\\?>|(?=\\\\end\\{(?:minted|cppcode)\\})",18041"beginCaptures": {},18042"endCaptures": {18043"0": {18044"name": "punctuation.section.block.end.bracket.curly.struct.cpp"18045}18046},18047"name": "meta.body.struct.cpp",18048"patterns": [18049{18050"include": "#function_pointer"18051},18052{18053"include": "#static_assert"18054},18055{18056"include": "#constructor_inline"18057},18058{18059"include": "#destructor_inline"18060},18061{18062"include": "#operator_overload"18063},18064{18065"include": "#normal_variable_declaration"18066},18067{18068"include": "#normal_variable_assignment"18069},18070{18071"include": "$self"18072}18073]18074},18075{18076"begin": "(?<=\\}|%>|\\?\\?>)[\\s]*",18077"end": "[\\s]*(?=;)|(?=\\\\end\\{(?:minted|cppcode)\\})",18078"beginCaptures": {},18079"endCaptures": {},18080"name": "meta.tail.struct.cpp",18081"patterns": [18082{18083"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))",18084"captures": {18085"1": {18086"patterns": [18087{18088"match": "\\*",18089"name": "storage.modifier.pointer.cpp"18090},18091{18092"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",18093"captures": {18094"1": {18095"patterns": [18096{18097"include": "#inline_comment"18098}18099]18100},18101"2": {18102"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"18103},18104"3": {18105"name": "comment.block.cpp"18106},18107"4": {18108"name": "comment.block.cpp punctuation.definition.comment.end.cpp"18109}18110},18111"name": "invalid.illegal.reference-type.cpp"18112},18113{18114"match": "\\&",18115"name": "storage.modifier.reference.cpp"18116}18117]18118},18119"2": {18120"patterns": [18121{18122"include": "#inline_comment"18123}18124]18125},18126"3": {18127"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"18128},18129"4": {18130"name": "comment.block.cpp"18131},18132"5": {18133"name": "comment.block.cpp punctuation.definition.comment.end.cpp"18134},18135"6": {18136"patterns": [18137{18138"include": "#inline_comment"18139}18140]18141},18142"7": {18143"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"18144},18145"8": {18146"name": "comment.block.cpp"18147},18148"9": {18149"name": "comment.block.cpp punctuation.definition.comment.end.cpp"18150},18151"10": {18152"patterns": [18153{18154"include": "#inline_comment"18155}18156]18157},18158"11": {18159"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"18160},18161"12": {18162"name": "comment.block.cpp"18163},18164"13": {18165"name": "comment.block.cpp punctuation.definition.comment.end.cpp"18166},18167"14": {18168"name": "entity.name.type.alias.cpp"18169}18170}18171},18172{18173"match": ","18174}18175]18176}18177]18178}18179]18180},18181"typedef_union": {18182"begin": "((?<!\\w)typedef(?!\\w))(?:\\s+)?(?=(?<!\\w)union(?!\\w))",18183"end": "(?<=;)|(?=\\\\end\\{(?:minted|cppcode)\\})",18184"beginCaptures": {18185"1": {18186"name": "keyword.other.typedef.cpp"18187}18188},18189"endCaptures": {},18190"patterns": [18191{18192"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))(:(?!:)))?)",18193"end": "(?:(?:(?<=\\}|%>|\\?\\?>)(?:\\s+)?(;)|(;))|(?=[;>\\[\\]=]))|(?=\\\\end\\{(?:minted|cppcode)\\})",18194"beginCaptures": {18195"0": {18196"name": "meta.head.union.cpp"18197},18198"1": {18199"name": "storage.type.$1.cpp"18200},18201"2": {18202"patterns": [18203{18204"include": "#inline_comment"18205}18206]18207},18208"3": {18209"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"18210},18211"4": {18212"name": "comment.block.cpp"18213},18214"5": {18215"name": "comment.block.cpp punctuation.definition.comment.end.cpp"18216},18217"6": {18218"patterns": [18219{18220"include": "#attributes_context"18221},18222{18223"include": "#number_literal"18224}18225]18226},18227"7": {18228"patterns": [18229{18230"include": "#inline_comment"18231}18232]18233},18234"8": {18235"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"18236},18237"9": {18238"name": "comment.block.cpp"18239},18240"10": {18241"name": "comment.block.cpp punctuation.definition.comment.end.cpp"18242},18243"11": {18244"patterns": [18245{18246"match": "((?<!\\w)final(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))",18247"captures": {18248"1": {18249"name": "storage.type.modifier.final.cpp"18250},18251"2": {18252"patterns": [18253{18254"include": "#inline_comment"18255}18256]18257},18258"3": {18259"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"18260},18261"4": {18262"name": "comment.block.cpp"18263},18264"5": {18265"name": "comment.block.cpp punctuation.definition.comment.end.cpp"18266}18267}18268},18269{18270"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)))?(?=:|{|$)",18271"captures": {18272"1": {18273"name": "entity.name.type.union.cpp"18274},18275"2": {18276"patterns": [18277{18278"include": "#inline_comment"18279}18280]18281},18282"3": {18283"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"18284},18285"4": {18286"name": "comment.block.cpp"18287},18288"5": {18289"name": "comment.block.cpp punctuation.definition.comment.end.cpp"18290},18291"6": {18292"name": "storage.type.modifier.final.cpp"18293},18294"7": {18295"patterns": [18296{18297"include": "#inline_comment"18298}18299]18300},18301"8": {18302"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"18303},18304"9": {18305"name": "comment.block.cpp"18306},18307"10": {18308"name": "comment.block.cpp punctuation.definition.comment.end.cpp"18309}18310}18311},18312{18313"match": "DLLEXPORT",18314"name": "entity.name.other.preprocessor.macro.predefined.DLLEXPORT.cpp"18315},18316{18317"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}))*",18318"name": "entity.name.other.preprocessor.macro.predefined.probably.$0.cpp"18319}18320]18321},18322"12": {18323"patterns": [18324{18325"include": "#inline_comment"18326}18327]18328},18329"13": {18330"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"18331},18332"14": {18333"name": "comment.block.cpp"18334},18335"15": {18336"name": "comment.block.cpp punctuation.definition.comment.end.cpp"18337},18338"16": {18339"patterns": [18340{18341"include": "#inline_comment"18342}18343]18344},18345"17": {18346"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"18347},18348"18": {18349"name": "comment.block.cpp"18350},18351"19": {18352"name": "comment.block.cpp punctuation.definition.comment.end.cpp"18353},18354"20": {18355"name": "punctuation.separator.colon.inheritance.cpp"18356}18357},18358"endCaptures": {18359"1": {18360"name": "punctuation.terminator.statement.cpp"18361},18362"2": {18363"name": "punctuation.terminator.statement.cpp"18364}18365},18366"name": "meta.block.union.cpp",18367"patterns": [18368{18369"begin": "\\G ?",18370"end": "(?:\\{|<%|\\?\\?<|(?=;))|(?=\\\\end\\{(?:minted|cppcode)\\})",18371"beginCaptures": {},18372"endCaptures": {18373"0": {18374"name": "punctuation.section.block.begin.bracket.curly.union.cpp"18375}18376},18377"name": "meta.head.union.cpp",18378"patterns": [18379{18380"include": "#ever_present_context"18381},18382{18383"include": "#inheritance_context"18384},18385{18386"include": "#template_call_range_helper"18387}18388]18389},18390{18391"begin": "(?<=\\{|<%|\\?\\?<)",18392"end": "\\}|%>|\\?\\?>|(?=\\\\end\\{(?:minted|cppcode)\\})",18393"beginCaptures": {},18394"endCaptures": {18395"0": {18396"name": "punctuation.section.block.end.bracket.curly.union.cpp"18397}18398},18399"name": "meta.body.union.cpp",18400"patterns": [18401{18402"include": "#function_pointer"18403},18404{18405"include": "#static_assert"18406},18407{18408"include": "#constructor_inline"18409},18410{18411"include": "#destructor_inline"18412},18413{18414"include": "#operator_overload"18415},18416{18417"include": "#normal_variable_declaration"18418},18419{18420"include": "#normal_variable_assignment"18421},18422{18423"include": "$self"18424}18425]18426},18427{18428"begin": "(?<=\\}|%>|\\?\\?>)[\\s]*",18429"end": "[\\s]*(?=;)|(?=\\\\end\\{(?:minted|cppcode)\\})",18430"beginCaptures": {},18431"endCaptures": {},18432"name": "meta.tail.union.cpp",18433"patterns": [18434{18435"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))",18436"captures": {18437"1": {18438"patterns": [18439{18440"match": "\\*",18441"name": "storage.modifier.pointer.cpp"18442},18443{18444"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",18445"captures": {18446"1": {18447"patterns": [18448{18449"include": "#inline_comment"18450}18451]18452},18453"2": {18454"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"18455},18456"3": {18457"name": "comment.block.cpp"18458},18459"4": {18460"name": "comment.block.cpp punctuation.definition.comment.end.cpp"18461}18462},18463"name": "invalid.illegal.reference-type.cpp"18464},18465{18466"match": "\\&",18467"name": "storage.modifier.reference.cpp"18468}18469]18470},18471"2": {18472"patterns": [18473{18474"include": "#inline_comment"18475}18476]18477},18478"3": {18479"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"18480},18481"4": {18482"name": "comment.block.cpp"18483},18484"5": {18485"name": "comment.block.cpp punctuation.definition.comment.end.cpp"18486},18487"6": {18488"patterns": [18489{18490"include": "#inline_comment"18491}18492]18493},18494"7": {18495"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"18496},18497"8": {18498"name": "comment.block.cpp"18499},18500"9": {18501"name": "comment.block.cpp punctuation.definition.comment.end.cpp"18502},18503"10": {18504"patterns": [18505{18506"include": "#inline_comment"18507}18508]18509},18510"11": {18511"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"18512},18513"12": {18514"name": "comment.block.cpp"18515},18516"13": {18517"name": "comment.block.cpp punctuation.definition.comment.end.cpp"18518},18519"14": {18520"name": "entity.name.type.alias.cpp"18521}18522}18523},18524{18525"match": ","18526}18527]18528}18529]18530}18531]18532},18533"typeid_operator": {18534"begin": "((?<!\\w)typeid(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(\\()",18535"end": "\\)|(?=\\\\end\\{(?:minted|cppcode)\\})",18536"beginCaptures": {18537"1": {18538"name": "keyword.operator.functionlike.cpp keyword.operator.typeid.cpp"18539},18540"2": {18541"patterns": [18542{18543"include": "#inline_comment"18544}18545]18546},18547"3": {18548"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"18549},18550"4": {18551"name": "comment.block.cpp"18552},18553"5": {18554"name": "comment.block.cpp punctuation.definition.comment.end.cpp"18555},18556"6": {18557"name": "punctuation.section.arguments.begin.bracket.round.operator.typeid.cpp"18558}18559},18560"endCaptures": {18561"0": {18562"name": "punctuation.section.arguments.end.bracket.round.operator.typeid.cpp"18563}18564},18565"contentName": "meta.arguments.operator.typeid",18566"patterns": [18567{18568"include": "#evaluation_context"18569}18570]18571},18572"typename": {18573"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<:.]))",18574"captures": {18575"1": {18576"name": "storage.modifier.cpp"18577},18578"2": {18579"patterns": [18580{18581"include": "#inline_comment"18582}18583]18584},18585"3": {18586"patterns": [18587{18588"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",18589"captures": {18590"1": {18591"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"18592},18593"2": {18594"name": "comment.block.cpp"18595},18596"3": {18597"name": "comment.block.cpp punctuation.definition.comment.end.cpp"18598}18599}18600}18601]18602},18603"4": {18604"patterns": [18605{18606"include": "#inline_comment"18607}18608]18609},18610"5": {18611"patterns": [18612{18613"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",18614"captures": {18615"1": {18616"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"18617},18618"2": {18619"name": "comment.block.cpp"18620},18621"3": {18622"name": "comment.block.cpp punctuation.definition.comment.end.cpp"18623}18624}18625}18626]18627},18628"6": {18629"name": "meta.qualified-type.cpp",18630"patterns": [18631{18632"match": "::",18633"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"18634},18635{18636"match": "(?<!\\w)(?:struct|class|union|enum)(?!\\w)",18637"name": "storage.type.$0.cpp"18638},18639{18640"include": "#attributes_context"18641},18642{18643"include": "#storage_types"18644},18645{18646"include": "#number_literal"18647},18648{18649"include": "#string_context"18650},18651{18652"include": "#comma"18653},18654{18655"include": "#scope_resolution_inner_generated"18656},18657{18658"include": "#template_call_range_helper"18659},18660{18661"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}))*",18662"name": "entity.name.type.cpp"18663}18664]18665},18666"7": {18667"patterns": [18668{18669"include": "#attributes_context"18670},18671{18672"include": "#number_literal"18673}18674]18675},18676"8": {18677"patterns": [18678{18679"include": "#inline_comment"18680}18681]18682},18683"9": {18684"patterns": [18685{18686"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",18687"captures": {18688"1": {18689"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"18690},18691"2": {18692"name": "comment.block.cpp"18693},18694"3": {18695"name": "comment.block.cpp punctuation.definition.comment.end.cpp"18696}18697}18698}18699]18700},18701"10": {18702"patterns": [18703{18704"include": "#inline_comment"18705}18706]18707},18708"11": {18709"patterns": [18710{18711"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",18712"captures": {18713"1": {18714"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"18715},18716"2": {18717"name": "comment.block.cpp"18718},18719"3": {18720"name": "comment.block.cpp punctuation.definition.comment.end.cpp"18721}18722}18723}18724]18725},18726"12": {18727"patterns": [18728{18729"match": "::",18730"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"18731},18732{18733"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)",18734"name": "entity.name.scope-resolution.type.cpp"18735},18736{18737"include": "#template_call_range_helper"18738}18739]18740},18741"13": {18742"patterns": [18743{18744"include": "#template_call_range_helper"18745}18746]18747},18748"14": {},18749"15": {18750"patterns": [18751{18752"include": "#inline_comment"18753}18754]18755},18756"16": {18757"patterns": [18758{18759"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",18760"captures": {18761"1": {18762"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"18763},18764"2": {18765"name": "comment.block.cpp"18766},18767"3": {18768"name": "comment.block.cpp punctuation.definition.comment.end.cpp"18769}18770}18771}18772]18773},18774"17": {}18775}18776},18777"undef": {18778"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))",18779"captures": {18780"1": {18781"name": "keyword.control.directive.undef.cpp"18782},18783"2": {18784"patterns": [18785{18786"include": "#inline_comment"18787}18788]18789},18790"3": {18791"patterns": [18792{18793"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",18794"captures": {18795"1": {18796"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"18797},18798"2": {18799"name": "comment.block.cpp"18800},18801"3": {18802"name": "comment.block.cpp punctuation.definition.comment.end.cpp"18803}18804}18805}18806]18807},18808"4": {18809"name": "punctuation.definition.directive.cpp"18810},18811"5": {18812"patterns": [18813{18814"include": "#inline_comment"18815}18816]18817},18818"6": {18819"patterns": [18820{18821"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",18822"captures": {18823"1": {18824"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"18825},18826"2": {18827"name": "comment.block.cpp"18828},18829"3": {18830"name": "comment.block.cpp punctuation.definition.comment.end.cpp"18831}18832}18833}18834]18835},18836"7": {18837"name": "entity.name.function.preprocessor.cpp"18838}18839},18840"name": "meta.preprocessor.undef.cpp"18841},18842"union_block": {18843"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))(:(?!:)))?)",18844"end": "(?:(?:(?<=\\}|%>|\\?\\?>)(?:\\s+)?(;)|(;))|(?=[;>\\[\\]=]))|(?=\\\\end\\{(?:minted|cppcode)\\})",18845"beginCaptures": {18846"0": {18847"name": "meta.head.union.cpp"18848},18849"1": {18850"name": "storage.type.$1.cpp"18851},18852"2": {18853"patterns": [18854{18855"include": "#inline_comment"18856}18857]18858},18859"3": {18860"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"18861},18862"4": {18863"name": "comment.block.cpp"18864},18865"5": {18866"name": "comment.block.cpp punctuation.definition.comment.end.cpp"18867},18868"6": {18869"patterns": [18870{18871"include": "#attributes_context"18872},18873{18874"include": "#number_literal"18875}18876]18877},18878"7": {18879"patterns": [18880{18881"include": "#inline_comment"18882}18883]18884},18885"8": {18886"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"18887},18888"9": {18889"name": "comment.block.cpp"18890},18891"10": {18892"name": "comment.block.cpp punctuation.definition.comment.end.cpp"18893},18894"11": {18895"patterns": [18896{18897"match": "((?<!\\w)final(?!\\w))((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))",18898"captures": {18899"1": {18900"name": "storage.type.modifier.final.cpp"18901},18902"2": {18903"patterns": [18904{18905"include": "#inline_comment"18906}18907]18908},18909"3": {18910"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"18911},18912"4": {18913"name": "comment.block.cpp"18914},18915"5": {18916"name": "comment.block.cpp punctuation.definition.comment.end.cpp"18917}18918}18919},18920{18921"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)))?(?=:|{|$)",18922"captures": {18923"1": {18924"name": "entity.name.type.union.cpp"18925},18926"2": {18927"patterns": [18928{18929"include": "#inline_comment"18930}18931]18932},18933"3": {18934"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"18935},18936"4": {18937"name": "comment.block.cpp"18938},18939"5": {18940"name": "comment.block.cpp punctuation.definition.comment.end.cpp"18941},18942"6": {18943"name": "storage.type.modifier.final.cpp"18944},18945"7": {18946"patterns": [18947{18948"include": "#inline_comment"18949}18950]18951},18952"8": {18953"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"18954},18955"9": {18956"name": "comment.block.cpp"18957},18958"10": {18959"name": "comment.block.cpp punctuation.definition.comment.end.cpp"18960}18961}18962},18963{18964"match": "DLLEXPORT",18965"name": "entity.name.other.preprocessor.macro.predefined.DLLEXPORT.cpp"18966},18967{18968"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}))*",18969"name": "entity.name.other.preprocessor.macro.predefined.probably.$0.cpp"18970}18971]18972},18973"12": {18974"patterns": [18975{18976"include": "#inline_comment"18977}18978]18979},18980"13": {18981"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"18982},18983"14": {18984"name": "comment.block.cpp"18985},18986"15": {18987"name": "comment.block.cpp punctuation.definition.comment.end.cpp"18988},18989"16": {18990"patterns": [18991{18992"include": "#inline_comment"18993}18994]18995},18996"17": {18997"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"18998},18999"18": {19000"name": "comment.block.cpp"19001},19002"19": {19003"name": "comment.block.cpp punctuation.definition.comment.end.cpp"19004},19005"20": {19006"name": "punctuation.separator.colon.inheritance.cpp"19007}19008},19009"endCaptures": {19010"1": {19011"name": "punctuation.terminator.statement.cpp"19012},19013"2": {19014"name": "punctuation.terminator.statement.cpp"19015}19016},19017"name": "meta.block.union.cpp",19018"patterns": [19019{19020"begin": "\\G ?",19021"end": "(?:\\{|<%|\\?\\?<|(?=;))|(?=\\\\end\\{(?:minted|cppcode)\\})",19022"beginCaptures": {},19023"endCaptures": {19024"0": {19025"name": "punctuation.section.block.begin.bracket.curly.union.cpp"19026}19027},19028"name": "meta.head.union.cpp",19029"patterns": [19030{19031"include": "#ever_present_context"19032},19033{19034"include": "#inheritance_context"19035},19036{19037"include": "#template_call_range_helper"19038}19039]19040},19041{19042"begin": "(?<=\\{|<%|\\?\\?<)",19043"end": "\\}|%>|\\?\\?>|(?=\\\\end\\{(?:minted|cppcode)\\})",19044"beginCaptures": {},19045"endCaptures": {19046"0": {19047"name": "punctuation.section.block.end.bracket.curly.union.cpp"19048}19049},19050"name": "meta.body.union.cpp",19051"patterns": [19052{19053"include": "#function_pointer"19054},19055{19056"include": "#static_assert"19057},19058{19059"include": "#constructor_inline"19060},19061{19062"include": "#destructor_inline"19063},19064{19065"include": "#operator_overload"19066},19067{19068"include": "#normal_variable_declaration"19069},19070{19071"include": "#normal_variable_assignment"19072},19073{19074"include": "$self"19075}19076]19077},19078{19079"begin": "(?<=\\}|%>|\\?\\?>)[\\s]*",19080"end": "[\\s]*(?=;)|(?=\\\\end\\{(?:minted|cppcode)\\})",19081"beginCaptures": {},19082"endCaptures": {},19083"name": "meta.tail.union.cpp",19084"patterns": [19085{19086"include": "$self"19087}19088]19089}19090]19091},19092"union_declare": {19093"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])",19094"captures": {19095"1": {19096"name": "storage.type.union.declare.cpp"19097},19098"2": {19099"patterns": [19100{19101"include": "#inline_comment"19102}19103]19104},19105"3": {19106"patterns": [19107{19108"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",19109"captures": {19110"1": {19111"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"19112},19113"2": {19114"name": "comment.block.cpp"19115},19116"3": {19117"name": "comment.block.cpp punctuation.definition.comment.end.cpp"19118}19119}19120}19121]19122},19123"4": {19124"name": "entity.name.type.union.cpp"19125},19126"5": {19127"patterns": [19128{19129"match": "\\*",19130"name": "storage.modifier.pointer.cpp"19131},19132{19133"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",19134"captures": {19135"1": {19136"patterns": [19137{19138"include": "#inline_comment"19139}19140]19141},19142"2": {19143"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"19144},19145"3": {19146"name": "comment.block.cpp"19147},19148"4": {19149"name": "comment.block.cpp punctuation.definition.comment.end.cpp"19150}19151},19152"name": "invalid.illegal.reference-type.cpp"19153},19154{19155"match": "\\&",19156"name": "storage.modifier.reference.cpp"19157}19158]19159},19160"6": {19161"patterns": [19162{19163"include": "#inline_comment"19164}19165]19166},19167"7": {19168"patterns": [19169{19170"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",19171"captures": {19172"1": {19173"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"19174},19175"2": {19176"name": "comment.block.cpp"19177},19178"3": {19179"name": "comment.block.cpp punctuation.definition.comment.end.cpp"19180}19181}19182}19183]19184},19185"8": {19186"patterns": [19187{19188"include": "#inline_comment"19189}19190]19191},19192"9": {19193"patterns": [19194{19195"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",19196"captures": {19197"1": {19198"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"19199},19200"2": {19201"name": "comment.block.cpp"19202},19203"3": {19204"name": "comment.block.cpp punctuation.definition.comment.end.cpp"19205}19206}19207}19208]19209},19210"10": {19211"patterns": [19212{19213"include": "#inline_comment"19214}19215]19216},19217"11": {19218"patterns": [19219{19220"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",19221"captures": {19222"1": {19223"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"19224},19225"2": {19226"name": "comment.block.cpp"19227},19228"3": {19229"name": "comment.block.cpp punctuation.definition.comment.end.cpp"19230}19231}19232}19233]19234},19235"12": {19236"name": "variable.other.object.declare.cpp"19237},19238"13": {19239"patterns": [19240{19241"include": "#inline_comment"19242}19243]19244},19245"14": {19246"patterns": [19247{19248"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",19249"captures": {19250"1": {19251"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"19252},19253"2": {19254"name": "comment.block.cpp"19255},19256"3": {19257"name": "comment.block.cpp punctuation.definition.comment.end.cpp"19258}19259}19260}19261]19262}19263}19264},19265"unknown_variable": {19266"match": "(?:(?:(?:(?:(\\b[a-z0-9]+\\b)|(\\b[a-zA-Z0-9]+_[a-zA-Z0-9]*\\b))|(\\b[a-z]+[A-Z][a-zA-Z0-9]*\\b))|(\\b[A-Z][A-Z_0-9]*\\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)))",19267"captures": {19268"1": {19269"name": "variable.lower-case.cpp variable.other.unknown.$1.cpp"19270},19271"2": {19272"name": "variable.snake-case.cpp variable.other.unknown.$2.cpp"19273},19274"3": {19275"name": "variable.camel-case.cpp variable.other.unknown.$3.cpp"19276},19277"4": {19278"name": "variable.upper-case.cpp variable.other.unknown.$4.cpp"19279},19280"5": {19281"name": "variable.other.unknown.$5.cpp"19282}19283}19284},19285"using_name": {19286"match": "(using)\\s+(?!namespace\\b)",19287"captures": {19288"1": {19289"name": "keyword.other.using.directive.cpp"19290}19291}19292},19293"using_namespace": {19294"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)",19295"end": ";|(?=\\\\end\\{(?:minted|cppcode)\\})",19296"beginCaptures": {19297"1": {19298"name": "keyword.other.using.directive.cpp"19299},19300"2": {19301"name": "keyword.other.namespace.directive.cpp storage.type.namespace.directive.cpp"19302},19303"3": {19304"patterns": [19305{19306"include": "#scope_resolution_namespace_using_inner_generated"19307}19308]19309},19310"4": {19311"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.using.cpp"19312},19313"5": {19314"patterns": [19315{19316"include": "#template_call_range_helper"19317}19318]19319},19320"6": {},19321"7": {19322"name": "entity.name.namespace.cpp"19323}19324},19325"endCaptures": {19326"0": {19327"name": "punctuation.terminator.statement.cpp"19328}19329},19330"name": "meta.using-namespace.cpp"19331},19332"vararg_ellipses": {19333"match": "(?<!\\.)\\.\\.\\.(?!\\.)",19334"name": "punctuation.vararg-ellipses.cpp"19335},19336"variable_assignment": {19337"match": "(?:((?:(?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)(?<!\\w)(?:thread_local|volatile|register|restrict|static|extern|const)(?!\\w)\\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<16>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\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<16>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)?(?![\\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[a-z0-9]+\\b)|(\\b[a-zA-Z0-9]+_[a-zA-Z0-9]*\\b))|(\\b[a-z]+[A-Z][a-zA-Z0-9]*\\b))|(\\b[A-Z][A-Z_0-9]*\\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*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?:((?:%=|\\+=|-=|\\*=|(?<!\\()\\/=))|((?:&=|\\^=|<<=|>>=|\\|=))|(\\=))",19338"captures": {19339"1": {19340"patterns": [19341{19342"include": "#storage_specifiers"19343}19344]19345},19346"2": {19347"patterns": [19348{19349"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",19350"captures": {19351"1": {19352"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"19353},19354"2": {19355"name": "comment.block.cpp"19356},19357"3": {19358"name": "comment.block.cpp punctuation.definition.comment.end.cpp"19359}19360}19361}19362]19363},19364"3": {19365"patterns": [19366{19367"include": "#inline_comment"19368}19369]19370},19371"4": {19372"patterns": [19373{19374"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",19375"captures": {19376"1": {19377"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"19378},19379"2": {19380"name": "comment.block.cpp"19381},19382"3": {19383"name": "comment.block.cpp punctuation.definition.comment.end.cpp"19384}19385}19386}19387]19388},19389"5": {19390"name": "meta.qualified-type.cpp",19391"patterns": [19392{19393"match": "::",19394"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"19395},19396{19397"match": "(?<!\\w)(?:struct|class|union|enum)(?!\\w)",19398"name": "storage.type.$0.cpp"19399},19400{19401"include": "#attributes_context"19402},19403{19404"include": "#storage_types"19405},19406{19407"include": "#number_literal"19408},19409{19410"include": "#string_context"19411},19412{19413"include": "#comma"19414},19415{19416"include": "#scope_resolution_inner_generated"19417},19418{19419"include": "#template_call_range_helper"19420},19421{19422"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}))*",19423"name": "entity.name.type.cpp"19424}19425]19426},19427"6": {19428"patterns": [19429{19430"include": "#attributes_context"19431},19432{19433"include": "#number_literal"19434}19435]19436},19437"7": {19438"patterns": [19439{19440"include": "#inline_comment"19441}19442]19443},19444"8": {19445"patterns": [19446{19447"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",19448"captures": {19449"1": {19450"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"19451},19452"2": {19453"name": "comment.block.cpp"19454},19455"3": {19456"name": "comment.block.cpp punctuation.definition.comment.end.cpp"19457}19458}19459}19460]19461},19462"9": {19463"patterns": [19464{19465"include": "#inline_comment"19466}19467]19468},19469"10": {19470"patterns": [19471{19472"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",19473"captures": {19474"1": {19475"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"19476},19477"2": {19478"name": "comment.block.cpp"19479},19480"3": {19481"name": "comment.block.cpp punctuation.definition.comment.end.cpp"19482}19483}19484}19485]19486},19487"11": {19488"patterns": [19489{19490"match": "::",19491"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"19492},19493{19494"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)",19495"name": "entity.name.scope-resolution.type.cpp"19496},19497{19498"include": "#template_call_range_helper"19499}19500]19501},19502"12": {19503"patterns": [19504{19505"include": "#template_call_range_helper"19506}19507]19508},19509"14": {19510"patterns": [19511{19512"include": "#inline_comment"19513}19514]19515},19516"15": {19517"patterns": [19518{19519"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",19520"captures": {19521"1": {19522"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"19523},19524"2": {19525"name": "comment.block.cpp"19526},19527"3": {19528"name": "comment.block.cpp punctuation.definition.comment.end.cpp"19529}19530}19531}19532]19533},19534"17": {19535"patterns": [19536{19537"match": "\\*",19538"name": "storage.modifier.pointer.cpp"19539},19540{19541"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",19542"captures": {19543"1": {19544"patterns": [19545{19546"include": "#inline_comment"19547}19548]19549},19550"2": {19551"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"19552},19553"3": {19554"name": "comment.block.cpp"19555},19556"4": {19557"name": "comment.block.cpp punctuation.definition.comment.end.cpp"19558}19559},19560"name": "invalid.illegal.reference-type.cpp"19561},19562{19563"match": "\\&",19564"name": "storage.modifier.reference.cpp"19565}19566]19567},19568"18": {19569"patterns": [19570{19571"include": "#inline_comment"19572}19573]19574},19575"19": {19576"patterns": [19577{19578"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",19579"captures": {19580"1": {19581"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"19582},19583"2": {19584"name": "comment.block.cpp"19585},19586"3": {19587"name": "comment.block.cpp punctuation.definition.comment.end.cpp"19588}19589}19590}19591]19592},19593"20": {19594"patterns": [19595{19596"include": "#inline_comment"19597}19598]19599},19600"21": {19601"patterns": [19602{19603"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",19604"captures": {19605"1": {19606"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"19607},19608"2": {19609"name": "comment.block.cpp"19610},19611"3": {19612"name": "comment.block.cpp punctuation.definition.comment.end.cpp"19613}19614}19615}19616]19617},19618"22": {19619"patterns": [19620{19621"include": "#inline_comment"19622}19623]19624},19625"23": {19626"patterns": [19627{19628"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",19629"captures": {19630"1": {19631"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"19632},19633"2": {19634"name": "comment.block.cpp"19635},19636"3": {19637"name": "comment.block.cpp punctuation.definition.comment.end.cpp"19638}19639}19640}19641]19642},19643"24": {19644"name": "variable.lower-case.cpp variable.other.assignment.cpp"19645},19646"25": {19647"name": "variable.snake-case.cpp variable.other.assignment.cpp"19648},19649"26": {19650"name": "variable.camel-case.cpp variable.other.assignment.cpp"19651},19652"27": {19653"name": "variable.upper-case.cpp variable.other.assignment.cpp"19654},19655"28": {19656"name": "variable.other.unknown.$28.cpp"19657},19658"29": {19659"patterns": [19660{19661"include": "#inline_comment"19662}19663]19664},19665"30": {19666"patterns": [19667{19668"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",19669"captures": {19670"1": {19671"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"19672},19673"2": {19674"name": "comment.block.cpp"19675},19676"3": {19677"name": "comment.block.cpp punctuation.definition.comment.end.cpp"19678}19679}19680}19681]19682},19683"31": {19684"name": "keyword.operator.assignment.compound.cpp"19685},19686"32": {19687"name": "keyword.operator.assignment.compound.bitwise.cpp"19688},19689"33": {19690"name": "keyword.operator.assignment.cpp"19691}19692},19693"name": "meta.assignment.cpp"19694},19695"variable_declare": {19696"match": "(?:((?:(?:((?:\\s*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z)(?<!\\w)(?:thread_local|volatile|register|restrict|static|extern|const)(?!\\w)\\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<16>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)\\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<16>|(?:(?:[^'\"<>\\/]|\\/[^*])++))*>)?(?![\\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[a-z0-9]+\\b)|(\\b[a-zA-Z0-9]+_[a-zA-Z0-9]*\\b))|(\\b[a-z]+[A-Z][a-zA-Z0-9]*\\b))|(\\b[A-Z][A-Z_0-9]*\\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*+\\/\\*(?:[^\\*]++|\\*+(?!\\/))*+\\*\\/\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))(?=;|,|\\[)(?![^=]++=)",19697"captures": {19698"1": {19699"patterns": [19700{19701"include": "#storage_specifiers"19702}19703]19704},19705"2": {19706"patterns": [19707{19708"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",19709"captures": {19710"1": {19711"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"19712},19713"2": {19714"name": "comment.block.cpp"19715},19716"3": {19717"name": "comment.block.cpp punctuation.definition.comment.end.cpp"19718}19719}19720}19721]19722},19723"3": {19724"patterns": [19725{19726"include": "#inline_comment"19727}19728]19729},19730"4": {19731"patterns": [19732{19733"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",19734"captures": {19735"1": {19736"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"19737},19738"2": {19739"name": "comment.block.cpp"19740},19741"3": {19742"name": "comment.block.cpp punctuation.definition.comment.end.cpp"19743}19744}19745}19746]19747},19748"5": {19749"name": "meta.qualified-type.cpp",19750"patterns": [19751{19752"match": "::",19753"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"19754},19755{19756"match": "(?<!\\w)(?:struct|class|union|enum)(?!\\w)",19757"name": "storage.type.$0.cpp"19758},19759{19760"include": "#attributes_context"19761},19762{19763"include": "#storage_types"19764},19765{19766"include": "#number_literal"19767},19768{19769"include": "#string_context"19770},19771{19772"include": "#comma"19773},19774{19775"include": "#scope_resolution_inner_generated"19776},19777{19778"include": "#template_call_range_helper"19779},19780{19781"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}))*",19782"name": "entity.name.type.cpp"19783}19784]19785},19786"6": {19787"patterns": [19788{19789"include": "#attributes_context"19790},19791{19792"include": "#number_literal"19793}19794]19795},19796"7": {19797"patterns": [19798{19799"include": "#inline_comment"19800}19801]19802},19803"8": {19804"patterns": [19805{19806"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",19807"captures": {19808"1": {19809"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"19810},19811"2": {19812"name": "comment.block.cpp"19813},19814"3": {19815"name": "comment.block.cpp punctuation.definition.comment.end.cpp"19816}19817}19818}19819]19820},19821"9": {19822"patterns": [19823{19824"include": "#inline_comment"19825}19826]19827},19828"10": {19829"patterns": [19830{19831"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",19832"captures": {19833"1": {19834"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"19835},19836"2": {19837"name": "comment.block.cpp"19838},19839"3": {19840"name": "comment.block.cpp punctuation.definition.comment.end.cpp"19841}19842}19843}19844]19845},19846"11": {19847"patterns": [19848{19849"match": "::",19850"name": "punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"19851},19852{19853"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)",19854"name": "entity.name.scope-resolution.type.cpp"19855},19856{19857"include": "#template_call_range_helper"19858}19859]19860},19861"12": {19862"patterns": [19863{19864"include": "#template_call_range_helper"19865}19866]19867},19868"14": {19869"patterns": [19870{19871"include": "#inline_comment"19872}19873]19874},19875"15": {19876"patterns": [19877{19878"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",19879"captures": {19880"1": {19881"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"19882},19883"2": {19884"name": "comment.block.cpp"19885},19886"3": {19887"name": "comment.block.cpp punctuation.definition.comment.end.cpp"19888}19889}19890}19891]19892},19893"17": {19894"patterns": [19895{19896"match": "\\*",19897"name": "storage.modifier.pointer.cpp"19898},19899{19900"match": "(?:\\&((?:(?:(?:\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+)+)|(?:\\s++)|(?<=\\W)|(?=\\W)|^|(?:\\n?$)|\\A|\\Z))){2,}\\&",19901"captures": {19902"1": {19903"patterns": [19904{19905"include": "#inline_comment"19906}19907]19908},19909"2": {19910"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"19911},19912"3": {19913"name": "comment.block.cpp"19914},19915"4": {19916"name": "comment.block.cpp punctuation.definition.comment.end.cpp"19917}19918},19919"name": "invalid.illegal.reference-type.cpp"19920},19921{19922"match": "\\&",19923"name": "storage.modifier.reference.cpp"19924}19925]19926},19927"18": {19928"patterns": [19929{19930"include": "#inline_comment"19931}19932]19933},19934"19": {19935"patterns": [19936{19937"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",19938"captures": {19939"1": {19940"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"19941},19942"2": {19943"name": "comment.block.cpp"19944},19945"3": {19946"name": "comment.block.cpp punctuation.definition.comment.end.cpp"19947}19948}19949}19950]19951},19952"20": {19953"patterns": [19954{19955"include": "#inline_comment"19956}19957]19958},19959"21": {19960"patterns": [19961{19962"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",19963"captures": {19964"1": {19965"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"19966},19967"2": {19968"name": "comment.block.cpp"19969},19970"3": {19971"name": "comment.block.cpp punctuation.definition.comment.end.cpp"19972}19973}19974}19975]19976},19977"22": {19978"patterns": [19979{19980"include": "#inline_comment"19981}19982]19983},19984"23": {19985"patterns": [19986{19987"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",19988"captures": {19989"1": {19990"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"19991},19992"2": {19993"name": "comment.block.cpp"19994},19995"3": {19996"name": "comment.block.cpp punctuation.definition.comment.end.cpp"19997}19998}19999}20000]20001},20002"24": {20003"name": "variable.lower-case.cpp variable.other.declare.cpp"20004},20005"25": {20006"name": "variable.snake-case.cpp variable.other.declare.cpp"20007},20008"26": {20009"name": "variable.camel-case.cpp variable.other.declare.cpp"20010},20011"27": {20012"name": "variable.upper-case.cpp variable.other.declare.cpp"20013},20014"28": {20015"name": "variable.other.unknown.$28.cpp"20016},20017"29": {20018"patterns": [20019{20020"include": "#inline_comment"20021}20022]20023},20024"30": {20025"patterns": [20026{20027"match": "\\s*+(\\/\\*)((?:[^\\*]++|\\*+(?!\\/))*+(\\*\\/))\\s*+",20028"captures": {20029"1": {20030"name": "comment.block.cpp punctuation.definition.comment.begin.cpp"20031},20032"2": {20033"name": "comment.block.cpp"20034},20035"3": {20036"name": "comment.block.cpp punctuation.definition.comment.end.cpp"20037}20038}20039}20040]20041}20042},20043"name": "meta.declaration.cpp"20044},20045"wordlike_operators": {20046"patterns": [20047{20048"match": "(?<!\\w)(?:noexcept|xor_eq|and_eq|delete|not_eq|bitand|bitor|compl|or_eq|not|xor|new|and|or)(?!\\w)",20049"name": "keyword.operator.wordlike.cpp keyword.operator.$0.cpp"20050}20051]20052}20053}20054}2005520056