public class LineNumberLinearizer extends java.lang.Object implements Pass, proguard.classfile.visitor.ClassVisitor, proguard.classfile.visitor.MemberVisitor, proguard.classfile.attribute.visitor.AttributeVisitor, proguard.classfile.attribute.visitor.LineNumberInfoVisitor
| Modifier and Type | Field and Description |
|---|---|
static int |
SHIFT_ROUNDING |
| Constructor and Description |
|---|
LineNumberLinearizer() |
| Modifier and Type | Method and Description |
|---|---|
void |
execute(AppView appView)
Disambiguates the line numbers of all program classes, after
optimizations like method inlining and class merging.
|
void |
visitAnyAttribute(proguard.classfile.Clazz clazz,
proguard.classfile.attribute.Attribute attribute) |
void |
visitAnyClass(proguard.classfile.Clazz clazz) |
void |
visitCodeAttribute(proguard.classfile.Clazz clazz,
proguard.classfile.Method method,
proguard.classfile.attribute.CodeAttribute codeAttribute) |
void |
visitLineNumberInfo(proguard.classfile.Clazz clazz,
proguard.classfile.Method method,
proguard.classfile.attribute.CodeAttribute codeAttribute,
proguard.classfile.attribute.LineNumberInfo lineNumberInfo) |
void |
visitLineNumberTableAttribute(proguard.classfile.Clazz clazz,
proguard.classfile.Method method,
proguard.classfile.attribute.CodeAttribute codeAttribute,
proguard.classfile.attribute.LineNumberTableAttribute lineNumberTableAttribute) |
void |
visitProgramClass(proguard.classfile.ProgramClass programClass) |
void |
visitProgramMethod(proguard.classfile.ProgramClass programClass,
proguard.classfile.ProgramMethod programMethod) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitvisitAnyMember, visitLibraryField, visitLibraryMember, visitLibraryMethod, visitProgramField, visitProgramMembervisitAnnotationDefaultAttribute, visitAnyAnnotationsAttribute, visitAnyParameterAnnotationsAttribute, visitAnyTypeAnnotationsAttribute, visitBootstrapMethodsAttribute, visitConstantValueAttribute, visitDeprecatedAttribute, visitDeprecatedAttribute, visitDeprecatedAttribute, visitDeprecatedAttribute, visitEnclosingMethodAttribute, visitExceptionsAttribute, visitInnerClassesAttribute, visitLocalVariableTableAttribute, visitLocalVariableTypeTableAttribute, visitMethodParametersAttribute, visitModuleAttribute, visitModuleMainClassAttribute, visitModulePackagesAttribute, visitNestHostAttribute, visitNestMembersAttribute, visitPermittedSubclassesAttribute, visitRecordAttribute, visitRuntimeInvisibleAnnotationsAttribute, visitRuntimeInvisibleAnnotationsAttribute, visitRuntimeInvisibleAnnotationsAttribute, visitRuntimeInvisibleAnnotationsAttribute, visitRuntimeInvisibleAnnotationsAttribute, visitRuntimeInvisibleParameterAnnotationsAttribute, visitRuntimeInvisibleTypeAnnotationsAttribute, visitRuntimeInvisibleTypeAnnotationsAttribute, visitRuntimeInvisibleTypeAnnotationsAttribute, visitRuntimeInvisibleTypeAnnotationsAttribute, visitRuntimeInvisibleTypeAnnotationsAttribute, visitRuntimeInvisibleTypeAnnotationsAttribute, visitRuntimeVisibleAnnotationsAttribute, visitRuntimeVisibleAnnotationsAttribute, visitRuntimeVisibleAnnotationsAttribute, visitRuntimeVisibleAnnotationsAttribute, visitRuntimeVisibleAnnotationsAttribute, visitRuntimeVisibleParameterAnnotationsAttribute, visitRuntimeVisibleTypeAnnotationsAttribute, visitRuntimeVisibleTypeAnnotationsAttribute, visitRuntimeVisibleTypeAnnotationsAttribute, visitRuntimeVisibleTypeAnnotationsAttribute, visitRuntimeVisibleTypeAnnotationsAttribute, visitRuntimeVisibleTypeAnnotationsAttribute, visitSignatureAttribute, visitSignatureAttribute, visitSignatureAttribute, visitSignatureAttribute, visitSignatureAttribute, visitSourceDebugExtensionAttribute, visitSourceDirAttribute, visitSourceFileAttribute, visitStackMapAttribute, visitStackMapTableAttribute, visitSyntheticAttribute, visitSyntheticAttribute, visitSyntheticAttribute, visitSyntheticAttribute, visitUnknownAttributepublic static final int SHIFT_ROUNDING
public void execute(AppView appView)
public void visitAnyClass(proguard.classfile.Clazz clazz)
visitAnyClass in interface proguard.classfile.visitor.ClassVisitorpublic void visitProgramClass(proguard.classfile.ProgramClass programClass)
visitProgramClass in interface proguard.classfile.visitor.ClassVisitorpublic void visitProgramMethod(proguard.classfile.ProgramClass programClass,
proguard.classfile.ProgramMethod programMethod)
visitProgramMethod in interface proguard.classfile.visitor.MemberVisitorpublic void visitAnyAttribute(proguard.classfile.Clazz clazz,
proguard.classfile.attribute.Attribute attribute)
visitAnyAttribute in interface proguard.classfile.attribute.visitor.AttributeVisitorpublic void visitCodeAttribute(proguard.classfile.Clazz clazz,
proguard.classfile.Method method,
proguard.classfile.attribute.CodeAttribute codeAttribute)
visitCodeAttribute in interface proguard.classfile.attribute.visitor.AttributeVisitorpublic void visitLineNumberTableAttribute(proguard.classfile.Clazz clazz,
proguard.classfile.Method method,
proguard.classfile.attribute.CodeAttribute codeAttribute,
proguard.classfile.attribute.LineNumberTableAttribute lineNumberTableAttribute)
visitLineNumberTableAttribute in interface proguard.classfile.attribute.visitor.AttributeVisitorpublic void visitLineNumberInfo(proguard.classfile.Clazz clazz,
proguard.classfile.Method method,
proguard.classfile.attribute.CodeAttribute codeAttribute,
proguard.classfile.attribute.LineNumberInfo lineNumberInfo)
visitLineNumberInfo in interface proguard.classfile.attribute.visitor.LineNumberInfoVisitor