Package serp.bytecode

Class ConstantValue

  • All Implemented Interfaces:
    BCEntity, VisitAcceptor

    public class ConstantValue
    extends Attribute
    A constant value for a member field.
    Author:
    Abe White
    • Method Detail

      • getField

        public BCField getField()
        Return the owning field.
      • getValueIndex

        public int getValueIndex()
        Return the ConstantPool index of the ConstantEntry holding the value of this constant. Defaults to 0.
      • setValueIndex

        public void setValueIndex​(int valueIndex)
        Set the ConstantPool of the ConstantEntry holding the value of this constant.
      • getTypeName

        public java.lang.String getTypeName()
        Return the type of constant this attribute represents, or null if not set.
      • getType

        public java.lang.Class getType()
        Return the type of constant this attribute represents (String.class, int.class, etc), or null if not set.
      • getTypeBC

        public BCClass getTypeBC()
        Return the bytecode for the type of constant this attribute represents.
      • getValue

        public java.lang.Object getValue()
        Return the value of this constant as an Object of the appropriate type (String, Integer, Double, etc), or null if not set.
      • setValue

        public void setValue​(java.lang.Object value)
        Set the value of this constant using the appropriate wrapper Object type (String, Integer, Double, etc). Types that are not directly supported will be converted accordingly if possible.
      • getIntValue

        public int getIntValue()
        Get the value of this int constant, or 0 if not set.
      • setIntValue

        public void setIntValue​(int value)
        Set the value of this int constant.
      • getFloatValue

        public float getFloatValue()
        Get the value of this float constant.
      • setFloatValue

        public void setFloatValue​(float value)
        Set the value of this float constant.
      • getDoubleValue

        public double getDoubleValue()
        Get the value of this double constant.
      • setDoubleValue

        public void setDoubleValue​(double value)
        Set the value of this double constant.
      • getLongValue

        public long getLongValue()
        Get the value of this long constant.
      • setLongValue

        public void setLongValue​(long value)
        Set the value of this long constant.
      • getStringValue

        public java.lang.String getStringValue()
        Get the value of this string constant.
      • setStringValue

        public void setStringValue​(java.lang.String value)
        Set the value of this string constant.
      • 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.