private @Nullable Pair<CommonProblemDescriptor, Boolean> nextDescriptor() {
    CommonProblemDescriptor[] descriptors = myDescriptorPacks.get(myPackIdx);

    boolean shouldDoPostponedOperations = myDescriptorIdx == descriptors.length - 1;
    Pair<CommonProblemDescriptor, Boolean> result =
      myDescriptorIdx >= descriptors.length
        ? null
        : Pair.create(descriptors[myDescriptorIdx++], shouldDoPostponedOperations);

    if (myDescriptorIdx == descriptors.length) {
      myPackIdx++;
      myDescriptorIdx = 0;
    }

    return result;
  }
private @Nullable Pair<CommonProblemDescriptor, Boolean> nextDescriptor()