Edit

Share via


SymWriter Class

Definition

Represents a symbol writer for managed code.

public ref class SymWriter : System::Diagnostics::SymbolStore::ISymbolWriter
public ref class SymWriter : System::Diagnostics::SymbolStore::SymWriterBase, IDisposable, System::Diagnostics::SymbolStore::ISymbolWriter
public class SymWriter : System.Diagnostics.SymbolStore.ISymbolWriter
[System.Runtime.InteropServices.ComVisible(true)]
public class SymWriter : System.Diagnostics.SymbolStore.ISymbolWriter
[System.Runtime.InteropServices.ComVisible(true)]
public class SymWriter : System.Diagnostics.SymbolStore.SymWriterBase, IDisposable, System.Diagnostics.SymbolStore.ISymbolWriter
type SymWriter = class
    interface ISymbolWriter
[<System.Runtime.InteropServices.ComVisible(true)>]
type SymWriter = class
    interface ISymbolWriter
[<System.Runtime.InteropServices.ComVisible(true)>]
type SymWriter = class
    inherit SymWriterBase
    interface ISymbolWriter
    interface IDisposable
Public Class SymWriter
Implements ISymbolWriter
Public Class SymWriter
Inherits SymWriterBase
Implements IDisposable, ISymbolWriter
Inheritance
SymWriter
Inheritance
SymWriter
Attributes
Implements

Remarks

The SymWriter class provides methods that define documents, sequence points, lexical scopes, and variables.

Constructors

SymWriter()

Initializes a new instance of the SymWriter class.

SymWriter(Boolean)

Initializes a new instance of the SymWriter class, specifying whether to create an underlying symbol writer.

Methods

__dtor()

This API supports the product infrastructure and is not intended to be used directly from your code.

Releases the resources held by the current instance of the SymWriter object.

{dtor}()

This API supports the product infrastructure and is not intended to be used directly from your code.

Releases the resources held by the current instance of the SymWriter object.

{dtor}()

Releases the resources held by the current instance.

(Inherited from SymWriterBase)
Close()

Closes the SymWriter 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)

Throws a NotSupportedException in all cases.

DefineGlobalVariable(String, FieldAttributes, Byte[], SymAddressKind, Int32, Int32, Int32)

Throws a NotSupportedException in all cases.

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)

Throws a NotSupportedException in all cases.

DefineSequencePoints(ISymbolDocumentWriter, Int32[], Int32[], Int32[], Int32[], Int32[])

Defines a group of sequence points within the current method.

Dispose()

Releases the resources used by the current instance of the SymWriter class.

Dispose(Boolean)

Called by the Dispose() and Finalize() methods to release the managed and unmanaged resources used by the current instance of the SymWriter class.

Equals(Object)

Determines whether the specified object is equal to the current object.

(Inherited from Object)
Finalize()

Releases unmanaged resources and performs other cleanup operations before the SymWriter is reclaimed by garbage collection.

GetHashCode()

Serves as the default hash function.

(Inherited from Object)
GetType()

Gets the Type of the current instance.

(Inherited from Object)
GetWriter()

Gets the underlying unmanaged symbol writer.

Initialize(IntPtr, String, Boolean)

Sets the metadata emitter interface to associate with this writer.

InitWriter(Boolean)

Initializes the symbol writer. This method should not be called directly; it is called by the constructor.

MemberwiseClone()

Creates a shallow copy of the current Object.

(Inherited from Object)
OpenMethod(SymbolToken)

Opens a method in which to place symbol information.

OpenNamespace(String)

Opens a new namespace.

OpenScope(Int32)

Opens a new lexical scope in the current method.

SetMethodSourceRange(ISymbolDocumentWriter, Int32, Int32, ISymbolDocumentWriter, Int32, Int32)

Throws a NotSupportedException in all cases.

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 ISymUnmanagedWriter Interface (the corresponding unmanaged API) that a managed SymWriter uses to emit symbols.

SetUserEntryPoint(SymbolToken)

Identifies the user-defined method as the entry point for the current module.

ToString()

Returns a string that represents the current object.

(Inherited from Object)
UsingNamespace(String)

Specifies that the given, fully qualified namespace name is used within the open lexical scope.

Applies to