ISymbolWriter Interface
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Represents a symbol writer for managed code.
public interface class ISymbolWriter
public interface ISymbolWriter
[System.Runtime.InteropServices.ComVisible(true)]
public interface ISymbolWriter
type ISymbolWriter = interface
[<System.Runtime.InteropServices.ComVisible(true)>]
type ISymbolWriter = interface
Public Interface ISymbolWriter
- Derived
- Attributes
Remarks
The ISymbolWriter interface provides methods that define documents, sequence points, lexical scopes, and variables.
Note
This interface is the managed counterpart of the ISymUnmanagedWriter
interface, which is one of the unmanaged symbol store interfaces that provides an alternative way to read and write debug symbol information.
Methods
Close() |
Closes ISymbolWriter and commits the symbols to the symbol store. |
CloseMethod() |
Closes the current method. |
CloseNamespace() |
Closes the most recent namespace. |
CloseScope(Int32) |
Closes the current lexical scope. |
DefineDocument(String, Guid, Guid, Guid) |
Defines a source document. |
DefineField(SymbolToken, String, FieldAttributes, Byte[], SymAddressKind, Int32, Int32, Int32) |
Defines a field in a type or a global field. |
DefineGlobalVariable(String, FieldAttributes, Byte[], SymAddressKind, Int32, Int32, Int32) |
Defines a single global variable. |
DefineLocalVariable(String, FieldAttributes, Byte[], SymAddressKind, Int32, Int32, Int32, Int32, Int32) |
Defines a single variable in the current lexical scope. |
DefineParameter(String, ParameterAttributes, Int32, SymAddressKind, Int32, Int32, Int32) |
Defines a single parameter in the current method. The type of each parameter is taken from its position within the signature of the method. |
DefineSequencePoints(ISymbolDocumentWriter, Int32[], Int32[], Int32[], Int32[], Int32[]) |
Defines a group of sequence points within the current method. |
Initialize(IntPtr, String, Boolean) |
Sets the metadata emitter interface to associate with a writer. |
OpenMethod(SymbolToken) |
Opens a method to place symbol information into. |
OpenNamespace(String) |
Opens a new namespace. |
OpenScope(Int32) |
Opens a new lexical scope in the current method. |
SetMethodSourceRange(ISymbolDocumentWriter, Int32, Int32, ISymbolDocumentWriter, Int32, Int32) |
Specifies the true start and end of a method within a source file. Use SetMethodSourceRange(ISymbolDocumentWriter, Int32, Int32, ISymbolDocumentWriter, Int32, Int32) to specify the extent of a method, independent of the sequence points that exist within the method. |
SetScopeRange(Int32, Int32, Int32) |
Defines the offset range for the specified lexical scope. |
SetSymAttribute(SymbolToken, String, Byte[]) |
Defines an attribute when given the attribute name and the attribute value. |
SetUnderlyingWriter(IntPtr) |
Sets the underlying |
SetUserEntryPoint(SymbolToken) |
Identifies the user-defined method as the entry point for the current module. |
UsingNamespace(String) |
Specifies that the given, fully qualified namespace name is used within the open lexical scope. |