Utiliser une expression de collection pour stackalloc (IDE0302)
Propriété | Value |
---|---|
Identificateur de la règle | IDE0302 |
Titre | Utiliser une expression de collection pour stackalloc |
Catégorie | Style |
Sous-catégorie | Règles de langage (préférences au niveau de l’expression) |
Langages applicables | C# 12+ |
Options | dotnet_style_prefer_collection_expression |
Vue d’ensemble
Cette règle est similaire à Utiliser l’expression de collection pour le tableau (IDE0300),, sauf qu’elle recherche stackalloc
au lieu de tableaux. Comme IDE0300, elle offre de convertir le code pour utiliser une expression de collection. Par exemple, stackalloc int[] { ... }
et stackalloc [] { ... }
sont simplifiés en [...]
.
Remarque
Cette règle est disponible uniquement dans .NET 8 et les versions ultérieures où les valeurs peuvent être conservées sur la pile.
Options
Les options spécifient le comportement que vous souhaitez que la règle applique. Pour plus d’informations sur la configuration des options, consultez Format d’option.
dotnet_style_prefer_collection_expression
Propriété | Valeur | Description |
---|---|---|
Nom d'option | dotnet_style_prefer_collection_expression | |
Valeurs d’option | true | when_types_exactly_match |
Préférez l’utilisation d’expressions de collection. |
false | never |
Il désactive la règle. | |
Valeur d’option par défaut | true |
Exemple
// Code with violations.
ReadOnlySpan<int> x = stackalloc int[] { 1, 2, 3 };
// Fixed code.
ReadOnlySpan<int> x = [1, 2, 3];
Supprimer un avertissement
Si vous voulez supprimer une seule violation, ajoutez des directives de préprocesseur à votre fichier source pour désactiver et réactiver la règle.
#pragma warning disable IDE0302
// The code that's violating the rule is on this line.
#pragma warning restore IDE0302
Pour désactiver la règle sur un fichier, un dossier ou un projet, définissez sa gravité sur none
dans le fichier de configuration.
[*.{cs,vb}]
dotnet_diagnostic.IDE0302.severity = none
Pour désactiver toutes les règles de style de code, définissez la gravité de la catégorie Style
sur none
dans le fichier de configuration.
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none
Pour plus d’informations, consultez Comment supprimer les avertissements de l’analyse de code.