protected void loadClass()

in instrumentation/src/com/intellij/rt/coverage/util/InstructionsSection.java [67:92]


  protected void loadClass(DataInputStream in, ClassData classData, int version) throws IOException {
    final LineData[] lines = (LineData[]) classData.getLines();
    final LineInstructions[] instructions = new LineInstructions[lines.length];
    for (LineData lineData : lines) {
      if (lineData == null) continue;
      final LineInstructions lineInstructions = new LineInstructions();
      instructions[lineData.getLineNumber()] = lineInstructions;
      lineInstructions.setInstructions(CoverageIOUtil.readINT(in));
      for (int i = 0; i < lineData.jumpsCount(); i++) {
        final JumpInstructions jump = new JumpInstructions();
        lineInstructions.addJump(jump);
        jump.setInstructions(true, CoverageIOUtil.readINT(in));
        jump.setInstructions(false, CoverageIOUtil.readINT(in));
      }
      for (int i = 0; i < lineData.switchesCount(); i++) {
        final SwitchData switchData = lineData.getSwitchData(i);
        final int size = switchData.getKeys().length;
        final SwitchInstructions switchInstructions = new SwitchInstructions(size);
        lineInstructions.addSwitch(switchInstructions);
        for (int key = -1; key < size; key++) {
          switchInstructions.setInstructions(key, CoverageIOUtil.readINT(in));
        }
      }
    }
    myProjectData.getInstructions().put(classData.getName(), new ClassInstructions(instructions));
  }