Pular para o conteúdo principal

negative_variable_dimension

Detalhes sobre o diagnóstico 'negative_variable_dimension' produzido pelo analisador do Dart.

The variable dimension of a variable-length array must be non-negative.

Descrição

#

O analisador emite este diagnóstico em dois casos.

O primeiro é quando a dimensão variável informada em uma anotação Array.variableWithVariableDimension é negativa. A dimensão variável é o primeiro argumento da anotação.

O segundo é quando a dimensão variável informada em uma anotação Array.variableMulti é negativa. A dimensão variável é especificada no argumento variableDimension da anotação.

Para mais informações sobre FFI, consulte interoperabilidade com C usando dart:ffi.

Exemplos

#

O código a seguir gera este diagnóstico porque foi informada uma dimensão variável de -1 na anotação Array.variableWithVariableDimension:

dart
import 'dart:ffi';
​
final class MyStruct extends Struct {
  @Array.variableWithVariableDimension(-1)
  external Array<Uint8> a0;
}

O código a seguir gera este diagnóstico porque foi informada uma dimensão variável de -1 na anotação Array.variableMulti:

dart
import 'dart:ffi';
​
final class MyStruct2 extends Struct {
  @Array.variableMulti(variableDimension: -1, [1, 2])
  external Array<Array<Array<Uint8>>> a0;
}

Correções comuns

#

Altere a dimensão variável para zero (0) ou para um número positivo:

dart
import 'dart:ffi';
​
final class MyStruct extends Struct {
  @Array.variableWithVariableDimension(1)
  external Array<Uint8> a0;
}

Altere a dimensão variável para zero (0) ou para um número positivo:

dart
import 'dart:ffi';
​
final class MyStruct2 extends Struct {
  @Array.variableMulti(variableDimension: 1, [1, 2])
  external Array<Array<Array<Uint8>>> a0;
}

Encontrou essa página sem tradução ou que precisa de correção? Abra uma issue e nos ajude a manter esse site em PT-BR para ajudar pessoas como você.