ParseRequest Třída

Definice

Důležité

Toto rozhraní API neodpovídá specifikaci CLS.

Poskytuje informace pro provedení operace analýzy v rámci jazykové služby.

public ref class ParseRequest
[Windows::Foundation::Metadata::WebHostHidden]
class ParseRequest
[System.CLSCompliant(false)]
public class ParseRequest
[<System.CLSCompliant(false)>]
type ParseRequest = class
Public Class ParseRequest
Dědičnost
ParseRequest
Atributy

Příklady

Tento příklad ukazuje, jak vytvořit nový ParseRequest objekt s vlastním AuthoringSink objektem (třída, pro kterou není zobrazená).

using Microsoft.VisualStudio.Package;  
using Microsoft.VisualStudio.TextManager.Interop;  

namespace MyLanguagePackage  
{  
    class MyLanguageService : LanguageService  
    {  
        public ParseRequest CreateParseRequest(Source s,   
                                               int line,   
                                               int idx,   
                                               TokenInfo info,   
                                               string sourceText,   
                                               string fname,   
                                               ParseReason reason,   
                                               IVsTextView view)  
        {  
             ParseRequest req = new ParseRequest(line,  
                                                 idx,  
                                                 info,  
                                                 sourceText,  
                                                 fname,  
                                                 reason,  
                                                 view);  
             if (req != null)  
             {  
                  req.Sink = new MyAuthoringSink(reason, line, idx);  
             }  
             return req;  
         }  
    }  
}  

Poznámky

Tato třída se používá ke sdělování informací analyzátoru o konkrétní operaci analýzy a k vrácení informací o operaci analýzy. Zdroj používaný analyzátorem je k dispozici jako jeden blok textu prostřednictvím Text Vlastnosti. Tento text je předán ParseRequest konstruktoru.

Poznámky pro dědice

V této třídě by se mělo najít všechno, co je potřeba k tomu, aby bylo možné z této třídy odvodit jenom typické operace analýzy. Nicméně pokud potřebujete odvodit třídu z ParseRequest třídy, musíte odvodit třídu z LanguageService třídy a přepsat CreateParseRequest(Source, Int32, Int32, TokenInfo, String, String, ParseReason, IVsTextView) metodu pro vytvoření instance vlastní verze ParseRequest třídy.

Všimněte si, že pokud vaše služba jazyka bude podporovat analýzu proměnných pro zobrazení v okně Automatické ladění a/nebo podporuje ověřování zarážek, musíte z třídy odvodit třídu AuthoringSink a nastavit Sink vlastnost v instanci ParseRequest třídy na svou verzi AuthoringSink třídy. To lze provést v CreateParseRequest(Source, Int32, Int32, TokenInfo, String, String, ParseReason, IVsTextView) metodě po ParseRequest vytvoření objektu.

Poznámky pro volající

Tato třída je vytvořena voláním CreateParseRequest(Source, Int32, Int32, TokenInfo, String, String, ParseReason, IVsTextView) metody ve LanguageService třídě.

Nepokoušejte se použít View vlastnost ve vlákně na pozadí: IVsTextView objekt je určen pouze pro použití v popředí základní Source třídou.

Konstruktory

ParseRequest(Boolean)

Inicializuje novou instanci ParseRequest třídy, aby ukončila vlákno používané pro operace analýzy na pozadí.

ParseRequest(Int32, Int32, TokenInfo, String, String, ParseReason, IVsTextView, AuthoringSink, Boolean)

Inicializuje novou instanci ParseRequest třídy.

Vlastnosti

Callback

Určuje delegáta zpětného volání, který má být volán po dokončení operace analýzy.

Col

Určuje posun znaku na prvním řádku pro zahájení operace analýzy.

DirtySpan

Určuje rozsah zdroje, který se změnil.

FileName

Určuje název analyzovaného zdrojového souboru.

IsSynchronous

Získává nebo nastavuje, jestli je požadavek synchronní.

Line

Určuje řádek, na kterém má být zahájena operace analýzy.

Reason

Určuje důvod spuštění operace analýzy.

Scope

Určuje AuthoringScope objekt, který se používá k vrácení rozšířených informací z operace analýzy.

Sink

Určuje AuthoringSink objekt, který se používá k zahrnutí informací z operace analýzy.

Terminate

Určuje, zda se má ukončit zpracování operací analýzy na pozadí pracovního vlákna.

Text

Určuje zdrojový text, který se má analyzovat.

Timestamp

Určuje časové razítko pro požadavek analýzy.

TokenInfo

Určuje TokenInfo strukturu, která je vyplněna výsledky operace analýzy.

View

Určuje IVsTextView objekt představující zobrazení, které obsahuje analyzovaný zdroj.

Platí pro