/// <summary> /// Check consistency of a <see cref="DocMap"/>, useful for assertions. /// </summary> internal static bool IsConsistent(DocMap docMap) { int maxDoc = docMap.Count; for (int i = 0; i < maxDoc; ++i) { int newID = docMap.OldToNew(i); int oldID = docMap.NewToOld(newID); Debug.Assert(newID >= 0 && newID < maxDoc, "doc IDs must be in [0-" + maxDoc + "[, got " + newID); Debug.Assert(i == oldID, "mapping is inconsistent: " + i + " --oldToNew--> " + newID + " --newToOld--> " + oldID); if (i != oldID || newID < 0 || newID >= maxDoc) { return(false); } } return(true); }
/// <summary> /// Check consistency of a <see cref="DocMap"/>, useful for assertions. /// </summary> internal static bool IsConsistent(DocMap docMap) { int maxDoc = docMap.Count; for (int i = 0; i < maxDoc; ++i) { int newID = docMap.OldToNew(i); int oldID = docMap.NewToOld(newID); if (Debugging.AssertsEnabled) { Debugging.Assert(newID >= 0 && newID < maxDoc, "doc IDs must be in [0-{0}[, got {1}", maxDoc, newID); Debugging.Assert(i == oldID, "mapping is inconsistent: {0} --oldToNew--> {1} --newToOld--> {2}", i, newID, oldID); } if (i != oldID || newID < 0 || newID >= maxDoc) { return(false); } } return(true); }