Class ClassEntry

java.lang.Object
serp.bytecode.lowlevel.Entry
serp.bytecode.lowlevel.ClassEntry
All Implemented Interfaces:
ConstantEntry, VisitAcceptor

public class ClassEntry extends Entry implements ConstantEntry
A constant pool entry describing a class. Class entries are used to refer to the current class, the superclass, implemented interfaces, etc. Each class entry contains the constant pool index of the UTF8Entry that stores the class name, which is represented in internal form.
  • Field Details

    • _nameIndex

      private int _nameIndex
  • Constructor Details

    • ClassEntry

      public ClassEntry()
      Default constructor.
    • ClassEntry

      public ClassEntry(int nameIndex)
      Constructor.
      Parameters:
      nameIndex - the constant pool index of the UTF8Entry containing the class name
  • Method Details

    • getNameIndex

      public int getNameIndex()
      Return the constant pool index of the UTF8Entry containing the class name. Defaults to 0.
    • setNameIndex

      public void setNameIndex(int nameIndex)
      Set the constant pool index of the UTF8Entry containing the class name.
    • getNameEntry

      public UTF8Entry getNameEntry()
      Return the referenced UTF8Entry. This method can only be run for entries that have been added to a constant pool.
    • getType

      public int getType()
      Description copied from class: Entry
      Return the type code for this entry type.
      Specified by:
      getType in class Entry
    • getConstant

      public Object getConstant()
      Description copied from interface: ConstantEntry
      Return the value of the constant held by this entry.
      Specified by:
      getConstant in interface ConstantEntry
    • setConstant

      public void setConstant(Object value)
      Description copied from interface: ConstantEntry
      Set the value of the constant held by this entry.
      Specified by:
      setConstant in interface ConstantEntry
    • acceptVisit

      public void acceptVisit(BCVisitor visit)
      Description copied from interface: VisitAcceptor
      Accept a visit from a BCVisitor, calling the appropriate methods to notify the visitor that it has entered this entity, and to provide it with the proper callbacks for each sub-entity owned by this one.
      Specified by:
      acceptVisit in interface VisitAcceptor
    • readData

      void readData(DataInput in) throws IOException
      Description copied from class: Entry
      This method is called after reading the entry type from bytecode. It should read all the data for this entry from the given stream.
      Specified by:
      readData in class Entry
      Throws:
      IOException
    • writeData

      void writeData(DataOutput out) throws IOException
      Description copied from class: Entry
      This method is called after writing the entry type to bytecode. It should write all data for this entry to the given stream.
      Specified by:
      writeData in class Entry
      Throws:
      IOException