avoid-nested-records
added in: 1.5.0
style
Dart 3.0Warns when a record type declaration contains a nested record type declaration.
Use acceptable-level
configuration, if you want to set the acceptable nesting level (default is 2
).
⚙️ Config example
dart_code_metrics:
...
rules:
...
- avoid-nested-records:
acceptable-level: 2
Example
❌ Bad:
typedef NullableRecord = ((({String str, Future<void> hello}),),); // LINT
(int, (int, (int,))) triple() => (...); // LINT
(int, (int, (int, (int,)))) quadruple() => (...); // LINT
✅ Good:
typedef NullableRecord = ({String str, Future<void> hello});
(int, int, int) triple() => (...);
(int, int, int, int) quadruple() => (...);