@Override public void write(DataOut out) { out.uint("string_data_off", stringData.offset); } }
@Override public void write(DataOut out) { out.uint("descriptor_idx", this.descriptor.index); }
@Override public void write(DataOut out) { out.uint("class_idx", clazz.index); out.uint("access_flags", this.accessFlags); out.uint("superclass_idx", superclazz == null ? NO_INDEX : superclazz.index); out.uint("interfaces_off", (interfaces == null || interfaces.items.size() == 0) ? 0 : interfaces.offset); out.uint("source_file_idx", sourceFile == null ? NO_INDEX : sourceFile.index); out.uint("annotations_off", annotations == null ? 0 : annotations.offset); out.uint("class_data_off", classData == null ? 0 : classData.offset); out.uint("static_values_off", staticValues == null ? 0 : staticValues.offset); }
public void write(DataOut out) { out.uint("magic", 0x0A786564); out.uint("version", version); out.skip4("checksum"); out.skip("signature", 20); out.uint("file_size", fileSize); out.uint("head_size", 0x70); out.uint("endian_tag", 0x12345678); out.skip("link_size,link_off", 8); out.uint("map_off", mapSection.items.size() == 0 ? 0 : mapSection.offset); out.uint("string_ids_size", stringIdSection.items.size()); out.uint("string_ids_off", stringIdSection.items.size() == 0 ? 0 : stringIdSection.offset); out.uint("type_ids_size", typeIdSection.items.size()); out.uint("type_ids_off", typeIdSection.items.size() == 0 ? 0 : typeIdSection.offset); out.uint("proto_ids_size", protoIdSection.items.size()); out.uint("proto_ids_off", protoIdSection.items.size() == 0 ? 0 : protoIdSection.offset); out.uint("field_ids_size", fieldIdSection.items.size()); out.uint("field_ids_off", fieldIdSection.items.size() == 0 ? 0 : fieldIdSection.offset); out.uint("method_ids_size", methodIdSection.items.size()); out.uint("method_ids_off", methodIdSection.items.size() == 0 ? 0 : methodIdSection.offset); out.uint("class_defs_size", classDefSection.items.size()); out.uint("class_defs_off", classDefSection.items.size() == 0 ? 0 : classDefSection.offset); out.uint("data_size", fileSize - mapSection.offset); // every thing after map is data section out.uint("data_off", mapSection.offset);// map is the first in data section }
@Override public void write(DataOut out) { out.uint("class_annotations_off", classAnnotations == null ? 0 : classAnnotations.offset); out.uint("fields_size", fieldAnnotations == null ? 0 : fieldAnnotations.size()); out.uint("annotated_methods_size", methodAnnotations == null ? 0 : methodAnnotations.size()); out.uint("annotated_parameter_size", parameterAnnotations == null ? 0 : parameterAnnotations.size()); if (fieldAnnotations != null) { for (Entry<FieldIdItem, AnnotationSetItem> fe : fieldAnnotations.entrySet()) { out.uint("field_idx", fe.getKey().index); out.uint("annotations_off", fe.getValue().offset); } } if (methodAnnotations != null) { for (Entry<MethodIdItem, AnnotationSetItem> fe : methodAnnotations.entrySet()) { out.uint("method_idx", fe.getKey().index); out.uint("annotations_off", fe.getValue().offset); } } if (parameterAnnotations != null) { for (Entry<MethodIdItem, AnnotationSetRefListItem> fe : parameterAnnotations.entrySet()) { out.uint("method_idx", fe.getKey().index); out.uint("annotations_off", fe.getValue().offset); } } } }
@Override public void write(DataOut out) { out.uint("size", items.size()); for (TypeIdItem idItem : items) { out.ushort("type_idx", idItem.index); } }
public void write(DataOut out) { out.begin("map_list"); out.uint("size", items.size()); for (SectionItem<?> t : items) { writeMapItem(out, t.sectionType.code, t.items.size(), t.offset); } out.end(); items.clear(); }
@Override public void write(DataOut out) { out.ushort("class_idx", clazz.index); out.ushort("proto_idx", type.index); out.uint("name_idx", name.index); }
@Override public void write(DataOut out) { out.ushort("class_idx", clazz.index); out.ushort("proto_idx", proto.index); out.uint("name_idx", name.index); }
out.ushort("outs_size", outsSize); out.ushort("tries_size", tries == null ? 0 : tries.size()); out.uint("debug_info_off", debugInfo == null ? 0 : debugInfo.offset); out.uint("insn_size", insn_size); ByteBuffer b = ByteBuffer.allocate(insn_size * 2).order(ByteOrder.LITTLE_ENDIAN); for (Insn insn : insns) { System.err.println("'Out-of-order try' may throwed by libdex"); out.uint("start_addr", ti.start.offset); out.ushort("insn_count", ti.end.offset - ti.start.offset); lastEnd = ti.end.offset;
@Override public void write(DataOut out) { out.uint("class_idx", clazz.index); out.uint("access_flags", this.accessFlags); out.uint("superclass_idx", superclazz == null ? NO_INDEX : superclazz.index); out.uint("interfaces_off", (interfaces == null || interfaces.items.size() == 0) ? 0 : interfaces.offset); out.uint("source_file_idx", sourceFile == null ? NO_INDEX : sourceFile.index); out.uint("annotations_off", annotations == null ? 0 : annotations.offset); out.uint("class_data_off", classData == null ? 0 : classData.offset); out.uint("static_values_off", staticValues == null ? 0 : staticValues.offset); }
@Override public void write(DataOut out) { out.uint("size", items.size()); for (TypeIdItem idItem : items) { out.ushort("type_idx", idItem.index); } }