1043 bool HasNestedBracedList;
1048struct AdditionalKeywords {
1049 AdditionalKeywords(IdentifierTable &IdentTable) {
1050 kw_final = &IdentTable.get(
"final");
1051 kw_override = &IdentTable.get(
"override");
1052 kw_in = &IdentTable.get(
"in");
1053 kw_of = &IdentTable.get(
"of");
1054 kw_CF_CLOSED_ENUM = &IdentTable.get(
"CF_CLOSED_ENUM");
1055 kw_CF_ENUM = &IdentTable.get(
"CF_ENUM");
1056 kw_CF_OPTIONS = &IdentTable.get(
"CF_OPTIONS");
1057 kw_NS_CLOSED_ENUM = &IdentTable.get(
"NS_CLOSED_ENUM");
1058 kw_NS_ENUM = &IdentTable.get(
"NS_ENUM");
1059 kw_NS_ERROR_ENUM = &IdentTable.get(
"NS_ERROR_ENUM");
1060 kw_NS_OPTIONS = &IdentTable.get(
"NS_OPTIONS");
1062 kw_as = &IdentTable.get(
"as");
1063 kw_async = &IdentTable.get(
"async");
1064 kw_await = &IdentTable.get(
"await");
1065 kw_declare = &IdentTable.get(
"declare");
1066 kw_finally = &IdentTable.get(
"finally");
1067 kw_from = &IdentTable.get(
"from");
1068 kw_function = &IdentTable.get(
"function");
1069 kw_get = &IdentTable.get(
"get");
1070 kw_import = &IdentTable.get(
"import");
1071 kw_infer = &IdentTable.get(
"infer");
1072 kw_is = &IdentTable.get(
"is");
1073 kw_let = &IdentTable.get(
"let");
1074 kw_module = &IdentTable.get(
"module");
1075 kw_readonly = &IdentTable.get(
"readonly");
1076 kw_set = &IdentTable.get(
"set");
1077 kw_type = &IdentTable.get(
"type");
1078 kw_typeof = &IdentTable.get(
"typeof");
1079 kw_var = &IdentTable.get(
"var");
1080 kw_yield = &IdentTable.get(
"yield");
1082 kw_abstract = &IdentTable.get(
"abstract");
1083 kw_assert = &IdentTable.get(
"assert");
1084 kw_extends = &IdentTable.get(
"extends");
1085 kw_implements = &IdentTable.get(
"implements");
1086 kw_instanceof = &IdentTable.get(
"instanceof");
1087 kw_interface = &IdentTable.get(
"interface");
1088 kw_native = &IdentTable.get(
"native");
1089 kw_package = &IdentTable.get(
"package");
1090 kw_record = &IdentTable.get(
"record");
1091 kw_synchronized = &IdentTable.get(
"synchronized");
1092 kw_throws = &IdentTable.get(
"throws");
1093 kw___except = &IdentTable.get(
"__except");
1094 kw___has_include = &IdentTable.get(
"__has_include");
1095 kw___has_include_next = &IdentTable.get(
"__has_include_next");
1097 kw_mark = &IdentTable.get(
"mark");
1098 kw_region = &IdentTable.get(
"region");
1100 kw_extend = &IdentTable.get(
"extend");
1101 kw_option = &IdentTable.get(
"option");
1102 kw_optional = &IdentTable.get(
"optional");
1103 kw_repeated = &IdentTable.get(
"repeated");
1104 kw_required = &IdentTable.get(
"required");
1105 kw_returns = &IdentTable.get(
"returns");
1107 kw_signals = &IdentTable.get(
"signals");
1108 kw_qsignals = &IdentTable.get(
"Q_SIGNALS");
1109 kw_slots = &IdentTable.get(
"slots");
1110 kw_qslots = &IdentTable.get(
"Q_SLOTS");
1113 kw_internal_ident_after_define =
1114 &IdentTable.get(
"__CLANG_FORMAT_INTERNAL_IDENT_AFTER_DEFINE__");
1117 kw_dollar = &IdentTable.get(
"dollar");
1118 kw_base = &IdentTable.get(
"base");
1119 kw_byte = &IdentTable.get(
"byte");
1120 kw_checked = &IdentTable.get(
"checked");
1121 kw_decimal = &IdentTable.get(
"decimal");
1122 kw_delegate = &IdentTable.get(
"delegate");
1123 kw_event = &IdentTable.get(
"event");
1124 kw_fixed = &IdentTable.get(
"fixed");
1125 kw_foreach = &IdentTable.get(
"foreach");
1126 kw_init = &IdentTable.get(
"init");
1127 kw_implicit = &IdentTable.get(
"implicit");
1128 kw_internal = &IdentTable.get(
"internal");
1129 kw_lock = &IdentTable.get(
"lock");
1130 kw_null = &IdentTable.get(
"null");
1131 kw_object = &IdentTable.get(
"object");
1132 kw_out = &IdentTable.get(
"out");
1133 kw_params = &IdentTable.get(
"params");
1134 kw_ref = &IdentTable.get(
"ref");
1135 kw_string = &IdentTable.get(
"string");
1136 kw_stackalloc = &IdentTable.get(
"stackalloc");
1137 kw_sbyte = &IdentTable.get(
"sbyte");
1138 kw_sealed = &IdentTable.get(
"sealed");
1139 kw_uint = &IdentTable.get(
"uint");
1140 kw_ulong = &IdentTable.get(
"ulong");
1141 kw_unchecked = &IdentTable.get(
"unchecked");
1142 kw_unsafe = &IdentTable.get(
"unsafe");
1143 kw_ushort = &IdentTable.get(
"ushort");
1144 kw_when = &IdentTable.get(
"when");
1145 kw_where = &IdentTable.get(
"where");
1148 kw_always = &IdentTable.get(
"always");
1149 kw_always_comb = &IdentTable.get(
"always_comb");
1150 kw_always_ff = &IdentTable.get(
"always_ff");
1151 kw_always_latch = &IdentTable.get(
"always_latch");
1152 kw_assign = &IdentTable.get(
"assign");
1153 kw_assume = &IdentTable.get(
"assume");
1154 kw_automatic = &IdentTable.get(
"automatic");
1155 kw_before = &IdentTable.get(
"before");
1156 kw_begin = &IdentTable.get(
"begin");
1157 kw_begin_keywords = &IdentTable.get(
"begin_keywords");
1158 kw_bins = &IdentTable.get(
"bins");
1159 kw_binsof = &IdentTable.get(
"binsof");
1160 kw_casex = &IdentTable.get(
"casex");
1161 kw_casez = &IdentTable.get(
"casez");
1162 kw_celldefine = &IdentTable.get(
"celldefine");
1163 kw_checker = &IdentTable.get(
"checker");
1164 kw_clocking = &IdentTable.get(
"clocking");
1165 kw_constraint = &IdentTable.get(
"constraint");
1166 kw_cover = &IdentTable.get(
"cover");
1167 kw_covergroup = &IdentTable.get(
"covergroup");
1168 kw_coverpoint = &IdentTable.get(
"coverpoint");
1169 kw_default_decay_time = &IdentTable.get(
"default_decay_time");
1170 kw_default_nettype = &IdentTable.get(
"default_nettype");
1171 kw_default_trireg_strength = &IdentTable.get(
"default_trireg_strength");
1172 kw_delay_mode_distributed = &IdentTable.get(
"delay_mode_distributed");
1173 kw_delay_mode_path = &IdentTable.get(
"delay_mode_path");
1174 kw_delay_mode_unit = &IdentTable.get(
"delay_mode_unit");
1175 kw_delay_mode_zero = &IdentTable.get(
"delay_mode_zero");
1176 kw_disable = &IdentTable.get(
"disable");
1177 kw_dist = &IdentTable.get(
"dist");
1178 kw_edge = &IdentTable.get(
"edge");
1179 kw_elsif = &IdentTable.get(
"elsif");
1180 kw_end = &IdentTable.get(
"end");
1181 kw_end_keywords = &IdentTable.get(
"end_keywords");
1182 kw_endcase = &IdentTable.get(
"endcase");
1183 kw_endcelldefine = &IdentTable.get(
"endcelldefine");
1184 kw_endchecker = &IdentTable.get(
"endchecker");
1185 kw_endclass = &IdentTable.get(
"endclass");
1186 kw_endclocking = &IdentTable.get(
"endclocking");
1187 kw_endfunction = &IdentTable.get(
"endfunction");
1188 kw_endgenerate = &IdentTable.get(
"endgenerate");
1189 kw_endgroup = &IdentTable.get(
"endgroup");
1190 kw_endinterface = &IdentTable.get(
"endinterface");
1191 kw_endmodule = &IdentTable.get(
"endmodule");
1192 kw_endpackage = &IdentTable.get(
"endpackage");
1193 kw_endprimitive = &IdentTable.get(
"endprimitive");
1194 kw_endprogram = &IdentTable.get(
"endprogram");
1195 kw_endproperty = &IdentTable.get(
"endproperty");
1196 kw_endsequence = &IdentTable.get(
"endsequence");
1197 kw_endspecify = &IdentTable.get(
"endspecify");
1198 kw_endtable = &IdentTable.get(
"endtable");
1199 kw_endtask = &IdentTable.get(
"endtask");
1200 kw_forever = &IdentTable.get(
"forever");
1201 kw_fork = &IdentTable.get(
"fork");
1202 kw_generate = &IdentTable.get(
"generate");
1203 kw_highz0 = &IdentTable.get(
"highz0");
1204 kw_highz1 = &IdentTable.get(
"highz1");
1205 kw_iff = &IdentTable.get(
"iff");
1206 kw_ifnone = &IdentTable.get(
"ifnone");
1207 kw_ignore_bins = &IdentTable.get(
"ignore_bins");
1208 kw_illegal_bins = &IdentTable.get(
"illegal_bins");
1209 kw_initial = &IdentTable.get(
"initial");
1210 kw_inout = &IdentTable.get(
"inout");
1211 kw_input = &IdentTable.get(
"input");
1212 kw_inside = &IdentTable.get(
"inside");
1213 kw_interconnect = &IdentTable.get(
"interconnect");
1214 kw_intersect = &IdentTable.get(
"intersect");
1215 kw_join = &IdentTable.get(
"join");
1216 kw_join_any = &IdentTable.get(
"join_any");
1217 kw_join_none = &IdentTable.get(
"join_none");
1218 kw_large = &IdentTable.get(
"large");
1219 kw_local = &IdentTable.get(
"local");
1220 kw_localparam = &IdentTable.get(
"localparam");
1221 kw_macromodule = &IdentTable.get(
"macromodule");
1222 kw_matches = &IdentTable.get(
"matches");
1223 kw_medium = &IdentTable.get(
"medium");
1224 kw_negedge = &IdentTable.get(
"negedge");
1225 kw_nounconnected_drive = &IdentTable.get(
"nounconnected_drive");
1226 kw_output = &IdentTable.get(
"output");
1227 kw_packed = &IdentTable.get(
"packed");
1228 kw_parameter = &IdentTable.get(
"parameter");
1229 kw_posedge = &IdentTable.get(
"posedge");
1230 kw_primitive = &IdentTable.get(
"primitive");
1231 kw_priority = &IdentTable.get(
"priority");
1232 kw_program = &IdentTable.get(
"program");
1233 kw_property = &IdentTable.get(
"property");
1234 kw_pull0 = &IdentTable.get(
"pull0");
1235 kw_pull1 = &IdentTable.get(
"pull1");
1236 kw_pure = &IdentTable.get(
"pure");
1237 kw_rand = &IdentTable.get(
"rand");
1238 kw_randc = &IdentTable.get(
"randc");
1239 kw_randcase = &IdentTable.get(
"randcase");
1240 kw_randsequence = &IdentTable.get(
"randsequence");
1241 kw_repeat = &IdentTable.get(
"repeat");
1242 kw_resetall = &IdentTable.get(
"resetall");
1243 kw_sample = &IdentTable.get(
"sample");
1244 kw_scalared = &IdentTable.get(
"scalared");
1245 kw_sequence = &IdentTable.get(
"sequence");
1246 kw_small = &IdentTable.get(
"small");
1247 kw_soft = &IdentTable.get(
"soft");
1248 kw_solve = &IdentTable.get(
"solve");
1249 kw_specify = &IdentTable.get(
"specify");
1250 kw_specparam = &IdentTable.get(
"specparam");
1251 kw_strong0 = &IdentTable.get(
"strong0");
1252 kw_strong1 = &IdentTable.get(
"strong1");
1253 kw_supply0 = &IdentTable.get(
"supply0");
1254 kw_supply1 = &IdentTable.get(
"supply1");
1255 kw_table = &IdentTable.get(
"table");
1256 kw_tagged = &IdentTable.get(
"tagged");
1257 kw_task = &IdentTable.get(
"task");
1258 kw_timescale = &IdentTable.get(
"timescale");
1259 kw_tri = &IdentTable.get(
"tri");
1260 kw_tri0 = &IdentTable.get(
"tri0");
1261 kw_tri1 = &IdentTable.get(
"tri1");
1262 kw_triand = &IdentTable.get(
"triand");
1263 kw_trior = &IdentTable.get(
"trior");
1264 kw_trireg = &IdentTable.get(
"trireg");
1265 kw_unconnected_drive = &IdentTable.get(
"unconnected_drive");
1266 kw_undefineall = &IdentTable.get(
"undefineall");
1267 kw_unique = &IdentTable.get(
"unique");
1268 kw_unique0 = &IdentTable.get(
"unique0");
1269 kw_uwire = &IdentTable.get(
"uwire");
1270 kw_vectored = &IdentTable.get(
"vectored");
1271 kw_wait = &IdentTable.get(
"wait");
1272 kw_wand = &IdentTable.get(
"wand");
1273 kw_weak0 = &IdentTable.get(
"weak0");
1274 kw_weak1 = &IdentTable.get(
"weak1");
1275 kw_wildcard = &IdentTable.get(
"wildcard");
1276 kw_wire = &IdentTable.get(
"wire");
1277 kw_with = &IdentTable.get(
"with");
1278 kw_wor = &IdentTable.get(
"wor");
1281 kw_verilogHash = &IdentTable.get(
"#");
1282 kw_verilogHashHash = &IdentTable.get(
"##");
1283 kw_apostrophe = &IdentTable.get(
"\'");
1286 kw_bit = &IdentTable.get(
"bit");
1287 kw_bits = &IdentTable.get(
"bits");
1288 kw_code = &IdentTable.get(
"code");
1289 kw_dag = &IdentTable.get(
"dag");
1290 kw_def = &IdentTable.get(
"def");
1291 kw_defm = &IdentTable.get(
"defm");
1292 kw_defset = &IdentTable.get(
"defset");
1293 kw_defvar = &IdentTable.get(
"defvar");
1294 kw_dump = &IdentTable.get(
"dump");
1295 kw_include = &IdentTable.get(
"include");
1296 kw_list = &IdentTable.get(
"list");
1297 kw_multiclass = &IdentTable.get(
"multiclass");
1298 kw_then = &IdentTable.get(
"then");
1302 JsExtraKeywords = std::unordered_set<IdentifierInfo *>(
1303 {kw_as, kw_async, kw_await, kw_declare, kw_finally, kw_from,
1304 kw_function, kw_get, kw_import, kw_is, kw_let, kw_module, kw_override,
1305 kw_readonly, kw_set, kw_type, kw_typeof, kw_var, kw_yield,
1307 kw_abstract, kw_extends, kw_implements, kw_instanceof, kw_interface});
1309 CSharpExtraKeywords = JsExtraKeywords;
1310 CSharpExtraKeywords.insert(
1311 {kw_base, kw_byte, kw_checked, kw_decimal, kw_delegate,
1312 kw_event, kw_fixed, kw_foreach, kw_implicit, kw_in,
1313 kw_init, kw_internal, kw_lock, kw_null, kw_object,
1314 kw_out, kw_params, kw_ref, kw_string, kw_stackalloc,
1315 kw_sbyte, kw_sealed, kw_uint, kw_ulong, kw_unchecked,
1316 kw_unsafe, kw_ushort, kw_when, kw_where});
1321 VerilogExtraKeywords = std::unordered_set<IdentifierInfo *>(
1322 {kw_always, kw_always_comb, kw_always_ff,
1323 kw_always_latch, kw_assert, kw_assign,
1324 kw_assume, kw_automatic, kw_before,
1325 kw_begin, kw_bins, kw_binsof,
1326 kw_casex, kw_casez, kw_celldefine,
1327 kw_checker, kw_clocking, kw_constraint,
1328 kw_cover, kw_covergroup, kw_coverpoint,
1329 kw_disable, kw_dist, kw_edge,
1330 kw_end, kw_endcase, kw_endchecker,
1331 kw_endclass, kw_endclocking, kw_endfunction,
1332 kw_endgenerate, kw_endgroup, kw_endinterface,
1333 kw_endmodule, kw_endpackage, kw_endprimitive,
1334 kw_endprogram, kw_endproperty, kw_endsequence,
1335 kw_endspecify, kw_endtable, kw_endtask,
1336 kw_extends, kw_final, kw_foreach,
1337 kw_forever, kw_fork, kw_function,
1338 kw_generate, kw_highz0, kw_highz1,
1339 kw_iff, kw_ifnone, kw_ignore_bins,
1340 kw_illegal_bins, kw_implements, kw_import,
1341 kw_initial, kw_inout, kw_input,
1342 kw_inside, kw_interconnect, kw_interface,
1343 kw_intersect, kw_join, kw_join_any,
1344 kw_join_none, kw_large, kw_let,
1345 kw_local, kw_localparam, kw_macromodule,
1346 kw_matches, kw_medium, kw_negedge,
1347 kw_output, kw_package, kw_packed,
1348 kw_parameter, kw_posedge, kw_primitive,
1349 kw_priority, kw_program, kw_property,
1350 kw_pull0, kw_pull1, kw_pure,
1351 kw_rand, kw_randc, kw_randcase,
1352 kw_randsequence, kw_ref, kw_repeat,
1353 kw_sample, kw_scalared, kw_sequence,
1354 kw_small, kw_soft, kw_solve,
1355 kw_specify, kw_specparam, kw_strong0,
1356 kw_strong1, kw_supply0, kw_supply1,
1357 kw_table, kw_tagged, kw_task,
1358 kw_tri, kw_tri0, kw_tri1,
1359 kw_triand, kw_trior, kw_trireg,
1360 kw_unique, kw_unique0, kw_uwire,
1361 kw_var, kw_vectored, kw_wait,
1362 kw_wand, kw_weak0, kw_weak1,
1363 kw_wildcard, kw_wire, kw_with,
1364 kw_wor, kw_verilogHash, kw_verilogHashHash});
1366 TableGenExtraKeywords = std::unordered_set<IdentifierInfo *>({