diff --git a/dexlib2/src/main/java/org/jf/dexlib2/writer/ClassSection.java b/dexlib2/src/main/java/org/jf/dexlib2/writer/ClassSection.java index a57904ea..ca9f710c 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/writer/ClassSection.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/writer/ClassSection.java @@ -31,6 +31,7 @@ package org.jf.dexlib2.writer; +import org.jf.dexlib2.iface.ExceptionHandler; import org.jf.dexlib2.iface.TryBlock; import org.jf.dexlib2.iface.debug.DebugItem; @@ -42,8 +43,7 @@ import java.util.List; import java.util.Map; public interface ClassSection extends IndexSection { + FieldKey, MethodKey, AnnotationSetKey, EncodedValue, Insn> extends IndexSection { @Nonnull Collection getSortedClasses(); @Nullable Map.Entry getClassEntryByType(@Nullable TypeKey key); diff --git a/dexlib2/src/main/java/org/jf/dexlib2/writer/DexWriter.java b/dexlib2/src/main/java/org/jf/dexlib2/writer/DexWriter.java index 3f297e6e..e46e5f11 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/writer/DexWriter.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/writer/DexWriter.java @@ -39,6 +39,7 @@ import org.jf.dexlib2.AccessFlags; import org.jf.dexlib2.base.BaseAnnotation; import org.jf.dexlib2.dexbacked.raw.*; import org.jf.dexlib2.iface.Annotation; +import org.jf.dexlib2.iface.ExceptionHandler; import org.jf.dexlib2.iface.TryBlock; import org.jf.dexlib2.iface.debug.DebugItem; import org.jf.dexlib2.iface.debug.LineNumber; @@ -76,7 +77,7 @@ public abstract class DexWriter< TypeListKey, FieldKey, MethodKey, EncodedValue, AnnotationElement, - Insn extends Instruction, ExceptionHandler extends org.jf.dexlib2.iface.ExceptionHandler> { + Insn extends Instruction> { public static final int NO_INDEX = -1; public static final int NO_OFFSET = 0; @@ -116,7 +117,7 @@ public abstract class DexWriter< protected final FieldSection fieldSection; protected final MethodSection methodSection; protected final ClassSection classSection; + EncodedValue, Insn> classSection; protected final TypeListSection typeListSection; protected final AnnotationSection annotationSection; @@ -130,7 +131,7 @@ public abstract class DexWriter< FieldSection fieldSection, MethodSection methodSection, ClassSection classSection, + EncodedValue, Insn> classSection, TypeListSection typeListSection, AnnotationSection annotationSection, diff --git a/dexlib2/src/main/java/org/jf/dexlib2/writer/builder/BuilderClassPool.java b/dexlib2/src/main/java/org/jf/dexlib2/writer/builder/BuilderClassPool.java index 215f1abc..5f8b3e38 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/writer/builder/BuilderClassPool.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/writer/builder/BuilderClassPool.java @@ -35,6 +35,7 @@ import com.google.common.base.Function; import com.google.common.base.Predicate; import com.google.common.collect.*; import org.jf.dexlib2.DebugItemType; +import org.jf.dexlib2.iface.ExceptionHandler; import org.jf.dexlib2.iface.Field; import org.jf.dexlib2.iface.TryBlock; import org.jf.dexlib2.iface.debug.*; @@ -57,8 +58,7 @@ import java.util.Map.Entry; import java.util.concurrent.ConcurrentMap; public class BuilderClassPool implements ClassSection { + BuilderClassDef, BuilderField, BuilderMethod, BuilderAnnotationSet, BuilderEncodedValue, BuilderInstruction> { @Nonnull private final ConcurrentMap internedItems = Maps.newConcurrentMap(); @@ -307,8 +307,8 @@ public class BuilderClassPool implements ClassSection { + BuilderEncodedValue, BuilderAnnotationElement, BuilderInstruction> { private final BuilderContext context; diff --git a/dexlib2/src/main/java/org/jf/dexlib2/writer/pool/ClassPool.java b/dexlib2/src/main/java/org/jf/dexlib2/writer/pool/ClassPool.java index 8ff826de..06a46d32 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/writer/pool/ClassPool.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/writer/pool/ClassPool.java @@ -60,7 +60,7 @@ import java.util.Map.Entry; public class ClassPool implements ClassSection>, PoolClassDef, Field, PoolMethod, Set, - EncodedValue, Instruction, ExceptionHandler> { + EncodedValue, Instruction> { @Nonnull private HashMap internedItems = Maps.newHashMap(); @Nonnull private final StringPool stringPool; diff --git a/dexlib2/src/main/java/org/jf/dexlib2/writer/pool/DexPool.java b/dexlib2/src/main/java/org/jf/dexlib2/writer/pool/DexPool.java index 887a30da..6a6e3dec 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/writer/pool/DexPool.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/writer/pool/DexPool.java @@ -50,7 +50,7 @@ public class DexPool extends DexWriter, TypeListPool.Key>, Field, PoolMethod, - EncodedValue, AnnotationElement, Instruction, ExceptionHandler> { + EncodedValue, AnnotationElement, Instruction> { public static DexPool makeDexPool() { return makeDexPool(15);