sa-jdi

pl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public short getVTableSegment()
  {
    symSeek(12);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readShort();
  }
  
  public int getRegRelOffset()
  {
    symSeek(0);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public int getRegRelType()
  {
    symSeek(4);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public short getRegRelRegister()
  {
    symSeek(8);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readShort();
  }
  
  public String getRegRelName()
  {
    return readLengthPrefixedStringAt(10);
  }
  
  public int getLThreadType()
  {
    symSeek(0);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public int getLThreadOffset()
  {
    symSeek(4);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public short getLThreadSegment()
  {
    symSeek(8);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readShort();
  }
  
  public String getLThreadName()
  {
    return readLengthPrefixedStringAt(10);
  }
  
  private void symSeek(int offsetInSym)
  {
    COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).seek(pos + 4 + offsetInSym);
  }
  
  private int numericLeafLengthAt(int offsetInSym)
  {
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$2200(this$3, pos + 4 + offsetInSym);
  }
  
  private int readIntNumericLeafAt(int offsetInSym)
  {
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$2300(this$3, pos + 4 + offsetInSym);
  }
  
  private long readLongNumericLeafAt(int offsetInSym)
  {
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$2400(this$3, pos + 4 + offsetInSym);
  }
  
  private float readFloatNumericLeafAt(int offsetInSym)
  {
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$2500(this$3, pos + 4 + offsetInSym);
  }
  
  private double readDoubleNumericLeafAt(int offsetInSym)
  {
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$2600(this$3, pos + 4 + offsetInSym);
  }
  
  private int lengthPrefixedStringLengthAt(int offsetInSym)
  {
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$2700(this$3, pos + 4 + offsetInSym);
  }
  
  private String readLengthPrefixedStringAt(int offsetInSym)
  {
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$1100(this$3, pos + 4 + offsetInSym);
  }
}

/* Location:
 * Qualified Name:     sun.jvm.hotspot.debugger.win32.coff.COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.DebugVC50SymbolIteratorImpl
 * Java Class Version: 1.4 (48.0)
 * JD-Core Version:    0.7.1
 */
package sun.jvm.hotspot.debugger.win32.coff;

import java.util.NoSuchElementException;

class COFFFileParser$COFFFileImpl$COFFHeaderImpl$DebugVC50Impl$DebugVC50TypeIteratorImpl
  implements DebugVC50TypeIterator, DebugVC50TypeLeafIndices, DebugVC50MemberAttributes, DebugVC50TypeEnums
{
  private DebugVC50SSGlobalTypes parent;
  private int base;
  private int numTypes;
  private int typeIndex;
  private int typeRecordOffset;
  private int typeStringOffset;
  private int typeRecordSize;
  private int typeStringLeaf;
  private final COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl this$3;
  
  COFFFileParser$COFFFileImpl$COFFHeaderImpl$DebugVC50Impl$DebugVC50TypeIteratorImpl(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl paramDebugVC50Impl, DebugVC50SSGlobalTypes parent, int base, int numTypes)
  {
    this(paramDebugVC50Impl, parent, base, numTypes, 0, base);
  }
  
  private COFFFileParser$COFFFileImpl$COFFHeaderImpl$DebugVC50Impl$DebugVC50TypeIteratorImpl(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl paramDebugVC50Impl, DebugVC50SSGlobalTypes parent, int base, int numTypes, int curType, int offset)
  {
    this.parent = parent;
    this.base = base;
    this.numTypes = numTypes;
    typeIndex = curType;
    if (!done())
    {
      typeRecordOffset = offset;
      loadTypeRecord();
    }
  }
  
  public boolean done()
  {
    return typeIndex == numTypes;
  }
  
  public void next()
    throws NoSuchElementException
  {
    if (done()) {
      throw new NoSuchElementException();
    }
    typeIndex += 1;
    if (!done())
    {
      typeRecordOffset = parent.getTypeOffset(typeIndex);
      loadTypeRecord();
    }
  }
  
  public short getLength()
  {
    return (short)typeRecordSize;
  }
  
  public int getTypeIndex()
  {
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$2800(this$3, typeIndex);
  }
  
  public int getNumTypes()
  {
    return numTypes;
  }
  
  public boolean typeStringDone()
  {
    return typeStringOffset - typeRecordOffset - 2 >= typeRecordSize;
  }
  
  public void typeStringNext()
    throws NoSuchElementException
  {
    if (typeStringDone()) {
      throw new NoSuchElementException();
    }
    typeStringOffset += typeStringLength();
    loadTypeString();
  }
  
  public int typeStringLeaf()
  {
    return typeStringLeaf;
  }
  
  public int typeStringOffset()
  {
    return typeStringOffset;
  }
  
  public int getModifierIndex()
  {
    typeSeek(2);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public short getModifierAttribute()
  {
    typeSeek(6);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readShort();
  }
  
  public int getPointerType()
  {
    typeSeek(2);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public int getPointerAttributes()
  {
    typeSeek(6);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public int getPointerBasedOnTypeIndex()
  {
    typeSeek(10);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public String getPointerBasedOnTypeName()
  {
    return readLengthPrefixedStringAt(14);
  }
  
  public int getPointerToMemberClass()
  {
    typeSeek(10);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public short getPointerToMemberFormat()
  {
    typeSeek(14);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readShort();
  }
  
  public int getArrayElementType()
  {
    typeSeek(2);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public int getArrayIndexType()
  {
    typeSeek(6);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public int getArrayLength()
    throws DebugVC50WrongNumericTypeException
  {
    return readIntNumericLeafAt(10);
  }
  
  public String getArrayName()
  {
    return readLengthPrefixedStringAt(10 + numericLeafLengthAt(10));
  }
  
  public short getClassCount()
  {
    typeSeek(2);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readShort();
  }
  
  public short getClassProperty()
  {
    typeSeek(4);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readShort();
  }
  
  public int getClassFieldList()
  {
    typeSeek(6);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public DebugVC50TypeIterator getClassFieldListIterator()
  {
    int index = COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$2900(this$3, getClassFieldList());
    int offset = parent.getTypeOffset(index);
    return new DebugVC50TypeIteratorImpl(this$3, parent, base, numTypes, index, offset);
  }
  
  public int getClassDerivationList()
  {
    typeSeek(10);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public int getClassVShape()
  {
    typeSeek(14);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public int getClassSize()
    throws DebugVC50WrongNumericTypeException
  {
    return readIntNumericLeafAt(18);
  }
  
  public String getClassName()
  {
    return readLengthPrefixedStringAt(18 + numericLeafLengthAt(18));
  }
  
  public short getUnionCount()
  {
    typeSeek(2);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readShort();
  }
  
  public short getUnionProperty()
  {
    typeSeek(4);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readShort();
  }
  
  public int getUnionFieldList()
  {
    typeSeek(6);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public DebugVC50TypeIterator getUnionFieldListIterator()
  {
    int index = COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$2900(this$3, getUnionFieldList());
    int offset = parent.getTypeOffset(index);
    return new DebugVC50TypeIteratorImpl(this$3, parent, base, numTypes, index, offset);
  }
  
  public int getUnionSize()
    throws DebugVC50WrongNumericTypeException
  {
    return readIntNumericLeafAt(10);
  }
  
  public String getUnionName()
  {
    return readLengthPrefixedStringAt(10 + numericLeafLengthAt(10));
  }
  
  public short getEnumCount()
  {
    typeSeek(2);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readShort();
  }
  
  public short getEnumProperty()
  {
    typeSeek(4);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readShort();
  }
  
  public int getEnumType()
  {
    typeSeek(6);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public int getEnumFieldList()
  {
    typeSeek(10);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public DebugVC50TypeIterator getEnumFieldListIterator()
  {
    int index = COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$2900(this$3, getEnumFieldList());
    int offset = parent.getTypeOffset(index);
    return new DebugVC50TypeIteratorImpl(this$3, parent, base, numTypes, index, offset);
  }
  
  public String getEnumName()
  {
    return readLengthPrefixedStringAt(14);
  }
  
  public int getProcedureReturnType()
  {
    typeSeek(2);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public byte getProcedureCallingConvention()
  {
    typeSeek(6);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readByte();
  }
  
  public short getProcedureNumberOfParameters()
  {
    typeSeek(8);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readShort();
  }
  
  public int getProcedureArgumentList()
  {
    typeSeek(10);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public DebugVC50TypeIterator getProcedureArgumentListIterator()
  {
    int index = COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$2900(this$3, getProcedureArgumentList());
    int offset = parent.getTypeOffset(index);
    return new DebugVC50TypeIteratorImpl(this$3, parent, base, numTypes, index, offset);
  }
  
  public int getMFunctionReturnType()
  {
    typeSeek(2);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public int getMFunctionContainingClass()
  {
    typeSeek(6);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public int getMFunctionThis()
  {
    typeSeek(10);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public byte getMFunctionCallingConvention()
  {
    typeSeek(14);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readByte();
  }
  
  public short getMFunctionNumberOfParameters()
  {
    typeSeek(16);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readShort();
  }
  
  public int getMFunctionArgumentList()
  {
    typeSeek(18);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public DebugVC50TypeIterator getMFunctionArgumentListIterator()
  {
    int index = COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$2900(this$3, getMFunctionArgumentList());
    int offset = parent.getTypeOffset(index);
    return new DebugVC50TypeIteratorImpl(this$3, parent, base, numTypes, index, offset);
  }
  
  public int getMFunctionThisAdjust()
  {
    typeSeek(22);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public short getVTShapeCount()
  {
    typeSeek(2);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readShort();
  }
  
  public int getVTShapeDescriptor(int i)
  {
    typeSeek(4 + i / 2);
    int val = COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readByte() & 0xFF;
    if (i % 2 != 0) {
      val >>= 4;
    }
    return val;
  }
  
  public int getBasicArrayType()
  {
    typeSeek(2);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public short getLabelAddressMode()
  {
    typeSeek(2);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readShort();
  }
  
  public int getDimArrayType()
  {
    typeSeek(2);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public int getDimArrayDimInfo()
  {
    typeSeek(6);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public String getDimArrayName()
  {
    return readLengthPrefixedStringAt(10);
  }
  
  public int getVFTPathCount()
  {
    typeSeek(2);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public int getVFTPathBase(int i)
  {
    typeSeek(6 + 4 * i);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public int getSkipIndex()
  {
    typeSeek(2);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public int getArgListCount()
  {
    typeSeek(2);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public int getArgListType(int i)
  {
    typeSeek(6 + 4 * i);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public int getDefaultArgType()
  {
    typeSeek(2);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public String getDefaultArgExpression()
  {
    return readLengthPrefixedStringAt(6);
  }
  
  public int getDerivedCount()
  {
    typeSeek(2);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public int getDerivedType(int i)
  {
    typeSeek(6);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public int getBitfieldFieldType()
  {
    typeSeek(2);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public byte getBitfieldLength()
  {
    typeSeek(6);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readByte();
  }
  
  public byte getBitfieldPosition()
  {
    typeSeek(7);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readByte();
  }
  
  public short getMListAttribute()
  {
    typeSeek(2);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readShort();
  }
  
  public int getMListLength()
  {
    return (getLength() - 6 - (isMListIntroducingVirtual() ? 4 : 0)) / 4;
  }
  
  public int getMListType(int i)
  {
    typeSeek(6 + 4 * i);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public boolean isMListIntroducingVirtual()
  {
    return isIntroducingVirtual(getMListAttribute());
  }
  
  public int getMListVtabOffset()
  {
    typeSeek(6 + 4 * getMListLength());
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public DebugVC50SymbolIterator getRefSym()
  {
    typeSeek(2);
    int len = COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readShort() & 0xFFFF;
    return new COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.DebugVC50SymbolIteratorImpl(this$3, typeStringOffset + 2, len);
  }
  
  public short getBClassAttribute()
  {
    typeSeek(2);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readShort();
  }
  
  public int getBClassType()
  {
    typeSeek(4);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public int getBClassOffset()
    throws DebugVC50WrongNumericTypeException
  {
    return readIntNumericLeafAt(8);
  }
  
  public short getVBClassAttribute()
  {
    typeSeek(2);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readShort();
  }
  
  public int getVBClassBaseClassType()
  {
    typeSeek(4);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public int getVBClassVirtualBaseClassType()
  {
    typeSeek(8);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public int getVBClassVBPOff()
    throws DebugVC50WrongNumericTypeException
  {
    return readIntNumericLeafAt(12);
  }
  
  public int getVBClassVBOff()
    throws DebugVC50WrongNumericTypeException
  {
    return readIntNumericLeafAt(12 + numericLeafLengthAt(12));
  }
  
  public short getIVBClassAttribute()
  {
    typeSeek(2);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readShort();
  }
  
  public int getIVBClassBType()
  {
    typeSeek(4);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public int getIVBClassVBPType()
  {
    typeSeek(8);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public int getIVBClassVBPOff()
    throws DebugVC50WrongNumericTypeException
  {
    return readIntNumericLeafAt(12);
  }
  
  public int getIVBClassVBOff()
    throws DebugVC50WrongNumericTypeException
  {
    return readIntNumericLeafAt(12 + numericLeafLengthAt(12));
  }
  
  public short getEnumerateAttribute()
  {
    typeSeek(2);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readShort();
  }
  
  public long getEnumerateValue()
  {
    return readIntNumericLeafAt(4);
  }
  
  public String getEnumerateName()
  {
    return readLengthPrefixedStringAt(4 + numericLeafLengthAt(4));
  }
  
  public int getFriendFcnType()
  {
    typeSeek(4);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public String getFriendFcnName()
  {
    return readLengthPrefixedStringAt(8);
  }
  
  public int getIndexValue()
  {
    typeSeek(4);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public DebugVC50TypeIterator getIndexIterator()
  {
    int index = COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$2900(this$3, getIndexValue());
    int offset = parent.getTypeOffset(index);
    return new DebugVC50TypeIteratorImpl(this$3, parent, base, numTypes, index, offset);
  }
  
  public short getMemberAttribute()
  {
    typeSeek(2);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readShort();
  }
  
  public int getMemberType()
  {
    typeSeek(4);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public int getMemberOffset()
    throws DebugVC50WrongNumericTypeException
  {
    return readIntNumericLeafAt(8);
  }
  
  public String getMemberName()
  {
    return readLengthPrefixedStringAt(8 + numericLeafLengthAt(8));
  }
  
  public short getStaticAttribute()
  {
    typeSeek(2);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readShort();
  }
  
  public int getStaticType()
  {
    typeSeek(4);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public String getStaticName()
  {
    return readLengthPrefixedStringAt(8);
  }
  
  public short getMethodCount()
  {
    typeSeek(2);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readShort();
  }
  
  public int getMethodList()
  {
    typeSeek(4);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public String getMethodName()
  {
    return readLengthPrefixedStringAt(8);
  }
  
  public int getNestedType()
  {
    typeSeek(4);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public String getNestedName()
  {
    return readLengthPrefixedStringAt(8);
  }
  
  public int getVFuncTabType()
  {
    typeSeek(4);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public int getFriendClsType()
  {
    typeSeek(4);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public short getOneMethodAttribute()
  {
    typeSeek(2);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readShort();
  }
  
  public int getOneMethodType()
  {
    typeSeek(4);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public boolean isOneMethodIntroducingVirtual()
  {
    return isIntroducingVirtual(getOneMethodAttribute());
  }
  
  public int getOneMethodVBaseOff()
  {
    typeSeek(8);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public String getOneMethodName()
  {
    int baseLen = 8 + (isOneMethodIntroducingVirtual() ? 4 : 0);
    return readLengthPrefixedStringAt(baseLen);
  }
  
  public int getVFuncOffType()
  {
    typeSeek(4);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public int getVFuncOffOffset()
  {
    typeSeek(8);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public short getNestedExAttribute()
  {
    typeSeek(2);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readShort();
  }
  
  public int getNestedExType()
  {
    typeSeek(4);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public String getNestedExName()
  {
    return readLengthPrefixedStringAt(8);
  }
  
  public short getMemberModifyAttribute()
  {
    typeSeek(2);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readShort();
  }
  
  public int getMemberModifyType()
  {
    typeSeek(4);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readInt();
  }
  
  public String getMemberModifyName()
  {
    return readLengthPrefixedStringAt(8);
  }
  
  public short getNumericTypeAt(int byteOffset)
  {
    typeSeek(byteOffset);
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readShort();
  }
  
  public int getNumericLengthAt(int byteOffset)
    throws DebugVC50WrongNumericTypeException
  {
    return numericLeafLengthAt(byteOffset);
  }
  
  public int getNumericIntAt(int byteOffset)
    throws DebugVC50WrongNumericTypeException
  {
    return readIntNumericLeafAt(byteOffset);
  }
  
  public long getNumericLongAt(int byteOffset)
    throws DebugVC50WrongNumericTypeException
  {
    throw new RuntimeException("Unimplemented");
  }
  
  public float getNumericFloatAt(int byteOffset)
    throws DebugVC50WrongNumericTypeException
  {
    throw new RuntimeException("Unimplemented");
  }
  
  public double getNumericDoubleAt(int byteOffset)
    throws DebugVC50WrongNumericTypeException
  {
    throw new RuntimeException("Unimplemented");
  }
  
  public byte[] getNumericDataAt(int byteOffset)
    throws DebugVC50WrongNumericTypeException
  {
    throw new RuntimeException("Unimplemented");
  }
  
  private void loadTypeRecord()
  {
    COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).seek(typeRecordOffset);
    typeRecordSize = (COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readShort() & 0xFFFF);
    typeStringOffset = (typeRecordOffset + 2);
    loadTypeString();
  }
  
  private void loadTypeString()
  {
    COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).seek(typeStringOffset);
    int lo = COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readByte() & 0xFF;
    if (lo >= 240)
    {
      typeStringLeaf = lo;
    }
    else
    {
      int hi = COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readByte() & 0xFF;
      typeStringLeaf = (hi << 8 | lo);
    }
  }
  
  private void typeSeek(int offset)
  {
    COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).seek(typeStringOffset + offset);
  }
  
  private int typeStringLength()
  {
    if ((typeStringLeaf >= 240) && (typeStringLeaf <= 255)) {
      return typeStringLeaf - 240;
    }
    switch (typeStringLeaf)
    {
    case 4097: 
      return 8;
    case 4098: 
      int extraLen = 0;
      int attr = (getPointerAttributes() & 0x1F) >> 0;
      int mode = (getPointerAttributes() & 0xE0) >> 5;
      if (attr == 8) {
        extraLen = 4 + numericLeafLengthAt(typeStringOffset + 14);
      } else if ((mode == 2) || (mode == 3)) {
        extraLen = 6;
      }
      return 10 + extraLen;
    case 4099: 
      int temp = 10 + numericLeafLengthAt(10);
      return temp + lengthPrefixedStringLengthAt(temp);
    case 4100: 
    case 4101: 
      int temp = 18 + numericLeafLengthAt(18);
      return temp + lengthPrefixedStringLengthAt(temp);
    case 4102: 
      int temp = 10 + numericLeafLengthAt(10);
      return temp + lengthPrefixedStringLengthAt(temp);
    case 4103: 
      return 14 + lengthPrefixedStringLengthAt(14);
    case 4104: 
      return 14;
    case 4105: 
      return 26;
    case 10: 
      return 4 + (getVTShapeCount() + 1) / 2;
    case 12: 
    case 4106: 
      throw new COFFException("COBOL symbols unimplemented");
    case 4107: 
      return 6;
    case 14: 
      return 4;
    case 15: 
      return 2;
    case 16: 
      return 2;
    case 4108: 
      return 10 + lengthPrefixedStringLengthAt(10);
    case 4109: 
      return 6 + 4 * getVFTPathCount();
    case 4110: 
      return 14 + lengthPrefixedStringLengthAt(14);
    case 20: 
      return 6;
    case 4111: 
      throw new COFFException("OEM symbols unimplemented");
    case 22: 
      return 10 + lengthPrefixedStringLengthAt(10);
    case 4608: 
      return 6 + numericLeafLengthAt(6);
    case 4609: 
      return 6 + 4 * getArgListCount();
    case 4610: 
      return 6 + lengthPrefixedStringLengthAt(6);
    case 4611: 
      return 2;
    case 4612: 
      return 6 + 4 * getDerivedCount();
    case 4613: 
      return 8;
    case 4614: 
      return 6 + 4 * getMListLength() + (isMListIntroducingVirtual() ? 4 : 0);
    case 4615: 
    case 4616: 
    case 4617: 
    case 4618: 
      throw new COFFException("LF_DIMCONU, LF_DIMCONLU, LF_DIMVARU, and LF_DIMVARLU unsupported");
    case 524: 
      COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).seek(typeStringOffset + 2);
      return 4 + COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$700(this$3)).readShort();
    case 5120: 
      return 8 + numericLeafLengthAt(8);
    case 5121: 
    case 5122: 
      int temp = 12 + numericLeafLengthAt(12);
      return temp + numericLeafLengthAt(temp);
    case 1027: 
      int temp = 4 + numericLeafLengthAt(4);
      return temp + lengthPrefixedStringLengthAt(temp);
    case 5123: 
      return 8 + lengthPrefixedStringLengthAt(8);
    case 5124: 
      return 8;
    case 5125: 
      int temp = 8 + numericLeafLengthAt(8);
      return temp + lengthPrefixedStringLengthAt(temp);
    case 5126: 
      return 8 + lengthPrefixedStringLengthAt(8);
    case 5127: 
      return 8 + lengthPrefixedStringLengthAt(8);
    case 5128: 
      return 8 + lengthPrefixedStringLengthAt(8);
    case 5129: 
      return 8;
    case 5130: 
      return 8;
    case 5131: 
      int baseLen = 8 + (isOneMethodIntroducingVirtual() ? 4 : 0);
      return baseLen + lengthPrefixedStringLengthAt(baseLen);
    case 5132: 
      return 12;
    case 5133: 
      return 8 + lengthPrefixedStringLengthAt(8);
    case 5134: 
      return 8 + lengthPrefixedStringLengthAt(8);
    case 32768: 
    case 32769: 
    case 32770: 
    case 32771: 
    case 32772: 
    case 32773: 
    case 32774: 
    case 32775: 
    case 32776: 
    case 32777: 
    case 32778: 
    case 32779: 
    case 32780: 
    case 32781: 
    case 32782: 
    case 32783: 
    case 32784: 
      throw new RuntimeException("Unexpected numeric leaf " + typeStringLeaf + "in type string");
    }
    throw new COFFException("Unrecognized leaf " + typeStringLeaf + " in type string at offset " + typeStringOffset);
  }
  
  private boolean isIntroducingVirtual(int mprop)
  {
    int masked = mprop & 0x1C;
    return (masked == 16) || (masked == 24);
  }
  
  private int numericLeafLengthAt(int offset)
  {
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$2200(this$3, typeStringOffset + offset);
  }
  
  private int readIntNumericLeafAt(int offset)
  {
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$2300(this$3, typeStringOffset + offset);
  }
  
  private int lengthPrefixedStringLengthAt(int offset)
  {
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$2700(this$3, typeStringOffset + offset);
  }
  
  private String readLengthPrefixedStringAt(int offset)
  {
    return COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.access$1100(this$3, typeStringOffset + offset);
  }
}

/* Location:
 * Qualified Name:     sun.jvm.hotspot.debugger.win32.coff.COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.DebugVC50TypeIteratorImpl
 * Java Class Version: 1.4 (48.0)
 * JD-Core Version:    0.7.1
 */
package sun.jvm.hotspot.debugger.win32.coff;

import java.io.UnsupportedEncodingException;
import java.util.ArrayList;
import java.util.List;
import java.util.NoSuchElementException;
import sun.jvm.hotspot.utilities.Assert;
import sun.jvm.hotspot.utilities.memo.MemoizedObject;

class COFFFileParser$COFFFileImpl$COFFHeaderImpl$DebugVC50Impl
  implements DebugVC50, DebugVC50TypeLeafIndices
{
  private int lfaBase;
  private int subsectionDirectoryOffset;
  private MemoizedObject subsectionDirectory;
  private final COFFFileParser.COFFFileImpl.COFFHeaderImpl this$2;
  
  COFFFileParser$COFFFileImpl$COFFHeaderImpl$DebugVC50Impl(final COFFFileParser.COFFFileImpl.COFFHeaderImpl paramCOFFHeaderImpl, int offset)
  {
    lfaBase = offset;
    COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(paramCOFFHeaderImpl).seek(offset);
    COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(paramCOFFHeaderImpl).readInt();
    subsectionDirectoryOffset = globalOffset(COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(paramCOFFHeaderImpl).readInt());
    
    verify();
    
    subsectionDirectory = new MemoizedObject()
    {
      public Object computeValue()
      {
        return new COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.DebugVC50SubsectionDirectoryImpl(COFFFileParser.COFFFileImpl.COFFHeaderImpl.DebugVC50Impl.this, getSubsectionDirectoryOffset());
      }
    };
  }
  
  public int getSubsectionDirectoryOffset()
  {
    return subsectionDirectoryOffset;
  }
  
  public DebugVC50SubsectionDirectory getSubsectionDirectory()
  {
    return (DebugVC50SubsectionDirectory)subsectionDirectory.getValue();
  }
  
  private int globalOffset(int offset)
  {
    return offset + lfaBase;
  }
  
  private void verify()
  {
    COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(this$2).seek(subsectionDirectoryOffset);
    int headerLength = COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(this$2).readShort();
    int entryLength = COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(this$2).readShort();
    int numEntries = COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(this$2).readInt();
    int endOffset = subsectionDirectoryOffset + headerLength + numEntries * entryLength;
    COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(this$2).seek(endOffset);
    if ((COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(this$2).readByte() == 78) && (COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(this$2).readByte() == 66) && (COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(this$2).readByte() == 49) && (COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(this$2).readByte() == 49)) {
      return;
    }
    throw new COFFException("Did not find NB11 signature at end of debug info");
  }
  
  class DebugVC50SubsectionDirectoryImpl
    implements DebugVC50SubsectionDirectory, DebugVC50SubsectionTypes
  {
    private int offset;
    private short dirHeaderLength;
    private short dirEntryLength;
    private int numEntries;
    
    DebugVC50SubsectionDirectoryImpl(int offset)
    {
      this.offset = offset;
      
      COFFFileParser.COFFFileImpl.COFFHeaderImpl.access$100(this$2).seek(offset);
      d
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114

Further reading...

For more information on Java 1.5 Tiger, you may find Java 1.5 Tiger, A developer's Notebook by D. Flanagan and B. McLaughlin from O'Reilly of interest.

New!JAR listings


Copyright 2006-2019. Infinite Loop Ltd