public void Close() { InitWriter(); foreach (Method method in methods) { int remappedToken = method.token; remap.TryGetValue(remappedToken, out remappedToken); symUnmanagedWriter.OpenMethod(remappedToken); if (method.document != null) { ISymUnmanagedDocumentWriter doc = method.document.GetUnmanagedDocument(symUnmanagedWriter); symUnmanagedWriter.DefineSequencePoints(doc, method.offsets.Length, method.offsets, method.lines, method.columns, method.endLines, method.endColumns); } foreach (Scope scope in method.scopes) { scope.Do(symUnmanagedWriter); } symUnmanagedWriter.CloseMethod(); } foreach (Document doc in documents.Values) { doc.Release(); } symUnmanagedWriter.Close(); Marshal.ReleaseComObject(symUnmanagedWriter); symUnmanagedWriter = null; documents.Clear(); methods.Clear(); remap.Clear(); reversemap.Clear(); }
private void OpenMethod(uint methodToken) { try { _symWriter.OpenMethod(methodToken); _symWriter.OpenScope(0); } catch (Exception ex) { throw new PdbWritingException(ex); } }
private void OpenMethod(uint methodToken) { try { _symWriter.OpenMethod(methodToken); // open root scope: _symWriter.OpenScope(startOffset: 0); } catch (Exception ex) { throw new PdbWritingException(ex); } }
public void Write(Function function) { pdb.OpenMethod(function.Token); WriteSources(function.Sources); WriteScopes(function.Scopes, function); WriteConstants(function.Constants); WriteVariables(function.Variables, function.VariablesToken, 0, 0); WriteIteratorClass(function); WriteIteratorScopes(function); // TODO // function.namespaceScopes // function.usedNamespaces // function.usingCounts pdb.CloseMethod(); }
public void OpenMethod(SymbolToken method) { m_writer.OpenMethod(method); }
public void OpenMethod(SymbolToken method) { writer.OpenMethod((uint)method.GetToken()); }
public void OpenMethod(int methodToken) { m_writer.OpenMethod(methodToken); }
public override void OpenMethod(MDToken method) => writer.OpenMethod(method.Raw);
public void OpenMethod(SymbolToken tok) { writer.OpenMethod(tok); }