This documentation is archived and is not being maintained.

ParseReason Enumeration

Provides reasons for a parsing operation in a language service.

Namespace:  Microsoft.VisualStudio.Package
Assemblies:   Microsoft.VisualStudio.Package.LanguageService (in Microsoft.VisualStudio.Package.LanguageService.dll)
  Microsoft.VisualStudio.Package.LanguageService.9.0 (in Microsoft.VisualStudio.Package.LanguageService.9.0.dll)
  Microsoft.VisualStudio.Package.LanguageService.10.0 (in Microsoft.VisualStudio.Package.LanguageService.10.0.dll)

public enum ParseReason

Member nameDescription
NoneA placeholder value indicating that no parsing should be done.
MemberSelectParse the separator character before the current location to obtain a list of members for the class.
HighlightBracesParse to find the matching language pairs (such as "{" and "}" or "<" and ">") that enclose the given location so they and their contents can be highlighted.
MemberSelectAndHighlightBracesParse the character at the current location to complete a member selection and to highlight the matching pair to the parsed character (such as a ")" after a method name).
MatchBracesParse the language pair at the given location to finds its match.
CheckParse the entire source file, checking for errors. This pass should also create lists of matching language pairs, triplets, members, and methods.
CompleteWordParse to get the partially completed word before the current position in order to show a list of possible completions (members, arguments, methods).
DisplayMemberListParse the separator and the possible name before it, to obtain a list of members to be shown in a member completion list.
QuickInfoParse the identifier or selection at the given location to obtain type information to be shown in an IntelliSense quick info tool tip.
MethodTipParse the method name before the current position to produce a list of all overloaded method signatures that match the method name.
AutosParse the code block at the given location to obtain any expressions that might be of interest in the Autos debugging window (an expression is the name of variable or parameter that can be evaluated to produce a value).
CodeSpanParse the section of code containing the specified location to find the extent of the statement. Used in validating breakpoints.
GotoParse the identifier or expression at the specified location to obtain a possible URI of a file where the identifier is defined, declared, or referenced.

These are all the reasons a parsing operation is performed in a language service. Most reasons confine parsing to the current line and therefore are very fast, some reasons call for a more extensive parsing that can take a while and are therefore typically done on a background thread.