Dart Analyze logoDart Analyze/
DRT-W1318

A map pattern must have at least one entryDRT-W1318

Major severityMajor
Bug Risk categoryBug Risk

The analyzer produces this diagnostic when a map pattern is empty.

Example

The following code produces this diagnostic because the map pattern is empty:

void f(Map<int, String> x) {
  if (x case {}) {}
}

Common fixes

If the pattern should match any map, then replace it with an object pattern:

void f(Map<int, String> x) {
  if (x case Map()) {}
}

If the pattern should only match an empty map, then check the length in the pattern:

void f(Map<int, String> x) {
  if (x case Map(isEmpty: true)) {}
}