Lines Matching defs:auto

65     auto res = std::unordered_map<Type::TypeId, PrimitiveTypeItem *> {};
85 auto res = map.find(key);
136 const auto it_synonym = program.function_synonyms.find(name);
154 auto value_type = value->GetType();
160 auto v = value->GetAsScalar()->GetValue<uint8_t>();
166 auto v = value->GetAsScalar()->GetValue<uint16_t>();
173 auto v = value->GetAsScalar()->GetValue<uint32_t>();
179 auto v = value->GetAsScalar()->GetValue<uint64_t>();
184 auto v = bit_cast<uint32_t>(value->GetAsScalar()->GetValue<float>());
189 auto v = bit_cast<uint64_t>(value->GetAsScalar()->GetValue<double>());
194 auto *string_item = container->GetOrCreateStringItem(value->GetAsScalar()->GetValue<std::string>());
199 auto name = value->GetAsScalar()->GetValue<std::string>();
200 auto method_item = static_cast<panda::panda_file::MethodItem *>(Find(entities.method_items, name));
205 auto key = value->GetAsScalar()->GetValue<std::string>();
206 auto lit_item = Find(entities.literalarray_items, key);
219 auto *string_item = container->GetOrCreateStringItem(value->GetAsScalar()->GetValue<std::string>());
233 auto type = value->GetAsScalar()->GetValue<Type>();
236 auto name = type.GetName();
237 auto it = classes.find(name);
260 auto name = value->GetAsScalar()->GetValue<std::string>();
264 auto it = methods.find(name);
269 auto *method_item = it->second;
283 auto name = value->GetAsScalar()->GetValue<std::string>();
284 auto it = literalarrays.find(name);
286 auto *literalarray_item = it->second;
300 auto name = value->GetAsScalar()->GetValue<std::string>();
301 auto it = fields.find(name);
306 auto *field_item = it->second;
320 auto annotation = value->GetAsScalar()->GetValue<AnnotationData>();
321 auto *annotation_item = CreateAnnotationItem(container, annotation, program, entities);
339 auto value_type = value->GetType();
394 for (const auto &elem_value : value->GetAsArray()->GetValues()) {
395 auto *item =
402 auto component_type = value->GetAsArray()->GetComponentType();
416 auto record_name = annotation.GetName();
417 auto it = program.record_table.find(record_name);
423 auto &record = it->second;
432 for (const auto &element : annotation.GetElements()) {
433 auto name = element.GetName();
434 auto *value = element.GetValue();
436 auto value_type = value->GetType();
441 auto array_element_type = value->GetAsArray()->GetComponentType();
449 auto *item = CreateValueItem(container, value, program, entities);
459 auto *cls = entities.class_items.find(record_name)->second;
496 for (const auto &annotation : metadata.GetAnnotations()) {
497 auto *annotation_item = CreateAnnotationItem(container, annotation, program, entities);
502 auto &record = program.record_table.find(annotation.GetName())->second;
524 const auto &id = insn.ids[idx];
525 auto it = items.find(id);
527 auto *item = it->second;
536 for (const auto &insn : func.ins) {
588 for (const auto &s : program.strings) {
589 auto *item = items->GetOrCreateStringItem(s);
598 for (const auto &[id, l] : program.literalarray_table) {
599 auto *literal_array_item = items->GetOrCreateLiteralArrayItem(id);
603 for (const auto &[id, l] : program.literalarray_table) {
604 auto *literal_array_item = entities.literalarray_items.find(id)->second;
606 for (auto &literal : l.literals_) {
741 for (const auto &t : program.array_types) {
742 auto *foreign_record = items->GetOrCreateForeignClassItem(t.GetDescriptor());
754 auto *foreign_record = items->GetOrCreateForeignClassItem(record_type.GetDescriptor(rec.conflict));
756 for (const auto &f : rec.field_list) {
758 auto *field_name = items->GetOrCreateStringItem(pandasm::DeMangleName(f.name));
764 auto *type_item = GetTypeItem(items, primitive_types, f.type, program);
769 auto *field = items->CreateItem<ForeignFieldItem>(foreign_record, field_name, type_item);
779 auto base_name = base_rec.metadata->GetBase();
781 auto it = program.record_table.find(base_name);
786 auto &rec = it->second;
801 auto ifaces = rec.metadata->GetInterfaces();
802 for (const auto &item : ifaces) {
803 auto it = program.record_table.find(item);
808 auto &iface = it->second;
824 for (const auto &f : rec.field_list) {
829 auto *field_name = items->GetOrCreateStringItem(pandasm::DeMangleName(f.name));
830 auto *type_item = GetTypeItem(items, primitive_types, f.type, program);
852 auto *record = items->GetOrCreateClassItem(record_type.GetDescriptor(rec.conflict));
859 auto *source_file_item = items->GetOrCreateStringItem(rec.source_file);
883 for (const auto &[name, rec] : program.record_table) {
914 auto iter = program.record_table.find(record_owner_name);
916 auto &rec = iter->second;
918 auto descriptor = record_owner_type.GetDescriptor(rec.conflict);
960 const auto &p = func.params[i].type;
961 auto *type_item = GetTypeItem(items, primitive_types, p, program);
974 for (const auto &v : func.local_variable_debug) {
1004 auto *proto = items->GetOrCreateProtoItem(type_item, params);
1037 for (const auto &f : program.function_table) {
1038 const auto &[mangled_name, func] = f;
1040 auto name = pandasm::DeMangleName(mangled_name);
1052 auto params = std::vector<MethodParamItem> {};
1071 auto *type_item = GetTypeItem(items, primitive_types, func.return_type, program);
1106 for (const auto &field : record.field_list) {
1107 auto field_name = record.name + "." + field.name;
1108 auto *field_item = static_cast<FieldItem *>(Find(entities.field_items, field_name));
1114 auto res = field.metadata->GetValue();
1116 auto value = res.value();
1117 auto *item = CreateValueItem(items, &value, program, entities);
1131 for (const auto &[name, record] : program.record_table) {
1136 auto *class_item = static_cast<ClassItem *>(Find(entities.class_items, name));
1153 auto *code = items->CreateItem<CodeItem>();
1161 auto *line_number_program = items->CreateLineNumberProgramItem();
1162 auto *debug_info = items->CreateItem<DebugInfoItem>(line_number_program);
1164 for (const auto &v : func.local_variable_debug) {
1171 auto nparams = method->GetParams().size();
1189 auto &param_items = method->GetParams();
1192 auto &param = func.params[param_idx];
1193 auto &param_item = param_items[proto_idx];
1217 for (const auto &[name, func] : program.function_table) {
1222 auto *method = static_cast<MethodItem *>(Find(entities.method_items, name));
1241 for (const auto &[name, method] : entities.method_items) {
1245 for (const auto &[name, field] : entities.field_items) {
1249 for (const auto &[name, cls] : entities.class_items) {
1253 for (const auto &[name, str] : entities.string_items) {
1257 for (const auto &[name, arr] : entities.literalarray_items) {
1267 auto *debug_info = method->GetDebugInfo();
1272 auto *line_number_program = debug_info->GetLineNumberProgram();
1273 auto *constant_pool = debug_info->GetConstantPool();
1278 auto &rec = program.record_table.find(record_name)->second;
1284 auto *source_code_item = items->GetOrCreateStringItem(func.source_code);
1288 auto *source_file_item = items->GetOrCreateStringItem(func.source_file);
1299 for (const auto &f : program.function_table) {
1300 const auto &[name, func] = f;
1306 auto emitter = BytecodeEmitter {};
1307 auto *method = static_cast<MethodItem *>(Find(entities.method_items, name));
1314 auto *code = method->GetCode();
1318 auto num_ins = static_cast<size_t>(
1319 std::count_if(func.ins.begin(), func.ins.end(), [](auto it) { return it.opcode != Opcode::INVALID; }));
1322 auto *bytes = code->GetInstructions();
1323 auto status = emitter.Build(static_cast<std::vector<unsigned char> *>(bytes));
1329 auto try_blocks = func.BuildTryBlocks(method, entities.class_items, *bytes);
1330 for (auto &try_block : try_blocks) {
1374 for (auto &[name, func] : prog->function_table) {
1375 for (const auto &an : func.metadata->GetAnnotations()) {
1402 for (auto &[name, func] : prog->function_table) {
1407 for (const auto &an : func.metadata->GetAnnotations()) {
1414 for (auto &it : func.concurrent_module_requests) {
1430 for (auto *prog : progs) {
1439 auto items = ItemContainer {};
1440 auto primitive_types = CreatePrimitiveTypes(&items);
1441 auto entities = AsmEmitter::AsmEntityCollections {};
1444 for (const auto *prog : progs) {
1450 for (const auto *prog : progs) {
1459 for (const auto *prog : progs) {
1465 auto writer = FileWriter(filename);
1480 auto primitive_types = CreatePrimitiveTypes(items);
1482 auto entities = AsmEmitter::AsmEntityCollections {};
1518 auto items = ItemContainer {};
1534 auto writer = FileWriter(filename);
1547 auto items = ItemContainer {};
1553 auto *buffer = new std::byte[size];
1555 auto writer = MemoryBufferWriter(reinterpret_cast<uint8_t *>(buffer), size);
1577 const auto &name = type.GetName();
1578 auto iter = program.record_table.find(name);
1583 auto &rec = iter->second;
1599 auto labels = std::unordered_map<std::string_view, panda::Label> {};
1601 for (const auto &insn : ins) {
1607 for (const auto &insn : ins) {
1609 auto search = labels.find(insn.label);
1638 const auto &v = local_variable_debug[variable_index];
1699 auto cn = GetColumnNumber(instruction_number);
1710 const auto &v = local_variable_debug[i];
1720 auto a_var = this->local_variable_debug[a.variable_index];
1721 auto b_var = this->local_variable_debug[b.variable_index];
1736 auto *program = debug_item->GetLineNumberProgram();
1744 auto prev_line_number = static_cast<int32_t>(GetLineNumber(0));
1755 auto iter = local_variable_info.begin();
1794 for (auto &catch_block : catch_blocks) {
1801 auto it = try_catch_map.find(try_key);
1814 auto it = try_catch_labels.find(ins[i].label);
1842 for (const auto &t_key : tcs.try_catch_order) {
1843 auto kv = tcs.try_catch_map.find(t_key);
1845 auto &try_catch_blocks = kv->second;
1851 for (auto *catch_block : try_catch_blocks) {
1852 auto class_name = catch_block->exception_record;
1856 auto it = class_items.find(class_name);
1861 auto handler_pc_offset = tcs.try_catch_labels[catch_block->catch_begin_label];
1862 auto handler_code_size = tcs.try_catch_labels[catch_block->catch_end_label] - handler_pc_offset;
1866 auto try_start_pc_offset = tcs.try_catch_labels[try_catch_blocks[0]->try_begin_label];
1867 auto try_end_pc_offset = tcs.try_catch_labels[try_catch_blocks[0]->try_end_label];
1878 for (const auto &i : ins) {
1886 auto super_pos = name.find_last_of(PARSE_AREA_MARKER);
1897 auto super_pos = name.find_last_of(PARSE_AREA_MARKER);