prefer-immutable-selector-value
Warns when a Selector
return a mutable value.
Returning a mutable value can lead to skipped or incorrect rebuilds. Instead, always return an immutable value.
Example
❌ Bad:
// LINT: Prefer returning immutable values from selector to avoid skipped or incorrect rebuilds.
Selector(selector: (context, object) => SomeClass());
// LINT: Prefer returning immutable values from selector to avoid skipped or incorrect rebuilds.
Selector2(selector: (context, object, another) => SomeClass());
class SomeClass {}
✅ Good:
Selector(selector: (context, object) => SomeClass());
Selector2(selector: (context, object, another) => SomeClass());
class SomeClass {
int get hashCode => ...;
bool operator ==(Object other) => ...;
}