Skip to main content

avoid-equal-expressions

added in: 1.3.0
🛠
preset: recommended

Warns when both sides of a binary expression are the same.

Example

❌ Bad:

// LINT
if (_isOneShifting() && _isOneShifting()) {
return;
}

// LINT
if (num == anotherNum && num == anotherNum) {
return;
}

// LINT
if (num == anotherNum || num == anotherNum) {
return;
}

final val = num << num; // LINT
final val = num >> num; // LINT
final val = 5 / 5; // LINT
final val = 10 - 10; // LINT

✅ Good:

if (_isOneShifting() && _anotherOne()) {
return;
}

if (num == anotherNum) {
return;
}

if (num == anotherNum) {
return;
}

final val = num << anotherNum;
final val = num >> anotherNum;