Exemplo n.º 1
0
        public ISymbolDocumentWriter DefineDocument(string url, Guid language, Guid languageVendor, Guid documentType)
        {
            ISymUnmanagedDocumentWriter unDocWriter;

            writer.DefineDocument(url, ref language, ref languageVendor, ref documentType, out unDocWriter);
            return(unDocWriter == null ? null : new SymbolDocumentWriter(unDocWriter));
        }
Exemplo n.º 2
0
        public object DefineDocument(string url, ref Guid language, ref Guid vendor, ref Guid docType)
        {
            ISymUnmanagedDocumentWriter docWriter;

            writer.DefineDocument(url, ref language, ref vendor, ref docType, out docWriter);
            return((object)docWriter);
        }
Exemplo n.º 3
0
 internal ISymUnmanagedDocumentWriter GetUnmanagedDocument(ISymUnmanagedWriter2 symUnmanagedWriter)
 {
     if (unmanagedDocument == null)
     {
         unmanagedDocument = symUnmanagedWriter.DefineDocument(url, ref language, ref languageVendor, ref documentType);
     }
     return(unmanagedDocument);
 }
Exemplo n.º 4
0
        public SymDocumentWriter DefineDocument(string url, Guid language, Guid languageVendor, Guid documentType)
        {
            ISymUnmanagedDocumentWriter unmanagedDocumentWriter;

            m_writer.DefineDocument(url, ref language, ref languageVendor, ref documentType, out unmanagedDocumentWriter);

            documents.Add(unmanagedDocumentWriter);
            return(new SymDocumentWriter(unmanagedDocumentWriter));
        }
Exemplo n.º 5
0
        private ISymUnmanagedDocumentWriter UnmanagedDocumentFor(Document document)
        {
            ISymUnmanagedDocumentWriter documentWriter;

            if (documentWriters.TryGetValue(document.Name, out documentWriter))
            {
                return(documentWriter);
            }

            Guid language = document.Language, vendor = document.LanguageVendor, doctype = document.DocumentType;

            documentWriter = pdb.DefineDocument(document.Name, ref language, ref vendor, ref doctype);
            documentWriters.Add(document.Name, documentWriter);
            return(documentWriter);
        }
Exemplo n.º 6
0
        private ISymUnmanagedDocumentWriter GetDocumentWriter(DebugSourceDocument document)
        {
            ISymUnmanagedDocumentWriter writer;

            if (!_documentMap.TryGetValue(document, out writer))
            {
                Guid language = document.Language;
                Guid vendor   = document.LanguageVendor;
                Guid type     = document.DocumentType;

                try
                {
                    writer = _symWriter.DefineDocument(document.Location, ref language, ref vendor, ref type);
                }
                catch (Exception ex)
                {
                    throw new PdbWritingException(ex);
                }

                _documentMap.Add(document, writer);

                var checksumAndAlgorithm = document.ChecksumAndAlgorithm;
                if (!checksumAndAlgorithm.Item1.IsDefault)
                {
                    try
                    {
                        writer.SetCheckSum(checksumAndAlgorithm.Item2, (uint)checksumAndAlgorithm.Item1.Length, checksumAndAlgorithm.Item1.ToArray());
                    }
                    catch (Exception ex)
                    {
                        throw new PdbWritingException(ex);
                    }
                }
            }

            return(writer);
        }
 public override ISymbolDocumentWriter DefineDocument(string url, Guid language, Guid languageVendor, Guid documentType)
 {
     writer.DefineDocument(url, ref language, ref languageVendor, ref documentType, out var unDocWriter);
     return(unDocWriter == null ? null : new SymbolDocumentWriter(unDocWriter));
 }
Exemplo n.º 8
0
 internal ISymUnmanagedDocumentWriter GetUnmanagedDocument(ISymUnmanagedWriter2 symUnmanagedWriter)
 {
     if (unmanagedDocument == null)
     {
         unmanagedDocument = symUnmanagedWriter.DefineDocument(url, ref language, ref languageVendor, ref documentType);
     }
     return unmanagedDocument;
 }