like_sealed_gen 0.5.0 copy "like_sealed_gen: ^0.5.0" to clipboard
like_sealed_gen: ^0.5.0 copied to clipboard

outdated

create

example/lib/main.dart

import 'package:example/state.dart';

main() {
  State state = States.data("Nice");

  final result = SampleBloc().add(state);

  print(result);
}

class SampleBloc with StateSwitch<String?> {
  String add(State state) {
    return switchCase(state) ?? "";
  }

  @override
  String? onData(StateData data) {
    return data.message;
  }

  @override
  String? onInit(StateInit init) {
    return init.toString();
  }

  @override
  String? onNamed(StateNamed named) {
    return named.toString();
  }

  @override
  String? onOnlyNamed(StateOnlyNamed onlyNamed) {
    return onlyNamed.toString();
  }

  @override
  String? onOptional(StateOptional optional) {
    return optional.toString();
  }

  @override
  String? onProgress(StateProgress progress) {
    return progress.toString();
  }

  @override
  String? onWithDefault(StateWithDefault withDefault) {
    return withDefault.toString();
  }

  @override
  String? onWithSuffix(StateWithSuffix withSuffix) {
    return withSuffix.toString();
  }
}