Пример #1
0
        /// <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;
                }
            }
        }
Пример #2
0
 /// <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;
         }
     }
 }