diff options
author | OJ Reeves <oj@buffered.io> | 2010-02-03 21:56:30 +1000 |
---|---|---|
committer | OJ Reeves <oj@buffered.io> | 2010-02-03 21:56:30 +1000 |
commit | 6c359a08cde153f53cb735a134d8bedf1a99919b (patch) | |
tree | 61289898991ef2cc2e204e1bbffe939f9d7e6639 /priv/templates/simplefsm.erl | |
parent | 2734f2bcc2ece0256467bf527c14bf4dab7a7e67 (diff) |
Added 3 new templates:
- simplefsm - Basic shell of a gen_fsm module
- simplesrv - Basic shell of a gen_server module
- simplemod - Basic shell of a module along with an associated test module.
Diffstat (limited to 'priv/templates/simplefsm.erl')
-rw-r--r-- | priv/templates/simplefsm.erl | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/priv/templates/simplefsm.erl b/priv/templates/simplefsm.erl new file mode 100644 index 0000000..039532c --- /dev/null +++ b/priv/templates/simplefsm.erl @@ -0,0 +1,55 @@ +-module({{fsmid}}). +-behaviour(gen_fsm). +-define(SERVER, ?MODULE). + +%% ------------------------------------------------------------------ +%% API Function Exports +%% ------------------------------------------------------------------ + +-export([start_link/0]). + +%% ------------------------------------------------------------------ +%% gen_fsm Function Exports +%% ------------------------------------------------------------------ + +-export([init/1, state_name/2, state_name/3, handle_event/3, handle_sync_event/4, handle_info/3, terminate/3, code_change/4]). + +%% ------------------------------------------------------------------ +%% API Function Definitions +%% ------------------------------------------------------------------ + +start_link() -> + gen_fsm:start_link({local, ?SERVER}, ?MODULE, [], []). + +%% ------------------------------------------------------------------ +%% gen_fsm Function Definitions +%% ------------------------------------------------------------------ + +init(_Args) -> + {ok, initial_state_name, initial_state}. + +state_name(_Event, State) -> + {next_state, state_name, State}. + +state_name(_Event, _From, State) -> + {reply, ok, state_name, State}. + +handle_event(_Event, StateName, State) -> + {next_state, StateName, State}. + +handle_sync_event(_Event, _From, StateName, State) -> + {reply, ok, StateName, State}. + +handle_info(_Info, StateName, State) -> + {next_state, StateName, State}. + +terminate(_Reason, _StateName, _State) -> + ok. + +code_change(_OldVsn, StateName, State, _Extra) -> + {ok, StateName, State}. + +%% ------------------------------------------------------------------ +%% Internal Function Definitions +%% ------------------------------------------------------------------ + |