Skip to main content

prefer_is_not_empty

Stable
Core
Fix available

Use isNotEmpty for Iterables and Maps.

Details

#

PREFER x.isNotEmpty to !x.isEmpty for Iterable and Map instances.

When testing whether an iterable or map is empty, prefer isNotEmpty over !isEmpty to improve code readability.

BAD:

dart
if (!sources.isEmpty) {
  process(sources);
}

GOOD:

dart
if (todo.isNotEmpty) {
  sendResults(request, todo.isEmpty);
}

Enable

#

To enable the prefer_is_not_empty rule, add prefer_is_not_empty under linter > rules in your analysis_options.yaml file:

analysis_options.yaml
yaml
linter:
  rules:
    - prefer_is_not_empty

If you're instead using the YAML map syntax to configure linter rules, add prefer_is_not_empty: true under linter > rules:

analysis_options.yaml
yaml
linter:
  rules:
    prefer_is_not_empty: true