like_sealed_gen 0.6.1 copy "like_sealed_gen: ^0.6.1" to clipboard
like_sealed_gen: ^0.6.1 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);
  StateSwitchImpl(
    withSuffix: (state){
      print(state);
    },
    data: (state) {
      print(state);
    },
    state: (state) {
      print(state);
    },
  ).switchCase(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();
  }
}