Package proguard.classfile.attribute
Class LineNumberTableAttribute
- java.lang.Object
-
- proguard.util.SimpleProcessable
-
- proguard.classfile.attribute.Attribute
-
- proguard.classfile.attribute.LineNumberTableAttribute
-
- All Implemented Interfaces:
java.io.Serializable,Processable
public class LineNumberTableAttribute extends Attribute
ThisAttributerepresents a line number table attribute.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description LineNumberInfo[]lineNumberTableintu2lineNumberTableLength-
Fields inherited from class proguard.classfile.attribute.Attribute
ANNOTATION_DEFAULT, BOOTSTRAP_METHODS, CHARACTER_RANGE_TABLE, CODE, COMPILATION_I_D, CONSTANT_VALUE, DEPRECATED, ENCLOSING_METHOD, EXCEPTIONS, INNER_CLASSES, LINE_NUMBER_TABLE, LOCAL_VARIABLE_TABLE, LOCAL_VARIABLE_TYPE_TABLE, METHOD_PARAMETERS, MODULE, MODULE_MAIN_CLASS, MODULE_PACKAGES, NEST_HOST, NEST_MEMBERS, PERMITTED_SUBCLASSES, RECORD, RUNTIME_INVISIBLE_ANNOTATIONS, RUNTIME_INVISIBLE_PARAMETER_ANNOTATIONS, RUNTIME_INVISIBLE_TYPE_ANNOTATIONS, RUNTIME_VISIBLE_ANNOTATIONS, RUNTIME_VISIBLE_PARAMETER_ANNOTATIONS, RUNTIME_VISIBLE_TYPE_ANNOTATIONS, SIGNATURE, SOURCE_DEBUG_EXTENSION, SOURCE_DIR, SOURCE_FILE, SOURCE_I_D, STACK_MAP, STACK_MAP_TABLE, SYNTHETIC, u2attributeNameIndex
-
Fields inherited from class proguard.util.SimpleProcessable
processingFlags, processingInfo
-
-
Constructor Summary
Constructors Constructor Description LineNumberTableAttribute()Creates an uninitialized LineNumberTableAttribute.LineNumberTableAttribute(int u2attributeNameIndex, int u2lineNumberTableLength, LineNumberInfo[] lineNumberTable)Creates an initialized LineNumberTableAttribute.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaccept(Clazz clazz, Method method, CodeAttribute codeAttribute, AttributeVisitor attributeVisitor)Accepts the given visitor in the context of the given code attribute.intgetHighestLineNumber()Returns the highest line number with the default null source, or 0 if there aren't any such line numbers.intgetLineNumber(int pc)Returns the line number corresponding to the given byte code program counter.LineNumberInfogetLineNumberInfo(int pc)Returns the line number info corresponding to the given byte code program counter.intgetLowestLineNumber()Returns the lowest line number with the default null source, or 0 if there aren't any such line numbers.java.lang.StringgetSource(int pc)Returns the source corresponding to the given byte code program counter.voidlineNumbersAccept(Clazz clazz, Method method, CodeAttribute codeAttribute, LineNumberInfoVisitor lineNumberInfoVisitor)Applies the given visitor to all line numbers.-
Methods inherited from class proguard.classfile.attribute.Attribute
accept, accept, accept, accept, getAttributeName
-
Methods inherited from class proguard.util.SimpleProcessable
addProcessingFlags, getProcessingFlags, getProcessingInfo, hasProcessingFlags, removeProcessingFlags, setProcessingFlags, setProcessingInfo
-
-
-
-
Field Detail
-
u2lineNumberTableLength
public int u2lineNumberTableLength
-
lineNumberTable
public LineNumberInfo[] lineNumberTable
-
-
Constructor Detail
-
LineNumberTableAttribute
public LineNumberTableAttribute()
Creates an uninitialized LineNumberTableAttribute.
-
LineNumberTableAttribute
public LineNumberTableAttribute(int u2attributeNameIndex, int u2lineNumberTableLength, LineNumberInfo[] lineNumberTable)Creates an initialized LineNumberTableAttribute.
-
-
Method Detail
-
getLineNumber
public int getLineNumber(int pc)
Returns the line number corresponding to the given byte code program counter.
-
getSource
public java.lang.String getSource(int pc)
Returns the source corresponding to the given byte code program counter.
-
getLineNumberInfo
public LineNumberInfo getLineNumberInfo(int pc)
Returns the line number info corresponding to the given byte code program counter.
-
getLowestLineNumber
public int getLowestLineNumber()
Returns the lowest line number with the default null source, or 0 if there aren't any such line numbers.
-
getHighestLineNumber
public int getHighestLineNumber()
Returns the highest line number with the default null source, or 0 if there aren't any such line numbers.
-
accept
public void accept(Clazz clazz, Method method, CodeAttribute codeAttribute, AttributeVisitor attributeVisitor)
Description copied from class:AttributeAccepts the given visitor in the context of the given code attribute.
-
lineNumbersAccept
public void lineNumbersAccept(Clazz clazz, Method method, CodeAttribute codeAttribute, LineNumberInfoVisitor lineNumberInfoVisitor)
Applies the given visitor to all line numbers.
-
-