Package org.apache.bcel.classfile
Class SourceFile
java.lang.Object
org.apache.bcel.classfile.Attribute
org.apache.bcel.classfile.SourceFile
This class is derived from Attribute and represents a reference to the source file of this class. At most
one SourceFile attribute should appear per classfile. The intention of this class is that it is instantiated from the
Attribute.readAttribute() method.
- See Also:
-
Field Summary
Fields inherited from class org.apache.bcel.classfile.Attribute
constant_pool, EMPTY_ARRAY, length, name_index, tag
-
Constructor Summary
ConstructorDescriptionSourceFile
(int nameIndex, int length, int sourceFileIndex, ConstantPool constantPool) Initialize from another object. -
Method Summary
Modifier and TypeMethodDescriptionvoid
Called by objects that are traversing the nodes of the tree implicitly defined by the contents of a Java class.copy
(ConstantPool constantPool) void
dump
(DataOutputStream file) Dump source file attribute to file stream in binary format.int
void
setSourceFileIndex
(int sourceFileIndex) toString()
Methods inherited from class org.apache.bcel.classfile.Attribute
addAttributeReader, addAttributeReader, clone, getConstantPool, getLength, getName, getNameIndex, getTag, println, readAttribute, readAttribute, removeAttributeReader, setConstantPool, setLength, setNameIndex
-
Constructor Details
-
SourceFile
- Parameters:
nameIndex
- Index in constant pool to CONSTANT_Utf8, which should represent the string "SourceFile".length
- Content length in bytes, the value should be 2.sourceFileIndex
- Index in constant pool to CONSTANT_Utf8. This string will be interpreted as the name of the file from which this class was compiled. It will not be interpreted as indicating the name of the directory contqining the file or an absolute path; this information has to be supplied the consumer of this attribute - in many cases, the JVM.constantPool
- The constant pool that this attribute is associated with.
-
SourceFile
Initialize from another object. Note that both objects use the same references (shallow copy). Use clone() for a physical copy.- Parameters:
c
- Source to copy.
-
-
Method Details
-
accept
Called by objects that are traversing the nodes of the tree implicitly defined by the contents of a Java class. I.e., the hierarchy of methods, fields, attributes, etc. spawns a tree of objects. -
copy
-
dump
Dump source file attribute to file stream in binary format.- Overrides:
dump
in classAttribute
- Parameters:
file
- Output file stream- Throws:
IOException
- if an I/O error occurs.
-
getSourceFileIndex
- Returns:
- Index in constant pool of source file name.
-
getSourceFileName
- Returns:
- Source file name.
-
setSourceFileIndex
- Parameters:
sourceFileIndex
-
-
toString
-