public interface ISymbolWriter
|
| Close | Closes ISymbolWriter and commits the symbols to the symbol store. |
| CloseMethod | Closes the current method. |
| CloseNamespace | Closes the most recent namespace. |
| CloseScope | Closes the current lexical scope. |
| DefineDocument | Defines a source document. |
| DefineField | Defines a field in a type or a global field. |
| DefineGlobalVariable | Defines a single global variable. |
| DefineLocalVariable | Defines a single variable in the current lexical scope. |
| DefineParameter | 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 | Defines a group of sequence points within the current method. |
| Initialize | Sets the metadata emitter interface to associate with a writer. |
| OpenMethod | Opens a method to place symbol information into. |
| OpenNamespace | Opens a new namespace. |
| OpenScope | Opens a new lexical scope in the current method. |
| SetMethodSourceRange | Specifies the true start and end of a method within a source file. Use ISymbolWriter.SetMethodSourceRange to specify the extent of a method, independent of the sequence points that exist within the method. |
| SetScopeRange | Defines the offset range for the specified lexical scope. |
| SetSymAttribute | Defines an attribute when given the attribute name and the attribute value. |
| SetUnderlyingWriter | Sets the underlying ISymUnmanagedWriter (the corresponding unmanaged API) that a managed ISymbolWriter uses to emit symbols. |
| SetUserEntryPoint | Identifies the user-defined method as the entry point for the current module. |
| UsingNamespace | Specifies that the given, fully-qualified namespace name is used within the open lexical scope. |
void Close(); |
void CloseMethod(); |
void CloseNamespace(); |
void CloseScope( |
endOffset
ISymbolDocumentWriter DefineDocument( |
url
language
languageVendor
documentType
void DefineField( |
parent
name
attributes
signature
addrKind
addr1
addr2
addr3
void DefineGlobalVariable( |
name
attributes
signature
addrKind
addr1
addr2
addr3
void DefineLocalVariable( |
name
attributes
signature
addrKind
addr1
addr2
addr3
startOffset
endOffset
You can call ISymbolWriter.DefineLocalVariable multiple times for a variable of the same name that occurs multiple times in different offset ranges throughout a scope. (In this case, start and end offsets must not overlap.)
void DefineParameter( |
name
attributes
sequence
addrKind
addr1
addr2
addr3
void DefineSequencePoints( |
document
offsets
lines
columns
endLines
endColumns
emitter
filename
fFullBuild
void OpenMethod( |
method
void OpenNamespace( |
name
startOffset
Scope identifiers are only valid in the current method.
void SetMethodSourceRange( |
startDoc
startLine
startColumn
endDoc
endLine
endColumn
scopeID
startOffset
endOffset
void SetSymAttribute( |
parent
name
data
void SetUnderlyingWriter( |
underlyingWriter
void SetUserEntryPoint( |
entryMethod
void UsingNamespace( |
fullName