Пример #1
0
 public ISymbolDocumentWriter DefineDocument(string url, Guid language, Guid languageVendor, Guid documentType)
 {
     if (symbolWriter != null)
     {
         return(symbolWriter.DefineDocument(url, language, languageVendor, documentType));
     }
     else
     {
         return(null);
     }
 }
Пример #2
0
        /// <summary>
        /// </summary>
        /// <param name="symbolWriter">
        /// </param>
        /// <param name="function">
        /// </param>
        /// <returns>
        /// </returns>
        private SourceFile GetSourceFile(ISymbolWriter symbolWriter, PdbFunction function)
        {
            var name = (from l in function.lines where l.file != null select l.file.name).First();

            SourceFile file;

            if (this.files.TryGetValue(name, out file))
            {
                return(file);
            }

            var entry = symbolWriter.DefineDocument(name);
            var unit  = symbolWriter.DefineCompilationUnit(entry);

            file = new SourceFile(unit, entry);
            this.files.Add(name, file);
            return(file);
        }
Пример #3
0
        ISymbolDocumentWriter GetDocument(Document document)
        {
            ISymbolDocumentWriter docWriter = m_documents [document.Url] as ISymbolDocumentWriter;

            if (docWriter != null)
            {
                return(docWriter);
            }

            docWriter = m_writer.DefineDocument(
                document.Url,
                GuidAttribute.GetGuidFromValue((int)document.Language, typeof(DocumentLanguage)),
                GuidAttribute.GetGuidFromValue((int)document.LanguageVendor, typeof(DocumentLanguageVendor)),
                GuidAttribute.GetGuidFromValue((int)document.Type, typeof(DocumentType)));

            m_documents [document.Url] = docWriter;
            return(docWriter);
        }
Пример #4
0
        /// <summary>
        /// </summary>
        /// <param name="symbolWriter">
        /// </param>
        /// <param name="function">
        /// </param>
        /// <returns>
        /// </returns>
        private SourceFile GetSourceFile(ISymbolWriter symbolWriter, PdbFunction function)
        {
            var name = (from l in function.lines where l.file != null select l.file.name).First();

            SourceFile file;
            if (this.files.TryGetValue(name, out file))
            {
                return file;
            }

            var entry = symbolWriter.DefineDocument(name);
            var unit = symbolWriter.DefineCompilationUnit(entry);

            file = new SourceFile(unit, entry);
            this.files.Add(name, file);
            return file;
        }