prefer-bloc-state-suffix

Group
Style
Path
lint/style/prefer-bloc-state-suffix
Default
Off, opt in
Origin
Falcon
Domain
bloc
Rule
320 of 512
bloc

Enforce the package-confirmed Bloc convention.

Invalid

example.dartdart
import 'package:bloc/bloc.dart';
class Action {}
class Variant0 extends Action {}
class Variant1 extends Action {}
class Variant2 extends Action {}
class Variant3 extends Action {}
class Example extends Bloc<int, Action> { Example() : super(Action()); }
End Bloc state class names with `State`.
1import 'package:bloc/bloc.dart';
2class Action {}
End Bloc state class names with `State`.
2class Action {}
3class Variant0 extends Action {}
End Bloc state class names with `State`.
3class Variant0 extends Action {}
4class Variant1 extends Action {}
End Bloc state class names with `State`.
4class Variant1 extends Action {}
5class Variant2 extends Action {}
End Bloc state class names with `State`.
5class Variant2 extends Action {}
6class Variant3 extends Action {}

Valid

example.dartdart
import 'package:bloc/bloc.dart';
class ActionState {}
class Variant0State extends ActionState {}
class Variant1State extends ActionState {}
class Variant2State extends ActionState {}
class Variant3State extends ActionState {}
class Example extends Bloc<int, ActionState> { Example() : super(ActionState()); }
class Unrelated {}

Configure prefer-bloc-state-suffix

Set its severity in falcon.json. See the configuration guide.

falcon.jsonjson
{
  "linter": {
    "rules": {
      "style": {
        "prefer-bloc-state-suffix": "error"
      }
    }
  }
}

Or silence one occurrence with a suppression comment; the reason is required.

example.dartdart
// falcon-ignore lint/style/prefer-bloc-state-suffix: <reason>