}
final int minorVersion = b.readUnsignedShort();
final int majorVersion = b.readUnsignedShort();
final ConstantPool constantPool = ConstantPool.read(b);
final int accessFlags = b.readUnsignedShort();
final ConstantPool.TypeInfoEntry thisClass = (ConstantPool.TypeInfoEntry) constantPool.get(b.readUnsignedShort(), ConstantPool.Tag.TypeInfo);
final ConstantPool.TypeInfoEntry baseClass;
final int baseClassToken = b.readUnsignedShort();
if (baseClassToken == 0) {
baseClass = null;
}
else {
baseClass = constantPool.getEntry(baseClassToken);
}
final ConstantPool.TypeInfoEntry interfaces[] = new ConstantPool.TypeInfoEntry[b.readUnsignedShort()];
for (int i = 0; i < interfaces.length; i++) {
interfaces[i] = (ConstantPool.TypeInfoEntry) constantPool.get(b.readUnsignedShort(), ConstantPool.Tag.TypeInfo);
}
return new ClassFileReader(
options,
resolver,