Ler em inglês

Compartilhar via


Usar expressão de coleção para stackalloc (IDE0302)

Propriedade Valor
ID da regra IDE0302
Título Usar expressão de coleção para stackalloc
Categoria Estilo
Subcategoria Regras de idioma (preferências no nível da expressão)
idiomas aplicáveis C# 12+
Opções dotnet_style_prefer_collection_expression

Visão geral

Essa regra é semelhante a Usar expressão de coleção para matriz (IDE0300), exceto que procura stackalloc em vez de matrizes. Como IDE0300, ele oferece a conversão do código para usar uma expressão de coleção. Por exemplo, stackalloc int[] { ... } e stackalloc [] { ... } são simplificados para [...].

Observação

Essa regra só está disponível no .NET 8 e versões posteriores em que os valores podem ser preservados na pilha.

Opções

As opções especificam o comportamento que você deseja que a regra imponha. Para obter informações sobre como configurar opções, consulte Formato de opção.

dotnet_style_prefer_collection_expression

Propriedade Valor Descrição
nome da opção dotnet_style_prefer_collection_expression
Valores das opções true | when_types_exactly_match Prefira usar expressões de coleção.
false | never Desabilita a regra.
valor de opção padrão true

Exemplo

C#
// Code with violations.
ReadOnlySpan<int> x = stackalloc int[] { 1, 2, 3 };

// Fixed code.
ReadOnlySpan<int> x = [1, 2, 3];

Suprimir um aviso

Se você quiser suprimir apenas uma única violação, adicione diretivas de pré-processador ao arquivo fonte para desabilitar a regra e, em seguida, reabilitá-la.

C#
#pragma warning disable IDE0302
// The code that's violating the rule is on this line.
#pragma warning restore IDE0302

Para desabilitar a regra de um arquivo, pasta ou projeto, defina sua severidade como none no arquivo de configuração .

ini
[*.{cs,vb}]
dotnet_diagnostic.IDE0302.severity = none

Para desabilitar todas as regras de estilo de código, defina a severidade da categoria Style para none no arquivo de configuração .

ini
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none

Para obter mais informações, consulte Como suprimir avisos de análise de código.

Consulte também