Lines Matching refs:dex
332 const dex::StringId& GetStringId(dex::StringIndex idx) const { in GetStringId()
337 dex::StringIndex GetIndexForStringId(const dex::StringId& string_id) const { in GetIndexForStringId()
340 return dex::StringIndex(&string_id - string_ids_); in GetIndexForStringId()
346 const char* GetStringDataAndUtf16Length(const dex::StringId& string_id,
348 const char* GetStringDataAndUtf16Length(dex::StringIndex string_idx,
351 uint32_t GetStringUtf16Length(const dex::StringId& string_id) const;
353 const char* GetStringData(const dex::StringId& string_id) const;
354 const char* GetStringData(dex::StringIndex string_idx) const;
356 std::string_view GetStringView(const dex::StringId& string_id) const;
357 std::string_view GetStringView(dex::StringIndex string_idx) const;
360 const dex::StringId* FindStringId(const char* string) const;
368 bool IsTypeIndexValid(dex::TypeIndex idx) const { in IsTypeIndexValid()
373 const dex::TypeId& GetTypeId(dex::TypeIndex idx) const { in GetTypeId()
378 dex::TypeIndex GetIndexForTypeId(const dex::TypeId& type_id) const { in GetIndexForTypeId()
383 return dex::TypeIndex(static_cast<uint16_t>(result)); in GetIndexForTypeId()
387 const char* GetTypeDescriptor(const dex::TypeId& type_id) const;
388 const char* GetTypeDescriptor(dex::TypeIndex type_idx) const;
389 std::string_view GetTypeDescriptorView(const dex::TypeId& type_id) const;
390 std::string_view GetTypeDescriptorView(dex::TypeIndex type_idx) const;
392 const dex::TypeId* FindTypeId(std::string_view descriptor) const;
395 const dex::TypeId* FindTypeId(dex::StringIndex string_idx) const;
404 const dex::FieldId& GetFieldId(uint32_t idx) const { in GetFieldId()
409 uint32_t GetIndexForFieldId(const dex::FieldId& field_id) const { in GetIndexForFieldId()
416 const dex::FieldId* FindFieldId(const dex::TypeId& declaring_klass,
417 const dex::StringId& name,
418 const dex::TypeId& type) const;
422 std::optional<uint32_t> GetCodeItemOffset(const dex::ClassDef& class_def,
427 uint32_t FindCodeItemOffset(const dex::ClassDef& class_def,
430 virtual uint32_t GetCodeItemSize(const dex::CodeItem& disk_code_item) const = 0;
433 const char* GetFieldDeclaringClassDescriptor(const dex::FieldId& field_id) const;
435 std::string_view GetFieldDeclaringClassDescriptorView(const dex::FieldId& field_id) const;
439 const char* GetFieldTypeDescriptor(const dex::FieldId& field_id) const;
441 std::string_view GetFieldTypeDescriptorView(const dex::FieldId& field_id) const;
445 const char* GetFieldName(const dex::FieldId& field_id) const;
447 std::string_view GetFieldNameView(const dex::FieldId& field_id) const;
457 const dex::MethodId& GetMethodId(uint32_t idx) const { in GetMethodId()
462 uint32_t GetIndexForMethodId(const dex::MethodId& method_id) const { in GetIndexForMethodId()
469 const dex::MethodId* FindMethodId(const dex::TypeId& declaring_klass,
470 const dex::StringId& name,
471 const dex::ProtoId& signature) const;
473 const dex::MethodId* FindMethodIdByIndex(dex::TypeIndex declaring_klass,
474 dex::StringIndex name,
475 dex::ProtoIndex signature) const;
478 const char* GetMethodDeclaringClassDescriptor(const dex::MethodId& method_id) const;
480 std::string_view GetMethodDeclaringClassDescriptorView(const dex::MethodId& method_id) const;
484 const dex::ProtoId& GetMethodPrototype(const dex::MethodId& method_id) const { in GetMethodPrototype()
489 const Signature GetMethodSignature(const dex::MethodId& method_id) const;
492 const Signature GetProtoSignature(const dex::ProtoId& proto_id) const;
495 const char* GetMethodName(const dex::MethodId& method_id) const;
496 const char* GetMethodName(const dex::MethodId& method_id, uint32_t* utf_length) const;
499 std::string_view GetMethodNameView(const dex::MethodId& method_id) const;
507 const char* GetMethodShorty(const dex::MethodId& method_id) const;
508 const char* GetMethodShorty(const dex::MethodId& method_id, uint32_t* length) const;
509 std::string_view GetMethodShortyView(const dex::MethodId& method_id) const;
518 const dex::ClassDef& GetClassDef(uint16_t idx) const { in GetClassDef()
523 uint16_t GetIndexForClassDef(const dex::ClassDef& class_def) const { in GetIndexForClassDef()
530 const char* GetClassDescriptor(const dex::ClassDef& class_def) const;
533 const dex::ClassDef* FindClassDef(dex::TypeIndex type_idx) const;
535 const dex::TypeList* GetInterfacesList(const dex::ClassDef& class_def) const { in GetInterfacesList()
536 return DataPointer<dex::TypeList>(class_def.interfaces_off_); in GetInterfacesList()
543 const dex::MethodHandleItem& GetMethodHandle(uint32_t idx) const { in GetMethodHandle()
552 const dex::CallSiteIdItem& GetCallSiteId(uint32_t idx) const { in GetCallSiteId()
558 const uint8_t* GetClassData(const dex::ClassDef& class_def) const { in GetClassData()
563 const dex::CodeItem* GetCodeItem(const uint32_t code_off) const { in GetCodeItem()
565 return DataPointer<dex::CodeItem>(code_off); in GetCodeItem()
568 const char* GetReturnTypeDescriptor(const dex::ProtoId& proto_id) const;
577 const dex::ProtoId& GetProtoId(dex::ProtoIndex idx) const { in GetProtoId()
582 dex::ProtoIndex GetIndexForProtoId(const dex::ProtoId& proto_id) const { in GetIndexForProtoId()
585 return dex::ProtoIndex(&proto_id - proto_ids_); in GetIndexForProtoId()
589 const dex::ProtoId* FindProtoId(dex::TypeIndex return_type_idx,
590 const dex::TypeIndex* signature_type_idxs,
592 const dex::ProtoId* FindProtoId(dex::TypeIndex return_type_idx, in FindProtoId()
593 const std::vector<dex::TypeIndex>& signature_type_idxs) const { in FindProtoId()
599 dex::TypeIndex* return_type_idx,
600 std::vector<dex::TypeIndex>* param_type_idxs) const;
603 const char* GetShorty(dex::ProtoIndex proto_idx) const;
604 std::string_view GetShortyView(dex::ProtoIndex proto_idx) const;
605 std::string_view GetShortyView(const dex::ProtoId& proto_id) const;
607 const dex::TypeList* GetProtoParameters(const dex::ProtoId& proto_id) const { in GetProtoParameters()
608 return DataPointer<dex::TypeList>(proto_id.parameters_off_); in GetProtoParameters()
611 const uint8_t* GetEncodedStaticFieldValuesArray(const dex::ClassDef& class_def) const { in GetEncodedStaticFieldValuesArray()
615 const uint8_t* GetCallSiteEncodedValuesArray(const dex::CallSiteIdItem& call_site_id) const { in GetCallSiteEncodedValuesArray()
619 dex::ProtoIndex GetProtoIndexForCallSite(uint32_t call_site_idx) const;
621 static const dex::TryItem* GetTryItems(const DexInstructionIterator& code_item_end,
630 static int32_t FindTryItem(const dex::TryItem* try_items, uint32_t tries_size, uint32_t address);
666 const dex::AnnotationsDirectoryItem* GetAnnotationsDirectory(const dex::ClassDef& class_def) in GetAnnotationsDirectory()
668 return DataPointer<dex::AnnotationsDirectoryItem>(class_def.annotations_off_); in GetAnnotationsDirectory()
671 const dex::AnnotationSetItem* GetClassAnnotationSet(const dex::AnnotationsDirectoryItem* anno_dir) in GetClassAnnotationSet()
673 return DataPointer<dex::AnnotationSetItem>(anno_dir->class_annotations_off_); in GetClassAnnotationSet()
676 const dex::FieldAnnotationsItem* GetFieldAnnotations( in GetFieldAnnotations()
677 const dex::AnnotationsDirectoryItem* anno_dir) const { in GetFieldAnnotations()
680 : reinterpret_cast<const dex::FieldAnnotationsItem*>(&anno_dir[1]); in GetFieldAnnotations()
683 const dex::MethodAnnotationsItem* GetMethodAnnotations( in GetMethodAnnotations()
684 const dex::AnnotationsDirectoryItem* anno_dir) const { in GetMethodAnnotations()
690 addr += anno_dir->fields_size_ * sizeof(dex::FieldAnnotationsItem); in GetMethodAnnotations()
691 return reinterpret_cast<const dex::MethodAnnotationsItem*>(addr); in GetMethodAnnotations()
694 const dex::ParameterAnnotationsItem* GetParameterAnnotations( in GetParameterAnnotations()
695 const dex::AnnotationsDirectoryItem* anno_dir) const { in GetParameterAnnotations()
701 addr += anno_dir->fields_size_ * sizeof(dex::FieldAnnotationsItem); in GetParameterAnnotations()
702 addr += anno_dir->methods_size_ * sizeof(dex::MethodAnnotationsItem); in GetParameterAnnotations()
703 return reinterpret_cast<const dex::ParameterAnnotationsItem*>(addr); in GetParameterAnnotations()
706 const dex::AnnotationSetItem* GetFieldAnnotationSetItem( in GetFieldAnnotationSetItem()
707 const dex::FieldAnnotationsItem& anno_item) const { in GetFieldAnnotationSetItem()
709 return NonNullDataPointer<dex::AnnotationSetItem>(anno_item.annotations_off_); in GetFieldAnnotationSetItem()
712 const dex::AnnotationSetItem* GetMethodAnnotationSetItem( in GetMethodAnnotationSetItem()
713 const dex::MethodAnnotationsItem& anno_item) const { in GetMethodAnnotationSetItem()
715 return NonNullDataPointer<dex::AnnotationSetItem>(anno_item.annotations_off_); in GetMethodAnnotationSetItem()
718 const dex::AnnotationSetRefList* GetParameterAnnotationSetRefList( in GetParameterAnnotationSetRefList()
719 const dex::ParameterAnnotationsItem* anno_item) const { in GetParameterAnnotationSetRefList()
720 return DataPointer<dex::AnnotationSetRefList>(anno_item->annotations_off_); in GetParameterAnnotationSetRefList()
723 ALWAYS_INLINE const dex::AnnotationItem* GetAnnotationItemAtOffset(uint32_t offset) const { in GetAnnotationItemAtOffset()
724 return DataPointer<dex::AnnotationItem>(offset); in GetAnnotationItemAtOffset()
727 ALWAYS_INLINE const dex::HiddenapiClassData* GetHiddenapiClassDataAtOffset(uint32_t offset) in GetHiddenapiClassDataAtOffset()
729 return DataPointer<dex::HiddenapiClassData>(offset); in GetHiddenapiClassDataAtOffset()
732 ALWAYS_INLINE const dex::HiddenapiClassData* GetHiddenapiClassData() const { in GetHiddenapiClassData()
740 const dex::AnnotationItem* GetAnnotationItem(const dex::AnnotationSetItem* set_item, in GetAnnotationItem()
746 const dex::AnnotationSetItem* GetSetRefItemItem(const dex::AnnotationSetRefItem* anno_item) in GetSetRefItemItem()
748 return DataPointer<dex::AnnotationSetItem>(anno_item->annotations_off_); in GetSetRefItemItem()
797 const char* GetSourceFile(const dex::ClassDef& class_def) const { in GetSourceFile()
847 const dex::MapList* GetMapList() const { in GetMapList()
848 return reinterpret_cast<const dex::MapList*>(DataBegin() + header_->map_off_); in GetMapList()
871 std::string PrettyType(dex::TypeIndex type_idx) const;
908 static inline bool StringEquals(const DexFile* df1, dex::StringIndex sidx1,
909 const DexFile* df2, dex::StringIndex sidx2);
976 const dex::StringId* const string_ids_;
979 const dex::TypeId* const type_ids_;
982 const dex::FieldId* const field_ids_;
985 const dex::MethodId* const method_ids_;
988 const dex::ProtoId* const proto_ids_;
991 const dex::ClassDef* const class_defs_;
994 const dex::MethodHandleItem* method_handles_;
1000 const dex::CallSiteIdItem* call_site_ids_;
1007 const dex::HiddenapiClassData* hiddenapi_class_data_;
1035 DexFileParameterIterator(const DexFile& dex_file, const dex::ProtoId& proto_id) in DexFileParameterIterator()
1045 dex::TypeIndex GetTypeIdx() { in GetTypeIdx()
1049 return dex_file_.GetTypeDescriptor(dex::TypeIndex(GetTypeIdx())); in GetDescriptor()
1053 const dex::TypeList* type_list_ = nullptr;
1116 const dex::ClassDef& class_def) in EncodedStaticFieldValueIterator()
1128 const dex::CallSiteIdItem& call_site_id) in CallSiteArrayValueIterator()