rewrite from lager
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

35 lines
940 B

4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
  1. -module(crash_fsm).
  2. -behaviour(gen_fsm).
  3. -compile([{nowarn_deprecated_function, [{gen_fsm, start, 4}, {gen_fsm, sync_send_event, 2}]}]).
  4. -export([start/0, crash/0, state1/2]).
  5. %% gen_fsm callbacks
  6. -export([init/1, handle_event/3, handle_sync_event/4, handle_info/3,
  7. terminate/3, code_change/4]).
  8. -record(state, {}).
  9. start() ->
  10. gen_fsm:start({local, ?MODULE}, ?MODULE, [], []).
  11. crash() ->
  12. gen_fsm:sync_send_event(?MODULE, crash).
  13. %% gen_fsm callbacks
  14. init([]) ->
  15. {ok, state1, #state{}}.
  16. handle_event(_Event, StateName, State) ->
  17. {next_state, StateName, State}.
  18. handle_sync_event(_Event, _From, StateName, State) ->
  19. Reply = ok,
  20. {reply, Reply, StateName, State}.
  21. handle_info(_Info, StateName, State) ->
  22. {next_state, StateName, State}.
  23. terminate(_Reason, _StateName, _State) ->
  24. ok.
  25. code_change(_OldVersion, StateName, State, _Extra) ->
  26. {ok, StateName, State}.
  27. state1(_Event, S) -> {next_state, state1, S}.