Udostępnij za pośrednictwem


Klasa ParseRequest

Zawiera informacje na wykonanie operacji analizowania w służbie językowej.

Ten interfejs API nie jest zgodny ze specyfikacją CLS. 

Hierarchia dziedziczenia

System.Object
  Microsoft.VisualStudio.Package.ParseRequest

Przestrzeń nazw:  Microsoft.VisualStudio.Package
Zestawy:   Microsoft.VisualStudio.Package.LanguageService (w Microsoft.VisualStudio.Package.LanguageService.dll)
  Microsoft.VisualStudio.Package.LanguageService.11.0 (w Microsoft.VisualStudio.Package.LanguageService.11.0.dll)
  Microsoft.VisualStudio.Package.LanguageService.9.0 (w Microsoft.VisualStudio.Package.LanguageService.9.0.dll)
  Microsoft.VisualStudio.Package.LanguageService.10.0 (w Microsoft.VisualStudio.Package.LanguageService.10.0.dll)

Składnia

'Deklaracja
<CLSCompliantAttribute(False)> _
Public Class ParseRequest
[CLSCompliantAttribute(false)]
public class ParseRequest

Typ ParseRequest uwidacznia następujące elementy członkowskie.

Konstruktorzy

  Nazwa Opis
Metoda publiczna ParseRequest(Boolean) Inicjuje nowe wystąpienie ParseRequest klasy, aby zakończyć nici użytej do analizowania operacji tła.
Metoda publiczna ParseRequest(Int32, Int32, TokenInfo, String, String, ParseReason, IVsTextView, AuthoringSink, Boolean) Inicjuje nowe wystąpienie ParseRequest klasy.

Początek

Właściwości

  Nazwa Opis
Właściwość publiczna Callback Określa wywołania zwrotnego pełnomocnik ma być wywoływana po wykonaniu operacji analizowania.
Właściwość publiczna Col Określa przesunięcie w znakach w pierwszym wierszu, aby rozpocząć operację analizy.
Właściwość publiczna DirtySpan Określa zakres źródłowy, który uległ zmianie.
Właściwość publiczna FileName Określa nazwę pliku źródłowego, analizowany.
Właściwość publiczna IsSynchronous Pobiera lub ustawia niezależnie od tego, czy wniosek jest synchroniczna.
Właściwość publiczna Line Określa wiersz, na którym uruchomiona operacja związana.
Właściwość publiczna Reason Określa, że przyczyna analizowania operacji została uruchomiona.
Właściwość publiczna Scope Określa AuthoringScope obiekt, który jest używany do zwracania rozszerzonych informacji z przetwarzaniem operacji.
Właściwość publiczna Sink Określa AuthoringSink obiektu powinien zawierać informacje z przetwarzaniem operacji.
Właściwość publiczna Terminate Określa, czy wątek roboczy obsługi tła podczas analizowania operacji należy zakończyć.
Właściwość publiczna Text Określa tekst źródłowy, należy przeanalizować.
Właściwość publiczna Timestamp Określa sygnaturę czasową dla żądania analizy.
Właściwość publiczna TokenInfo Określa TokenInfo strukturę, która jest wypełniona wyniki analizy operacji.
Właściwość publiczna View Określa IVsTextView obiekt reprezentujący widok, który zawiera źródło, które są analizowane.

Początek

Metody

  Nazwa Opis
Metoda publiczna Equals Określa, czy określony obiekt jest równa bieżącego obiektu. (Odziedziczone z Object).
Metoda chroniona Finalize Umożliwia obiekt spróbuj zwolnić zasoby i wykonywania innych operacji oczyszczania, zanim jest odzyskane w procesie wyrzucania elementów bezużytecznych. (Odziedziczone z Object).
Metoda publiczna GetHashCode Służy jako funkcja mieszania dla określonego typu. (Odziedziczone z Object).
Metoda publiczna GetType Pobiera Type bieżącej instancji. (Odziedziczone z Object).
Metoda chroniona MemberwiseClone Tworzy kopię płytkie bieżące Object. (Odziedziczone z Object).
Metoda publiczna ToString Zwraca ciąg, który reprezentuje bieżącego obiektu. (Odziedziczone z Object).

Początek

Uwagi

Ta klasa jest używana do przekazywania informacji dotyczących danej operacji analizowania analizator składni i zwraca informacje dotyczące analizowania operacji.Źródła wykorzystywane przez parser jest dostępny jako pojedynczy blok tekstu za pomocą Text właściwości.Tekst jest przekazywany do ParseRequest konstruktora.

Uwagi dotyczące implementacji

Wszystko typowych operacji analizy potrzeb można znaleźć w tej klasie tak żadnego powodu, aby pochodnymi tej klasy powinny być.Jednakże jeśli muszą pochodzić od klasy ParseRequest klasy, musi pochodzić od klasy LanguageService klasy i zastąpić CreateParseRequest metody tworzenia wystąpienia własną wersję ParseRequest klasy.

Należy zauważyć, że jeśli usługi języka ma obsługiwać analizowania zmiennych do wyświetlenia w Autos debugowania okna i/lub Obsługa sprawdzania poprawności punkty przerwania, musi pochodzić klasy z AuthoringSink klasy i ustawić Sink właściwości w instancji ParseRequest klasy do wersji AuthoringSink klasy.Można to zrobić w CreateParseRequest metoda po ParseRequest tworzony jest obiekt.

Uwagi dotyczące wywoływania

Wystąpienie tej klasy zostało utworzone przez wywołanie do CreateParseRequest metodę w LanguageService klasy.

Nie należy próbować używać View właściwość w wątku tła: IVsTextView obiektu jest przeznaczona tylko do użytku na pierwszym planie z podstawy Source klasy.

Przykłady

Ten przykład przedstawia sposób utworzyć nową ParseRequest obiekt z niestandardowej AuthoringSink obiektu (klasy, dla którego nie jest wyświetlane).

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;
         }
    }
}

Bezpieczeństwo wątku

Wszystkie publiczne static (Shared w języku Visual Basic) elementy członkowskie tego typu są bezpieczne dla wątków. Wystąpienia elementów członkowskich nie dają gwarancji bezpieczeństwa wątków.

Zobacz też

Informacje

Przestrzeń nazw Microsoft.VisualStudio.Package