/// <summary> /// Allocates a range of source text that corresponds to a source line. /// </summary> internal PdbSourceLineLocation(PdbSourceDocument primarySourceDocument, int startLine, int startColumn, int endLine, int endColumn) { this.primarySourceDocument = primarySourceDocument; this.startLine = startLine; this.startColumn = startColumn; this.endLine = endLine; this.endColumn = endColumn; }
private PdbSourceDocument GetPrimarySourceDocumentFor(PdbSource pdbSourceFile) { PdbSourceDocument/*?*/ result = null; if (this.documentCache.TryGetValue(pdbSourceFile, out result)) return result; IName name = this.host.NameTable.GetNameFor(Path.GetFileName(pdbSourceFile.name)); if (File.Exists(pdbSourceFile.name)) { var sourceFileReader = new StreamReader(pdbSourceFile.name); this.sourceFilesOpenedByReader.Add(sourceFileReader); result = new PdbSourceDocument(name, pdbSourceFile, sourceFileReader); } else result = new PdbSourceDocument(name, pdbSourceFile); this.documentCache.Add(pdbSourceFile, result); return result; }