37 lines
1.9 KiB
C#
37 lines
1.9 KiB
C#
|
// dnlib: See LICENSE.txt for more info
|
||
|
|
||
|
using System;
|
||
|
using System.Diagnostics.SymbolStore;
|
||
|
using dnlib.DotNet.Writer;
|
||
|
|
||
|
namespace dnlib.DotNet.Pdb.WindowsPdb {
|
||
|
abstract class SymbolWriter : IDisposable {
|
||
|
public abstract bool IsDeterministic { get; }
|
||
|
public abstract bool SupportsAsyncMethods { get; }
|
||
|
|
||
|
public abstract void Initialize(Metadata metadata);
|
||
|
public abstract void Close();
|
||
|
public abstract bool GetDebugInfo(ChecksumAlgorithm pdbChecksumAlgorithm, ref uint pdbAge, out Guid guid, out uint stamp, out IMAGE_DEBUG_DIRECTORY pIDD, out byte[] codeViewData);
|
||
|
|
||
|
public abstract void SetUserEntryPoint(MDToken entryMethod);
|
||
|
public abstract ISymbolDocumentWriter DefineDocument(string url, Guid language, Guid languageVendor, Guid documentType);
|
||
|
public abstract void SetSourceServerData(byte[] data);
|
||
|
public abstract void SetSourceLinkData(byte[] data);
|
||
|
|
||
|
public abstract void OpenMethod(MDToken method);
|
||
|
public abstract void CloseMethod();
|
||
|
public abstract int OpenScope(int startOffset);
|
||
|
public abstract void CloseScope(int endOffset);
|
||
|
public abstract void SetSymAttribute(MDToken parent, string name, byte[] data);
|
||
|
public abstract void UsingNamespace(string fullName);
|
||
|
public abstract void DefineSequencePoints(ISymbolDocumentWriter document, uint arraySize, int[] offsets, int[] lines, int[] columns, int[] endLines, int[] endColumns);
|
||
|
public abstract void DefineLocalVariable(string name, uint attributes, uint sigToken, uint addrKind, uint addr1, uint addr2, uint addr3, uint startOffset, uint endOffset);
|
||
|
public abstract void DefineConstant(string name, object value, uint sigToken);
|
||
|
public abstract void DefineKickoffMethod(uint kickoffMethod);
|
||
|
public abstract void DefineCatchHandlerILOffset(uint catchHandlerOffset);
|
||
|
public abstract void DefineAsyncStepInfo(uint[] yieldOffsets, uint[] breakpointOffset, uint[] breakpointMethod);
|
||
|
|
||
|
public abstract void Dispose();
|
||
|
}
|
||
|
}
|