Condividi tramite


Metodo AuthoringSink.MatchPair

Chiamato per aggiungere gli intervalli dei due elementi creati in un elenco interno.

Spazio dei nomi:  Microsoft.VisualStudio.Package
Assembly:   Microsoft.VisualStudio.Package.LanguageService.9.0 (in Microsoft.VisualStudio.Package.LanguageService.9.0.dll)
  Microsoft.VisualStudio.Package.LanguageService (in Microsoft.VisualStudio.Package.LanguageService.dll)
  Microsoft.VisualStudio.Package.LanguageService.11.0 (in Microsoft.VisualStudio.Package.LanguageService.11.0.dll)
  Microsoft.VisualStudio.Package.LanguageService.10.0 (in Microsoft.VisualStudio.Package.LanguageService.10.0.dll)

Sintassi

'Dichiarazione
Public Overridable Sub MatchPair ( _
    span As TextSpan, _
    endContext As TextSpan, _
    priority As Integer _
)
public virtual void MatchPair(
    TextSpan span,
    TextSpan endContext,
    int priority
)

Parametri

  • priority
    Tipo: System.Int32
    [in] Un valore di priorità utilizzato alle coppie sovrapposizione di ordinamento.

Note

se BraceMatching la proprietà restituisce true, questo metodo viene chiamato per aggiungere le due intervalli in un elenco interno che descrive la corrispondenza delle coppie, ordinato in ordine di priorità (in genere la massima priorità per le vittorie sovrapposizione delle coppie) utilizzato per far coincidere coppie.Alcuni esempi di coppie di corrispondenza sono “(", ")„; “{„, “}„; e “<„, “>„.

Un modo in cui corrispondente alla sovrapposizione delle coppie con le parentesi graffe annidate.In questa combinazione, la coppia più interna delle parentesi graffe ha la priorità più elevata e la coppia più esterna con la priorità più bassa.

Il metodo di base normalizza gli intervalli e quindi determina se gli intervalli includono il punto iniziale di analisi dell'operazione (come fornito da Line e Column proprietà).Se qualsiasi intervallo include il punto iniziale, gli intervalli innanzitutto vengono aggiunti a un elenco interno di intervalli quindi vengono inclusi in un oggetto BraceMatch struttura aggiunta a un altro elenco interno, ordinato in ordine di priorità.l'elenco interno è una matrice di BraceMatch le strutture e viene chiamata Braces.Vedere l'esempio di seguito per la definizione interna di BraceMatch struttura.

Esempi

La struttura seguente viene utilizzata dal framework gestito del pacchetto per contenere una coppia classificata in ordine di priorità gli elementi del linguaggio, ad esempio “(" e ")„).

internal class BraceMatch
{
    internal TextSpan a;
    internal TextSpan b;
    internal int priority;

    public BraceMatch(TextSpan a, TextSpan b, int priority)
    {
        this.a = a;
        this.b = b;
        this.priority = priority;
    }
}

Sicurezza di .NET Framework

Vedere anche

Riferimenti

AuthoringSink Classe

Spazio dei nomi Microsoft.VisualStudio.Package