org.apache.bcel.classfile

Class Synthetic

public final class Synthetic extends Attribute

This class is derived from Attribute and declares this class as `synthetic', i.e., it needs special handling. The JVM specification states "A class member that does not appear in the source code must be marked using a Synthetic attribute." It may appear in the ClassFile attribute table, a field_info table or a method_info table. This class is intended to be instantiated from the Attribute.readAttribute() method.

Version: $Id: Synthetic.java 386056 2006-03-15 11:31:56Z tcurdt $

Author: M. Dahm

See Also: Attribute

Field Summary
byte[]bytes
Constructor Summary
Synthetic(Synthetic c)
Initialize from another object.
Synthetic(int name_index, int length, byte[] bytes, ConstantPool constant_pool)
Synthetic(int name_index, int length, DataInputStream file, ConstantPool constant_pool)
Construct object from file stream.
Method Summary
voidaccept(Visitor v)
Called by objects that are traversing the nodes of the tree implicitely defined by the contents of a Java class.
Attributecopy(ConstantPool _constant_pool)
voiddump(DataOutputStream file)
Dump source file attribute to file stream in binary format.
byte[]getBytes()
voidsetBytes(byte[] bytes)
StringtoString()

Field Detail

bytes

private byte[] bytes

Constructor Detail

Synthetic

public Synthetic(Synthetic c)
Initialize from another object. Note that both objects use the same references (shallow copy). Use copy() for a physical copy.

Synthetic

public Synthetic(int name_index, int length, byte[] bytes, ConstantPool constant_pool)

Parameters: name_index Index in constant pool to CONSTANT_Utf8, which should represent the string "Synthetic". length Content length in bytes - should be zero. bytes Attribute contents constant_pool The constant pool this attribute is associated with.

Synthetic

Synthetic(int name_index, int length, DataInputStream file, ConstantPool constant_pool)
Construct object from file stream.

Parameters: name_index Index in constant pool to CONSTANT_Utf8 length Content length in bytes file Input stream constant_pool Array of constants

Throws: IOException

Method Detail

accept

public void accept(Visitor v)
Called by objects that are traversing the nodes of the tree implicitely defined by the contents of a Java class. I.e., the hierarchy of methods, fields, attributes, etc. spawns a tree of objects.

Parameters: v Visitor object

copy

public Attribute copy(ConstantPool _constant_pool)

Returns: deep copy of this attribute

dump

public final void dump(DataOutputStream file)
Dump source file attribute to file stream in binary format.

Parameters: file Output file stream

Throws: IOException

getBytes

public final byte[] getBytes()

Returns: data bytes.

setBytes

public final void setBytes(byte[] bytes)

Parameters: bytes

toString

public final String toString()

Returns: String representation.