| 473 | } |
| 474 | |
| 475 | const Signature DexFile::CreateSignature(const StringPiece& signature) const { |
| 476 | dex::TypeIndex return_type_idx; |
| 477 | std::vector<dex::TypeIndex> param_type_indices; |
| 478 | bool success = CreateTypeList(signature, &return_type_idx, ¶m_type_indices); |
| 479 | if (!success) { |
| 480 | return Signature::NoSignature(); |
| 481 | } |
| 482 | const ProtoId* proto_id = FindProtoId(return_type_idx, param_type_indices); |
| 483 | if (proto_id == nullptr) { |
| 484 | return Signature::NoSignature(); |
| 485 | } |
| 486 | return Signature(this, *proto_id); |
| 487 | } |
| 488 | |
| 489 | int32_t DexFile::FindTryItem(const TryItem* try_items, uint32_t tries_size, uint32_t address) { |
| 490 | uint32_t min = 0; |