public abstract class DexWriter<StringKey extends java.lang.CharSequence,StringRef extends StringReference,TypeKey extends java.lang.CharSequence,TypeRef extends TypeReference,ProtoKey extends java.lang.Comparable<ProtoKey>,FieldRefKey extends FieldReference,MethodRefKey extends MethodReference,ClassKey extends java.lang.Comparable<? super ClassKey>,AnnotationKey extends Annotation,AnnotationSetKey,TypeListKey,FieldKey,MethodKey,EncodedValue,AnnotationElement extends AnnotationElement>
extends java.lang.Object
| Modifier and Type | Class and Description |
|---|---|
protected class |
DexWriter.InternalEncodedValueWriter |
| Modifier | Constructor and Description |
|---|---|
protected |
DexWriter(Opcodes opcodes,
StringSection<StringKey,StringRef> stringSection,
TypeSection<StringKey,TypeKey,TypeRef> typeSection,
ProtoSection<StringKey,TypeKey,ProtoKey,TypeListKey> protoSection,
FieldSection<StringKey,TypeKey,FieldRefKey,FieldKey> fieldSection,
MethodSection<StringKey,TypeKey,ProtoKey,MethodRefKey,MethodKey> methodSection,
ClassSection<StringKey,TypeKey,TypeListKey,ClassKey,FieldKey,MethodKey,AnnotationSetKey,EncodedValue> classSection,
TypeListSection<TypeKey,TypeListKey> typeListSection,
AnnotationSection<StringKey,TypeKey,AnnotationKey,AnnotationElement,EncodedValue> annotationSection,
AnnotationSetSection<AnnotationKey,AnnotationSetKey> annotationSetSection) |
| Modifier and Type | Method and Description |
|---|---|
java.util.List<java.lang.String> |
getFieldReferences() |
java.util.List<java.lang.String> |
getMethodReferences() |
java.util.List<java.lang.String> |
getTypeReferences() |
protected abstract void |
writeEncodedValue(DexWriter.InternalEncodedValueWriter writer,
EncodedValue encodedValue) |
void |
writeTo(DexDataStore dest) |
void |
writeTo(DexDataStore dest,
DeferredOutputStreamFactory tempFactory) |
public static final int NO_INDEX
public static final int NO_OFFSET
protected final Opcodes opcodes
protected int stringIndexSectionOffset
protected int typeSectionOffset
protected int protoSectionOffset
protected int fieldSectionOffset
protected int methodSectionOffset
protected int classIndexSectionOffset
protected int stringDataSectionOffset
protected int classDataSectionOffset
protected int typeListSectionOffset
protected int encodedArraySectionOffset
protected int annotationSectionOffset
protected int annotationSetSectionOffset
protected int annotationSetRefSectionOffset
protected int annotationDirectorySectionOffset
protected int debugSectionOffset
protected int codeSectionOffset
protected int mapSectionOffset
protected int numEncodedArrayItems
protected int numAnnotationSetRefItems
protected int numAnnotationDirectoryItems
protected int numDebugInfoItems
protected int numCodeItemItems
protected int numClassDataItems
protected final StringSection<StringKey extends java.lang.CharSequence,StringRef extends StringReference> stringSection
protected final TypeSection<StringKey extends java.lang.CharSequence,TypeKey extends java.lang.CharSequence,TypeRef extends TypeReference> typeSection
protected final ProtoSection<StringKey extends java.lang.CharSequence,TypeKey extends java.lang.CharSequence,ProtoKey extends java.lang.Comparable<ProtoKey>,TypeListKey> protoSection
protected final FieldSection<StringKey extends java.lang.CharSequence,TypeKey extends java.lang.CharSequence,FieldRefKey extends FieldReference,FieldKey> fieldSection
protected final MethodSection<StringKey extends java.lang.CharSequence,TypeKey extends java.lang.CharSequence,ProtoKey extends java.lang.Comparable<ProtoKey>,MethodRefKey extends MethodReference,MethodKey> methodSection
protected final ClassSection<StringKey extends java.lang.CharSequence,TypeKey extends java.lang.CharSequence,TypeListKey,ClassKey extends java.lang.Comparable<? super ClassKey>,FieldKey,MethodKey,AnnotationSetKey,EncodedValue> classSection
protected final TypeListSection<TypeKey extends java.lang.CharSequence,TypeListKey> typeListSection
protected final AnnotationSection<StringKey extends java.lang.CharSequence,TypeKey extends java.lang.CharSequence,AnnotationKey extends Annotation,AnnotationElement extends AnnotationElement,EncodedValue> annotationSection
protected final AnnotationSetSection<AnnotationKey extends Annotation,AnnotationSetKey> annotationSetSection
protected DexWriter(Opcodes opcodes, StringSection<StringKey,StringRef> stringSection, TypeSection<StringKey,TypeKey,TypeRef> typeSection, ProtoSection<StringKey,TypeKey,ProtoKey,TypeListKey> protoSection, FieldSection<StringKey,TypeKey,FieldRefKey,FieldKey> fieldSection, MethodSection<StringKey,TypeKey,ProtoKey,MethodRefKey,MethodKey> methodSection, ClassSection<StringKey,TypeKey,TypeListKey,ClassKey,FieldKey,MethodKey,AnnotationSetKey,EncodedValue> classSection, TypeListSection<TypeKey,TypeListKey> typeListSection, AnnotationSection<StringKey,TypeKey,AnnotationKey,AnnotationElement,EncodedValue> annotationSection, AnnotationSetSection<AnnotationKey,AnnotationSetKey> annotationSetSection)
protected abstract void writeEncodedValue(@Nonnull
DexWriter.InternalEncodedValueWriter writer,
@Nonnull
EncodedValue encodedValue)
throws java.io.IOException
java.io.IOException@Nonnull public java.util.List<java.lang.String> getMethodReferences()
@Nonnull public java.util.List<java.lang.String> getFieldReferences()
@Nonnull public java.util.List<java.lang.String> getTypeReferences()
public void writeTo(@Nonnull
DexDataStore dest)
throws java.io.IOException
java.io.IOExceptionpublic void writeTo(@Nonnull
DexDataStore dest,
@Nonnull
DeferredOutputStreamFactory tempFactory)
throws java.io.IOException
java.io.IOException