From c74042b9437ec1f801cad57f47e68207d13a4ac8 Mon Sep 17 00:00:00 2001 From: "JesusFreke@JesusFreke.com" Date: Mon, 24 Aug 2009 05:48:14 +0000 Subject: [PATCH] Add a convenience method that accepts a string instead of a StringIdItem git-svn-id: https://smali.googlecode.com/svn/trunk@414 55b6fa8a-2a1e-11de-a435-ffa8d773f76a --- .../src/main/java/org/jf/dexlib/TypeIdItem.java | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/dexlib/src/main/java/org/jf/dexlib/TypeIdItem.java b/dexlib/src/main/java/org/jf/dexlib/TypeIdItem.java index 34c9da6b..08a9d654 100644 --- a/dexlib/src/main/java/org/jf/dexlib/TypeIdItem.java +++ b/dexlib/src/main/java/org/jf/dexlib/TypeIdItem.java @@ -58,6 +58,7 @@ public class TypeIdItem extends Item { * the given DexFile * @param dexFile The DexFile that this item will belong to * @param typeDescriptor The StringIdItem containing the type descriptor that + * this TypeIdItem represents * @return a TypeIdItem for the given values, and that has been interned into * the given DexFile */ @@ -66,6 +67,20 @@ public class TypeIdItem extends Item { return dexFile.TypeIdsSection.intern(typeIdItem); } + /** + * Returns a TypeIdItem for the given values, and that has been interned into + * the given DexFile + * @param dexFile The DexFile that this item will belong to + * @param typeDescriptor The string containing the type descriptor that this + * TypeIdItem represents + * @return a TypeIdItem for the given values, and that has been interned into + * the given DexFile + */ + public static TypeIdItem getInternedTypeIdItem(DexFile dexFile, String typeDescriptor) { + TypeIdItem typeIdItem = new TypeIdItem(dexFile, StringIdItem.getInternedStringIdItem(dexFile, typeDescriptor)); + return dexFile.TypeIdsSection.intern(typeIdItem); + } + /** {@inheritDoc} */ protected void readItem(Input in, ReadContext readContext) { int stringIdIndex = in.readInt();