com.vladium.jcd.cls.constant
Class CONSTANT_Class_info

java.lang.Object
  extended by com.vladium.jcd.cls.constant.CONSTANT_info
      extended by com.vladium.jcd.cls.constant.CONSTANT_Class_info
All Implemented Interfaces:
IClassFormatOutput, java.lang.Cloneable

public final class CONSTANT_Class_info
extends CONSTANT_info

The CONSTANT_Class_info structure is used to represent a class or an interface.

The value of the name_index item must be a valid index into the constant pool table. The constant pool entry at that index must be a CONSTANT_Utf8_info structure representing a valid fully qualified Java class name that has been converted to the class file's internal form.

Author:
(C) 2001, Vlad Roubtsov

Field Summary
 int m_name_index
           
static byte TAG
           
 
Constructor Summary
  CONSTANT_Class_info(int name_index)
           
protected CONSTANT_Class_info(UDataInputStream bytes)
           
 
Method Summary
 java.lang.Object accept(ICONSTANTVisitor visitor, java.lang.Object ctx)
           
 java.lang.String getName(ClassDef cls)
          Returns the JVM class name within the constant pool context of 'cls' class definition.
 byte tag()
          Returns the tag byte for this CONSTANT type [this data is static class data].
 java.lang.String toString()
           
 void writeInClassFormat(UDataOutputStream out)
           
 
Methods inherited from class com.vladium.jcd.cls.constant.CONSTANT_info
clone, new_CONSTANT_info, tagToString, width
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

TAG

public static final byte TAG
See Also:
Constant Field Values

m_name_index

public int m_name_index
Constructor Detail

CONSTANT_Class_info

public CONSTANT_Class_info(int name_index)

CONSTANT_Class_info

protected CONSTANT_Class_info(UDataInputStream bytes)
                       throws java.io.IOException
Throws:
java.io.IOException
Method Detail

tag

public final byte tag()
Description copied from class: CONSTANT_info
Returns the tag byte for this CONSTANT type [this data is static class data].

Specified by:
tag in class CONSTANT_info

getName

public java.lang.String getName(ClassDef cls)
Returns the JVM class name within the constant pool context of 'cls' class definition.

Parameters:
cls - class that contains this constant
Returns:
class name [in JVM format]

accept

public java.lang.Object accept(ICONSTANTVisitor visitor,
                               java.lang.Object ctx)
Specified by:
accept in class CONSTANT_info

toString

public java.lang.String toString()
Specified by:
toString in class CONSTANT_info

writeInClassFormat

public void writeInClassFormat(UDataOutputStream out)
                        throws java.io.IOException
Specified by:
writeInClassFormat in interface IClassFormatOutput
Overrides:
writeInClassFormat in class CONSTANT_info
Throws:
java.io.IOException