AuthoringSink.MatchPair, méthode
Appelé pour ajouter les étendues les deux éléments couplés dans une liste interne.
Espace de noms : Microsoft.VisualStudio.Package
Assemblys : Microsoft.VisualStudio.Package.LanguageService.9.0 (dans Microsoft.VisualStudio.Package.LanguageService.9.0.dll)
Microsoft.VisualStudio.Package.LanguageService (dans Microsoft.VisualStudio.Package.LanguageService.dll)
Microsoft.VisualStudio.Package.LanguageService.11.0 (dans Microsoft.VisualStudio.Package.LanguageService.11.0.dll)
Microsoft.VisualStudio.Package.LanguageService.10.0 (dans Microsoft.VisualStudio.Package.LanguageService.10.0.dll)
Syntaxe
'Déclaration
Public Overridable Sub MatchPair ( _
span As TextSpan, _
endContext As TextSpan, _
priority As Integer _
)
public virtual void MatchPair(
TextSpan span,
TextSpan endContext,
int priority
)
Paramètres
- span
Type : Microsoft.VisualStudio.TextManager.Interop.TextSpan
[in] l'objet d'TextSpan décrivant démarrer a couplé l'élément.
- endContext
Type : Microsoft.VisualStudio.TextManager.Interop.TextSpan
[in] l'objet d'TextSpan décrivant la fin a couplé l'élément.
- priority
Type : System.Int32
[in] valeur de priorité d'Un utilisée pour trier chevaucher des paires.
Remarques
Si la propriété d'BraceMatching retourne true, cette méthode est appelée pour ajouter les deux étendues à une liste interne qui décrit des paires de correspondance, triée dans la commande élevée (en général le plus élevée pour chevaucher des victoires de paires) qui est utilisée pour chevaucher couple.Quelques exemples des paires de correspondance sont « (", ") » ; « { », « } » ; et « < », « > ».
Une méthode où correspondant à la superposition de paires consiste à utiliser l'accolade imbriquée.Dans ce modèle, la paire le plus profond d'accolade a la priorité la plus élevée et la paire extérieure a la priorité la plus basse.
La méthode de base normalise les étendues puis les détermine si les étendues comprennent le point de départ de l'opération d'analyse (comme donné par les propriétés d'Line et d'Column).Si l'un ou l'autre de l'étendue comprend le point de départ, les étendues sont des premières ajoutées à une liste interne d'étendues et sont puis fournies avec dans une structure d'BraceMatch ajoutée à une autre liste interne, triée dans la commande de priorité.La liste interne est un tableau de structures d'BraceMatch et est appelée Braces.Voyez l'exemple ci-dessous pour la définition interne de la structure d'BraceMatch.
Exemples
La structure suivante est utilisée par l'infrastructure managée de package pour contenir une paire classée par priorité d'éléments de langage (par exemple, « (" et ") »).
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;
}
}
Sécurité .NET Framework
- Confiance totale accordée à l'appelant immédiat. Ce membre ne peut pas être utilisé par du code d'un niveau de confiance partiel. Pour plus d'informations, consultez Utilisation de bibliothèques à partir de code d'un niveau de confiance partiel.