public class ClassPool extends BasePool<java.lang.String,org.jf.dexlib2.writer.pool.PoolClassDef> implements ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>
dexPool, internedItems| Modifier and Type | Method and Description |
|---|---|
int |
getAccessFlags(org.jf.dexlib2.writer.pool.PoolClassDef classDef) |
int |
getAnnotationDirectoryOffset(org.jf.dexlib2.writer.pool.PoolClassDef classDef) |
int |
getAnnotationSetRefListOffset(org.jf.dexlib2.writer.pool.PoolMethod method) |
java.util.Set<? extends Annotation> |
getClassAnnotations(org.jf.dexlib2.writer.pool.PoolClassDef classDef) |
java.util.Map.Entry<? extends org.jf.dexlib2.writer.pool.PoolClassDef,java.lang.Integer> |
getClassEntryByType(java.lang.CharSequence name) |
int |
getCodeItemOffset(org.jf.dexlib2.writer.pool.PoolMethod method) |
java.lang.Iterable<? extends DebugItem> |
getDebugItems(org.jf.dexlib2.writer.pool.PoolMethod method) |
java.lang.CharSequence |
getExceptionType(ExceptionHandler handler) |
int |
getFieldAccessFlags(Field field) |
java.util.Set<? extends Annotation> |
getFieldAnnotations(Field field) |
java.lang.Iterable<? extends Instruction> |
getInstructions(org.jf.dexlib2.writer.pool.PoolMethod method) |
TypeListPool.Key<java.util.List<java.lang.String>> |
getInterfaces(org.jf.dexlib2.writer.pool.PoolClassDef classDef) |
int |
getItemIndex(org.jf.dexlib2.writer.pool.PoolClassDef classDef) |
java.util.Collection<? extends java.util.Map.Entry<org.jf.dexlib2.writer.pool.PoolClassDef,java.lang.Integer>> |
getItems() |
int |
getMethodAccessFlags(org.jf.dexlib2.writer.pool.PoolMethod method) |
java.util.Set<? extends Annotation> |
getMethodAnnotations(org.jf.dexlib2.writer.pool.PoolMethod method) |
java.util.List<? extends java.util.Set<? extends Annotation>> |
getParameterAnnotations(org.jf.dexlib2.writer.pool.PoolMethod method) |
java.lang.Iterable<java.lang.CharSequence> |
getParameterNames(org.jf.dexlib2.writer.pool.PoolMethod method) |
int |
getRegisterCount(org.jf.dexlib2.writer.pool.PoolMethod method) |
java.util.Collection<? extends org.jf.dexlib2.writer.pool.PoolClassDef> |
getSortedClasses() |
java.util.Collection<org.jf.dexlib2.writer.pool.PoolMethod> |
getSortedDirectMethods(org.jf.dexlib2.writer.pool.PoolClassDef classDef) |
java.util.Collection<? extends Field> |
getSortedFields(org.jf.dexlib2.writer.pool.PoolClassDef classDef) |
java.util.Collection<? extends Field> |
getSortedInstanceFields(org.jf.dexlib2.writer.pool.PoolClassDef classDef) |
java.util.Collection<? extends org.jf.dexlib2.writer.pool.PoolMethod> |
getSortedMethods(org.jf.dexlib2.writer.pool.PoolClassDef classDef) |
java.util.Collection<? extends Field> |
getSortedStaticFields(org.jf.dexlib2.writer.pool.PoolClassDef classDef) |
java.util.Collection<org.jf.dexlib2.writer.pool.PoolMethod> |
getSortedVirtualMethods(org.jf.dexlib2.writer.pool.PoolClassDef classDef) |
java.lang.CharSequence |
getSourceFile(org.jf.dexlib2.writer.pool.PoolClassDef classDef) |
ArrayEncodedValue |
getStaticInitializers(org.jf.dexlib2.writer.pool.PoolClassDef classDef) |
java.lang.CharSequence |
getSuperclass(org.jf.dexlib2.writer.pool.PoolClassDef classDef) |
java.util.List<? extends TryBlock<? extends ExceptionHandler>> |
getTryBlocks(org.jf.dexlib2.writer.pool.PoolMethod method) |
java.lang.CharSequence |
getType(org.jf.dexlib2.writer.pool.PoolClassDef classDef) |
void |
intern(ClassDef classDef) |
MutableMethodImplementation |
makeMutableMethodImplementation(org.jf.dexlib2.writer.pool.PoolMethod poolMethod) |
void |
setAnnotationDirectoryOffset(org.jf.dexlib2.writer.pool.PoolClassDef classDef,
int offset) |
void |
setAnnotationSetRefListOffset(org.jf.dexlib2.writer.pool.PoolMethod method,
int offset) |
void |
setCodeItemOffset(org.jf.dexlib2.writer.pool.PoolMethod method,
int offset) |
void |
writeDebugItem(DebugWriter<java.lang.CharSequence,java.lang.CharSequence> writer,
DebugItem debugItem) |
getItemCount, mark, resetclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetItemCountpublic ClassPool(@Nonnull
DexPool dexPool)
public void intern(@Nonnull
ClassDef classDef)
@Nonnull public java.util.Collection<? extends org.jf.dexlib2.writer.pool.PoolClassDef> getSortedClasses()
getSortedClasses in interface ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>@Nullable
public java.util.Map.Entry<? extends org.jf.dexlib2.writer.pool.PoolClassDef,java.lang.Integer> getClassEntryByType(@Nullable
java.lang.CharSequence name)
getClassEntryByType in interface ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>@Nonnull
public java.lang.CharSequence getType(@Nonnull
org.jf.dexlib2.writer.pool.PoolClassDef classDef)
getType in interface ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>public int getAccessFlags(@Nonnull
org.jf.dexlib2.writer.pool.PoolClassDef classDef)
getAccessFlags in interface ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>@Nullable
public java.lang.CharSequence getSuperclass(@Nonnull
org.jf.dexlib2.writer.pool.PoolClassDef classDef)
getSuperclass in interface ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>@Nullable public TypeListPool.Key<java.util.List<java.lang.String>> getInterfaces(@Nonnull org.jf.dexlib2.writer.pool.PoolClassDef classDef)
getInterfaces in interface ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>@Nullable
public java.lang.CharSequence getSourceFile(@Nonnull
org.jf.dexlib2.writer.pool.PoolClassDef classDef)
getSourceFile in interface ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>@Nullable public ArrayEncodedValue getStaticInitializers(@Nonnull org.jf.dexlib2.writer.pool.PoolClassDef classDef)
getStaticInitializers in interface ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>@Nonnull public java.util.Collection<? extends Field> getSortedStaticFields(@Nonnull org.jf.dexlib2.writer.pool.PoolClassDef classDef)
getSortedStaticFields in interface ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>@Nonnull public java.util.Collection<? extends Field> getSortedInstanceFields(@Nonnull org.jf.dexlib2.writer.pool.PoolClassDef classDef)
getSortedInstanceFields in interface ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>@Nonnull public java.util.Collection<? extends Field> getSortedFields(@Nonnull org.jf.dexlib2.writer.pool.PoolClassDef classDef)
getSortedFields in interface ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>@Nonnull
public java.util.Collection<org.jf.dexlib2.writer.pool.PoolMethod> getSortedDirectMethods(@Nonnull
org.jf.dexlib2.writer.pool.PoolClassDef classDef)
getSortedDirectMethods in interface ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>@Nonnull
public java.util.Collection<org.jf.dexlib2.writer.pool.PoolMethod> getSortedVirtualMethods(@Nonnull
org.jf.dexlib2.writer.pool.PoolClassDef classDef)
getSortedVirtualMethods in interface ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>@Nonnull
public java.util.Collection<? extends org.jf.dexlib2.writer.pool.PoolMethod> getSortedMethods(@Nonnull
org.jf.dexlib2.writer.pool.PoolClassDef classDef)
getSortedMethods in interface ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>public int getFieldAccessFlags(@Nonnull
Field field)
getFieldAccessFlags in interface ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>public int getMethodAccessFlags(@Nonnull
org.jf.dexlib2.writer.pool.PoolMethod method)
getMethodAccessFlags in interface ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>@Nullable public java.util.Set<? extends Annotation> getClassAnnotations(@Nonnull org.jf.dexlib2.writer.pool.PoolClassDef classDef)
getClassAnnotations in interface ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>@Nullable public java.util.Set<? extends Annotation> getFieldAnnotations(@Nonnull Field field)
getFieldAnnotations in interface ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>@Nullable public java.util.Set<? extends Annotation> getMethodAnnotations(@Nonnull org.jf.dexlib2.writer.pool.PoolMethod method)
getMethodAnnotations in interface ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>@Nullable public java.util.List<? extends java.util.Set<? extends Annotation>> getParameterAnnotations(@Nonnull org.jf.dexlib2.writer.pool.PoolMethod method)
getParameterAnnotations in interface ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>@Nullable public java.lang.Iterable<? extends DebugItem> getDebugItems(@Nonnull org.jf.dexlib2.writer.pool.PoolMethod method)
getDebugItems in interface ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>@Nullable
public java.lang.Iterable<java.lang.CharSequence> getParameterNames(@Nonnull
org.jf.dexlib2.writer.pool.PoolMethod method)
getParameterNames in interface ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>public int getRegisterCount(@Nonnull
org.jf.dexlib2.writer.pool.PoolMethod method)
getRegisterCount in interface ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>@Nullable public java.lang.Iterable<? extends Instruction> getInstructions(@Nonnull org.jf.dexlib2.writer.pool.PoolMethod method)
getInstructions in interface ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>@Nonnull public java.util.List<? extends TryBlock<? extends ExceptionHandler>> getTryBlocks(@Nonnull org.jf.dexlib2.writer.pool.PoolMethod method)
getTryBlocks in interface ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>@Nullable
public java.lang.CharSequence getExceptionType(@Nonnull
ExceptionHandler handler)
getExceptionType in interface ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>@Nonnull public MutableMethodImplementation makeMutableMethodImplementation(@Nonnull org.jf.dexlib2.writer.pool.PoolMethod poolMethod)
makeMutableMethodImplementation in interface ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>public void setAnnotationDirectoryOffset(@Nonnull
org.jf.dexlib2.writer.pool.PoolClassDef classDef,
int offset)
setAnnotationDirectoryOffset in interface ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>public int getAnnotationDirectoryOffset(@Nonnull
org.jf.dexlib2.writer.pool.PoolClassDef classDef)
getAnnotationDirectoryOffset in interface ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>public void setAnnotationSetRefListOffset(@Nonnull
org.jf.dexlib2.writer.pool.PoolMethod method,
int offset)
setAnnotationSetRefListOffset in interface ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>public int getAnnotationSetRefListOffset(@Nonnull
org.jf.dexlib2.writer.pool.PoolMethod method)
getAnnotationSetRefListOffset in interface ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>public void setCodeItemOffset(@Nonnull
org.jf.dexlib2.writer.pool.PoolMethod method,
int offset)
setCodeItemOffset in interface ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>public int getCodeItemOffset(@Nonnull
org.jf.dexlib2.writer.pool.PoolMethod method)
getCodeItemOffset in interface ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>public void writeDebugItem(@Nonnull
DebugWriter<java.lang.CharSequence,java.lang.CharSequence> writer,
DebugItem debugItem)
throws java.io.IOException
writeDebugItem in interface ClassSection<java.lang.CharSequence,java.lang.CharSequence,TypeListPool.Key<? extends java.util.Collection<? extends java.lang.CharSequence>>,org.jf.dexlib2.writer.pool.PoolClassDef,Field,org.jf.dexlib2.writer.pool.PoolMethod,java.util.Set<? extends Annotation>,ArrayEncodedValue>java.io.IOExceptionpublic int getItemIndex(@Nonnull
org.jf.dexlib2.writer.pool.PoolClassDef classDef)
getItemIndex in interface IndexSection<org.jf.dexlib2.writer.pool.PoolClassDef>@Nonnull public java.util.Collection<? extends java.util.Map.Entry<org.jf.dexlib2.writer.pool.PoolClassDef,java.lang.Integer>> getItems()
getItems in interface IndexSection<org.jf.dexlib2.writer.pool.PoolClassDef>