avoid-multiple-declarations-per-line

Same as avoid_multiple_declarations_per_line in Dart lints

Group
Style
Path
lint/style/avoid-multiple-declarations-per-line
Default
On (recommended)
Origin
Dart lints
Rule
92 of 512
recommended

Flags a variable declaration that declares more than one variable.

Declaring each variable on its own line makes each one easier to find, document, and change. Top-level variables, fields, and local variables are checked; the second declared name is reported:

var a = 1, b = 2;            // `b` flagged
int x, y;                    // `y` flagged
for (var i = 0, j = 1; ;) {} // fine: loop initializers are exempt

Invalid

example.dartdart
var a = 1, b = 2;

int x = 0, y = 0, z = 0;

class C {
  final int p = 1, q = 2;
  static String? s, t;
}

void f() {
  var i = 0, j = 1;
  late final String first,
      second;
  first = 'a';
  second = 'b';
  print('$i $j $first $second');
}
Multiple variables declared on a single line.
1var a = 1, b = 2;
Multiple variables declared on a single line.
2
3int x = 0, y = 0, z = 0;
Multiple variables declared on a single line.
5class C {
6 final int p = 1, q = 2;
Multiple variables declared on a single line.
6 final int p = 1, q = 2;
7 static String? s, t;
Multiple variables declared on a single line.
10void f() {
11 var i = 0, j = 1;
Multiple variables declared on a single line.
12 late final String first,
13 second;

Valid

example.dartdart
var a = 1;
var b = 2;

class C {
  final int p = 1;
  final int q = 2;
}

void f() {
  var i = 0;
  var j = 1;
  // Loop initializers may declare several variables.
  for (var k = 0, l = 10; k < l; k++, l--) {
    print('$i $j $k $l');
  }
  final (x, y) = (1, 2);
  print('$x $y');
}

Configure avoid-multiple-declarations-per-line

Set its severity in falcon.json. See the configuration guide.

falcon.jsonjson
{
  "linter": {
    "rules": {
      "style": {
        "avoid-multiple-declarations-per-line": "error"
      }
    }
  }
}

Or silence one occurrence with a suppression comment; the reason is required.

example.dartdart
// falcon-ignore lint/style/avoid-multiple-declarations-per-line: <reason>