public SourceDocumentWithInclusion(IPrimarySourceDocument wrappedDocument, int originalLineNumber, string originalDocumentName, int startingPositionOfIncludedRegion) {
Contract.Requires(wrappedDocument != null);
Contract.Requires(0 <= startingPositionOfIncludedRegion && startingPositionOfIncludedRegion < wrappedDocument.Length);
this.wrappedDocument = wrappedDocument;
this.originalLineNumber = originalLineNumber;
this.originalDocumentName = originalDocumentName;
this.startingPositionOfIncludedRegion = startingPositionOfIncludedRegion;
}