Package serp.bytecode

Class Attribute

All Implemented Interfaces:
BCEntity, VisitAcceptor
Direct Known Subclasses:
Annotations, BootstrapMethods, Code, ConstantValue, Deprecated, Exceptions, InnerClasses, LineNumberTable, LocalTable, SourceFile, Synthetic, UnknownAttribute

public abstract class Attribute extends Attributes implements VisitAcceptor
In bytecode attributes are used to represent anything that is not part of the class structure. This includes the source file name, code of methods, the line number table, etc. All attributes contain at a minimum an immutable name that also determines the attribute's type.
Author:
Abe White
  • Method Details

    • getOwner

      public Attributes getOwner()
      Return the Attributes that owns this attribute. The entity might be a BCClass, BCField, BCMethod, or other attribute.
    • getNameIndex

      public int getNameIndex()
      Return the index in the ConstantPool of the UTF8Entry holding the name of this attribute.
    • getName

      public String getName()
      Return the name of this attribute.
    • getProject

      public Project getProject()
      Description copied from interface: BCEntity
      Return the project of the current class.
      Specified by:
      getProject in interface BCEntity
    • getPool

      public ConstantPool getPool()
      Description copied from interface: BCEntity
      Return the constant pool of the current class.
      Specified by:
      getPool in interface BCEntity
    • getClassLoader

      public ClassLoader getClassLoader()
      Description copied from interface: BCEntity
      Return the class loader to use when loading related classes.
      Specified by:
      getClassLoader in interface BCEntity
    • isValid

      public boolean isValid()
      Description copied from interface: BCEntity
      Return false if this entity has been removed from its parent; in this case the results of any operations on the entity are undefined.
      Specified by:
      isValid in interface BCEntity