Lines Matching refs:dex
244 const dex::StringId& GetStringId(dex::StringIndex idx) const { in GetStringId()
249 dex::StringIndex GetIndexForStringId(const dex::StringId& string_id) const { in GetIndexForStringId()
252 return dex::StringIndex(&string_id - string_ids_); in GetIndexForStringId()
255 int32_t GetStringLength(const dex::StringId& string_id) const;
260 const char* GetStringDataAndUtf16Length(const dex::StringId& string_id,
263 const char* GetStringData(const dex::StringId& string_id) const;
266 const char* StringDataAndUtf16LengthByIdx(dex::StringIndex idx, uint32_t* utf16_length) const;
268 const char* StringDataByIdx(dex::StringIndex idx) const;
269 std::string_view StringViewByIdx(dex::StringIndex idx) const;
272 const dex::StringId* FindStringId(const char* string) const;
274 const dex::TypeId* FindTypeId(const char* string) const;
275 const dex::TypeId* FindTypeId(std::string_view string) const { in FindTypeId()
285 bool IsTypeIndexValid(dex::TypeIndex idx) const { in IsTypeIndexValid()
290 const dex::TypeId& GetTypeId(dex::TypeIndex idx) const { in GetTypeId()
295 dex::TypeIndex GetIndexForTypeId(const dex::TypeId& type_id) const { in GetIndexForTypeId()
300 return dex::TypeIndex(static_cast<uint16_t>(result)); in GetIndexForTypeId()
304 const char* StringByTypeIdx(dex::TypeIndex idx, uint32_t* unicode_length) const;
306 const char* StringByTypeIdx(dex::TypeIndex idx) const;
309 const char* GetTypeDescriptor(const dex::TypeId& type_id) const;
312 const dex::TypeId* FindTypeId(dex::StringIndex string_idx) const;
321 const dex::FieldId& GetFieldId(uint32_t idx) const { in GetFieldId()
326 uint32_t GetIndexForFieldId(const dex::FieldId& field_id) const { in GetIndexForFieldId()
333 const dex::FieldId* FindFieldId(const dex::TypeId& declaring_klass,
334 const dex::StringId& name,
335 const dex::TypeId& type) const;
339 std::optional<uint32_t> GetCodeItemOffset(const dex::ClassDef& class_def,
344 uint32_t FindCodeItemOffset(const dex::ClassDef& class_def,
347 virtual uint32_t GetCodeItemSize(const dex::CodeItem& disk_code_item) const = 0;
350 const char* GetFieldDeclaringClassDescriptor(const dex::FieldId& field_id) const { in GetFieldDeclaringClassDescriptor()
351 const dex::TypeId& type_id = GetTypeId(field_id.class_idx_); in GetFieldDeclaringClassDescriptor()
356 const char* GetFieldTypeDescriptor(const dex::FieldId& field_id) const;
359 const char* GetFieldName(const dex::FieldId& field_id) const;
368 const dex::MethodId& GetMethodId(uint32_t idx) const { in GetMethodId()
373 uint32_t GetIndexForMethodId(const dex::MethodId& method_id) const { in GetIndexForMethodId()
380 const dex::MethodId* FindMethodId(const dex::TypeId& declaring_klass,
381 const dex::StringId& name,
382 const dex::ProtoId& signature) const;
384 const dex::MethodId* FindMethodIdByIndex(dex::TypeIndex declaring_klass,
385 dex::StringIndex name,
386 dex::ProtoIndex signature) const;
389 const char* GetMethodDeclaringClassDescriptor(const dex::MethodId& method_id) const;
392 const dex::ProtoId& GetMethodPrototype(const dex::MethodId& method_id) const { in GetMethodPrototype()
397 const Signature GetMethodSignature(const dex::MethodId& method_id) const;
400 const Signature GetProtoSignature(const dex::ProtoId& proto_id) const;
403 const char* GetMethodName(const dex::MethodId& method_id) const;
404 const char* GetMethodName(const dex::MethodId& method_id, uint32_t* utf_length) const;
412 const char* GetMethodShorty(const dex::MethodId& method_id) const;
413 const char* GetMethodShorty(const dex::MethodId& method_id, uint32_t* length) const;
422 const dex::ClassDef& GetClassDef(uint16_t idx) const { in GetClassDef()
427 uint16_t GetIndexForClassDef(const dex::ClassDef& class_def) const { in GetIndexForClassDef()
434 const char* GetClassDescriptor(const dex::ClassDef& class_def) const;
437 const dex::ClassDef* FindClassDef(dex::TypeIndex type_idx) const;
439 const dex::TypeList* GetInterfacesList(const dex::ClassDef& class_def) const { in GetInterfacesList()
440 return DataPointer<dex::TypeList>(class_def.interfaces_off_); in GetInterfacesList()
447 const dex::MethodHandleItem& GetMethodHandle(uint32_t idx) const { in GetMethodHandle()
456 const dex::CallSiteIdItem& GetCallSiteId(uint32_t idx) const { in GetCallSiteId()
462 const uint8_t* GetClassData(const dex::ClassDef& class_def) const { in GetClassData()
467 const dex::CodeItem* GetCodeItem(const uint32_t code_off) const { in GetCodeItem()
469 return DataPointer<dex::CodeItem>(code_off); in GetCodeItem()
472 const char* GetReturnTypeDescriptor(const dex::ProtoId& proto_id) const;
481 const dex::ProtoId& GetProtoId(dex::ProtoIndex idx) const { in GetProtoId()
486 dex::ProtoIndex GetIndexForProtoId(const dex::ProtoId& proto_id) const { in GetIndexForProtoId()
489 return dex::ProtoIndex(&proto_id - proto_ids_); in GetIndexForProtoId()
493 const dex::ProtoId* FindProtoId(dex::TypeIndex return_type_idx,
494 const dex::TypeIndex* signature_type_idxs,
496 const dex::ProtoId* FindProtoId(dex::TypeIndex return_type_idx, in FindProtoId()
497 const std::vector<dex::TypeIndex>& signature_type_idxs) const { in FindProtoId()
503 dex::TypeIndex* return_type_idx,
504 std::vector<dex::TypeIndex>* param_type_idxs) const;
507 const char* GetShorty(dex::ProtoIndex proto_idx) const;
509 const dex::TypeList* GetProtoParameters(const dex::ProtoId& proto_id) const { in GetProtoParameters()
510 return DataPointer<dex::TypeList>(proto_id.parameters_off_); in GetProtoParameters()
513 const uint8_t* GetEncodedStaticFieldValuesArray(const dex::ClassDef& class_def) const { in GetEncodedStaticFieldValuesArray()
517 const uint8_t* GetCallSiteEncodedValuesArray(const dex::CallSiteIdItem& call_site_id) const { in GetCallSiteEncodedValuesArray()
521 dex::ProtoIndex GetProtoIndexForCallSite(uint32_t call_site_idx) const;
523 static const dex::TryItem* GetTryItems(const DexInstructionIterator& code_item_end,
532 static int32_t FindTryItem(const dex::TryItem* try_items, uint32_t tries_size, uint32_t address);
569 const dex::AnnotationsDirectoryItem* GetAnnotationsDirectory(const dex::ClassDef& class_def) in GetAnnotationsDirectory()
571 return DataPointer<dex::AnnotationsDirectoryItem>(class_def.annotations_off_); in GetAnnotationsDirectory()
574 const dex::AnnotationSetItem* GetClassAnnotationSet(const dex::AnnotationsDirectoryItem* anno_dir) in GetClassAnnotationSet()
576 return DataPointer<dex::AnnotationSetItem>(anno_dir->class_annotations_off_); in GetClassAnnotationSet()
579 const dex::FieldAnnotationsItem* GetFieldAnnotations( in GetFieldAnnotations()
580 const dex::AnnotationsDirectoryItem* anno_dir) const { in GetFieldAnnotations()
583 : reinterpret_cast<const dex::FieldAnnotationsItem*>(&anno_dir[1]); in GetFieldAnnotations()
586 const dex::MethodAnnotationsItem* GetMethodAnnotations( in GetMethodAnnotations()
587 const dex::AnnotationsDirectoryItem* anno_dir) const { in GetMethodAnnotations()
593 addr += anno_dir->fields_size_ * sizeof(dex::FieldAnnotationsItem); in GetMethodAnnotations()
594 return reinterpret_cast<const dex::MethodAnnotationsItem*>(addr); in GetMethodAnnotations()
597 const dex::ParameterAnnotationsItem* GetParameterAnnotations( in GetParameterAnnotations()
598 const dex::AnnotationsDirectoryItem* anno_dir) const { in GetParameterAnnotations()
604 addr += anno_dir->fields_size_ * sizeof(dex::FieldAnnotationsItem); in GetParameterAnnotations()
605 addr += anno_dir->methods_size_ * sizeof(dex::MethodAnnotationsItem); in GetParameterAnnotations()
606 return reinterpret_cast<const dex::ParameterAnnotationsItem*>(addr); in GetParameterAnnotations()
609 const dex::AnnotationSetItem* GetFieldAnnotationSetItem( in GetFieldAnnotationSetItem()
610 const dex::FieldAnnotationsItem& anno_item) const { in GetFieldAnnotationSetItem()
611 return DataPointer<dex::AnnotationSetItem>(anno_item.annotations_off_); in GetFieldAnnotationSetItem()
614 const dex::AnnotationSetItem* GetMethodAnnotationSetItem( in GetMethodAnnotationSetItem()
615 const dex::MethodAnnotationsItem& anno_item) const { in GetMethodAnnotationSetItem()
616 return DataPointer<dex::AnnotationSetItem>(anno_item.annotations_off_); in GetMethodAnnotationSetItem()
619 const dex::AnnotationSetRefList* GetParameterAnnotationSetRefList( in GetParameterAnnotationSetRefList()
620 const dex::ParameterAnnotationsItem* anno_item) const { in GetParameterAnnotationSetRefList()
621 return DataPointer<dex::AnnotationSetRefList>(anno_item->annotations_off_); in GetParameterAnnotationSetRefList()
624 ALWAYS_INLINE const dex::AnnotationItem* GetAnnotationItemAtOffset(uint32_t offset) const { in GetAnnotationItemAtOffset()
625 return DataPointer<dex::AnnotationItem>(offset); in GetAnnotationItemAtOffset()
628 ALWAYS_INLINE const dex::HiddenapiClassData* GetHiddenapiClassDataAtOffset(uint32_t offset) in GetHiddenapiClassDataAtOffset()
630 return DataPointer<dex::HiddenapiClassData>(offset); in GetHiddenapiClassDataAtOffset()
633 ALWAYS_INLINE const dex::HiddenapiClassData* GetHiddenapiClassData() const { in GetHiddenapiClassData()
641 const dex::AnnotationItem* GetAnnotationItem(const dex::AnnotationSetItem* set_item, in GetAnnotationItem()
647 const dex::AnnotationSetItem* GetSetRefItemItem(const dex::AnnotationSetRefItem* anno_item) in GetSetRefItemItem()
649 return DataPointer<dex::AnnotationSetItem>(anno_item->annotations_off_); in GetSetRefItemItem()
698 const char* GetSourceFile(const dex::ClassDef& class_def) const { in GetSourceFile()
746 const dex::MapList* GetMapList() const { in GetMapList()
747 return reinterpret_cast<const dex::MapList*>(DataBegin() + header_->map_off_); in GetMapList()
770 std::string PrettyType(dex::TypeIndex type_idx) const;
809 static inline bool StringEquals(const DexFile* df1, dex::StringIndex sidx1,
810 const DexFile* df2, dex::StringIndex sidx2);
859 const dex::StringId* const string_ids_;
862 const dex::TypeId* const type_ids_;
865 const dex::FieldId* const field_ids_;
868 const dex::MethodId* const method_ids_;
871 const dex::ProtoId* const proto_ids_;
874 const dex::ClassDef* const class_defs_;
877 const dex::MethodHandleItem* method_handles_;
883 const dex::CallSiteIdItem* call_site_ids_;
890 const dex::HiddenapiClassData* hiddenapi_class_data_;
918 DexFileParameterIterator(const DexFile& dex_file, const dex::ProtoId& proto_id) in DexFileParameterIterator()
928 dex::TypeIndex GetTypeIdx() { in GetTypeIdx()
932 return dex_file_.StringByTypeIdx(dex::TypeIndex(GetTypeIdx())); in GetDescriptor()
936 const dex::TypeList* type_list_ = nullptr;
993 const dex::ClassDef& class_def) in EncodedStaticFieldValueIterator()
1005 const dex::CallSiteIdItem& call_site_id) in CallSiteArrayValueIterator()