duplicate_ rest_ element_ in_ pattern
Details about the 'duplicate_rest_element_in_pattern' diagnostic produced by the Dart analyzer.
At most one rest element is allowed in a list or map pattern.
Description
#The analyzer produces this diagnostic when there's more than one rest pattern in either a list or map pattern. A rest pattern will capture any values unmatched by other subpatterns, making subsequent rest patterns unnecessary because there's nothing left to capture.
Example
#The following code produces this diagnostic because there are two rest patterns in the list pattern:
void f(List<int> x) {
if (x case [0, ..., ...]) {}
}
Common fixes
#Remove all but one of the rest patterns:
void f(List<int> x) {
if (x case [0, ...]) {}
}
Unless stated otherwise, the documentation on this site reflects Dart 3.10.3. Report an issue.