Partager via


DirectiveProcessor.IsDirectiveSupported, méthode

Une fois substituée dans une classe dérivée, détermine si le processeur de directive prend en charge la directive spécifiée.

Espace de noms :  Microsoft.VisualStudio.TextTemplating
Assembly :  Microsoft.VisualStudio.TextTemplating.12.0 (dans Microsoft.VisualStudio.TextTemplating.12.0.dll)

Syntaxe

'Déclaration
Public MustOverride Function IsDirectiveSupported ( _
    directiveName As String _
) As Boolean
public abstract bool IsDirectiveSupported(
    string directiveName
)
public:
virtual bool IsDirectiveSupported(
    String^ directiveName
) abstract
abstract IsDirectiveSupported : 
        directiveName:string -> bool
public abstract function IsDirectiveSupported(
    directiveName : String
) : boolean

Paramètres

  • directiveName
    Type : String

    Nom de la directive.

Valeur de retour

Type : Boolean
true si la directive est prise en charge par le processeur ; sinon, false.

Implémentations

IDirectiveProcessor.IsDirectiveSupported(String)

Notes

Un processeur de directive peut prendre en charge de nombreuses directives différentes.

Actuellement, IsDirectiveSupported n'affecte pas la machine à états du processeur de directive. Cela signifie que si vous retournez la valeur false à partir de cette méthode, les autres méthodes sont quand même appelées. Idéalement, si une directive n'est pas prise en charge, la machine à états doit s'arrêter. Dans le futur, le moteur peut être modifié pour se terminer lorsque cette méthode retourne la valeur false.

Exemples

L'exemple de code suivant affiche une implémentation possible pour un processeur de directive personnalisé. Cet exemple de code fait partie d'un exemple plus complet fourni pour la classe DirectiveProcessor.

public override bool IsDirectiveSupported(string directiveName)
{
    if (string.Compare(directiveName, "CoolDirective", StringComparison.OrdinalIgnoreCase) == 0)
    {
        return true;
    }
    if (string.Compare(directiveName, "SuperCoolDirective", StringComparison.OrdinalIgnoreCase) == 0)
    {
        return true;
    }
    return false;
}
Public Overrides Function IsDirectiveSupported(ByVal directiveName As String) As Boolean

    If String.Compare(directiveName, "CoolDirective", StringComparison.OrdinalIgnoreCase) = 0 Then
        Return True
    End If

    If String.Compare(directiveName, "SuperCoolDirective", StringComparison.OrdinalIgnoreCase) = 0 Then
        Return True
    End If

    Return False
End Function

Sécurité .NET Framework

Voir aussi

Référence

DirectiveProcessor Classe

Microsoft.VisualStudio.TextTemplating, espace de noms

ProcessDirective

Autres ressources

Création de processeurs de directives de modèles de texte T4 personnalisés

Procédure pas à pas : création d'un processeur de directive personnalisé