java.lang.Object
kala.compress.harmony.unpack200.bytecode.OperandManager

public class OperandManager extends Object
Tracks operands, provides methods to let other classes get next elements, and also knows about which classes have been used recently in super, this and new references.
  • Field Details

    • bcCaseCount

      int[] bcCaseCount
    • bcCaseValue

      int[] bcCaseValue
    • bcByte

      int[] bcByte
    • bcShort

      int[] bcShort
    • bcLocal

      int[] bcLocal
    • bcLabel

      int[] bcLabel
    • bcIntRef

      int[] bcIntRef
    • bcFloatRef

      int[] bcFloatRef
    • bcLongRef

      int[] bcLongRef
    • bcDoubleRef

      int[] bcDoubleRef
    • bcStringRef

      int[] bcStringRef
    • bcClassRef

      int[] bcClassRef
    • bcFieldRef

      int[] bcFieldRef
    • bcMethodRef

      int[] bcMethodRef
    • bcIMethodRef

      int[] bcIMethodRef
    • bcThisField

      int[] bcThisField
    • bcSuperField

      int[] bcSuperField
    • bcThisMethod

      int[] bcThisMethod
    • bcSuperMethod

      int[] bcSuperMethod
    • bcInitRef

      int[] bcInitRef
    • wideByteCodes

      int[] wideByteCodes
    • bcCaseCountIndex

      int bcCaseCountIndex
    • bcCaseValueIndex

      int bcCaseValueIndex
    • bcByteIndex

      int bcByteIndex
    • bcShortIndex

      int bcShortIndex
    • bcLocalIndex

      int bcLocalIndex
    • bcLabelIndex

      int bcLabelIndex
    • bcIntRefIndex

      int bcIntRefIndex
    • bcFloatRefIndex

      int bcFloatRefIndex
    • bcLongRefIndex

      int bcLongRefIndex
    • bcDoubleRefIndex

      int bcDoubleRefIndex
    • bcStringRefIndex

      int bcStringRefIndex
    • bcClassRefIndex

      int bcClassRefIndex
    • bcFieldRefIndex

      int bcFieldRefIndex
    • bcMethodRefIndex

      int bcMethodRefIndex
    • bcIMethodRefIndex

      int bcIMethodRefIndex
    • bcThisFieldIndex

      int bcThisFieldIndex
    • bcSuperFieldIndex

      int bcSuperFieldIndex
    • bcThisMethodIndex

      int bcThisMethodIndex
    • bcSuperMethodIndex

      int bcSuperMethodIndex
    • bcInitRefIndex

      int bcInitRefIndex
    • wideByteCodeIndex

      int wideByteCodeIndex
    • segment

      Segment segment
    • currentClass

      String currentClass
    • superClass

      String superClass
    • newClass

      String newClass
  • Constructor Details

    • OperandManager

      public OperandManager(int[] bcCaseCount, int[] bcCaseValue, int[] bcByte, int[] bcShort, int[] bcLocal, int[] bcLabel, int[] bcIntRef, int[] bcFloatRef, int[] bcLongRef, int[] bcDoubleRef, int[] bcStringRef, int[] bcClassRef, int[] bcFieldRef, int[] bcMethodRef, int[] bcIMethodRef, int[] bcThisField, int[] bcSuperField, int[] bcThisMethod, int[] bcSuperMethod, int[] bcInitRef, int[] wideByteCodes)
  • Method Details

    • getCurrentClass

      public String getCurrentClass()
    • getNewClass

      public String getNewClass()
    • getSuperClass

      public String getSuperClass()
    • globalConstantPool

      public SegmentConstantPool globalConstantPool()
    • nextByte

      public int nextByte()
    • nextCaseCount

      public int nextCaseCount()
    • nextCaseValues

      public int nextCaseValues()
    • nextClassRef

      public int nextClassRef()
    • nextDoubleRef

      public int nextDoubleRef()
    • nextFieldRef

      public int nextFieldRef()
    • nextFloatRef

      public int nextFloatRef()
    • nextIMethodRef

      public int nextIMethodRef()
    • nextInitRef

      public int nextInitRef()
    • nextIntRef

      public int nextIntRef()
    • nextLabel

      public int nextLabel()
    • nextLocal

      public int nextLocal()
    • nextLongRef

      public int nextLongRef()
    • nextMethodRef

      public int nextMethodRef()
    • nextShort

      public int nextShort()
    • nextStringRef

      public int nextStringRef()
    • nextSuperFieldRef

      public int nextSuperFieldRef()
    • nextSuperMethodRef

      public int nextSuperMethodRef()
    • nextThisFieldRef

      public int nextThisFieldRef()
    • nextThisMethodRef

      public int nextThisMethodRef()
    • nextWideByteCode

      public int nextWideByteCode()
    • setCurrentClass

      public void setCurrentClass(String string)
    • setNewClass

      public void setNewClass(String string)
    • setSegment

      public void setSegment(Segment segment)
    • setSuperClass

      public void setSuperClass(String string)