/// <summary> /// </summary> /// <param name="function"> /// </param> /// <param name="file"> /// </param> /// <param name="builder"> /// </param> private void ConvertSequencePoints(PdbFunction function, SourceFile file, ISourceMethodBuilder builder) { var lastLine = 0; foreach (var line in function.lines.SelectMany(lines => lines.lines)) { // 0xfeefee is an MS convention, we can't pass it into ISymbolWriter, so we use the last non-hidden line var isHidden = line.lineBegin == 0xfeefee; builder.MarkSequencePoint( (int)line.offset, file, isHidden ? lastLine : (int)line.lineBegin, (int)line.colBegin, isHidden); if (!isHidden) { lastLine = (int)line.lineBegin; } } }