summaryrefslogtreecommitdiff
path: root/priv/templates/simplefsm.erl
diff options
context:
space:
mode:
authorOJ Reeves <oj@buffered.io>2010-02-03 21:56:30 +1000
committerOJ Reeves <oj@buffered.io>2010-02-03 21:56:30 +1000
commit6c359a08cde153f53cb735a134d8bedf1a99919b (patch)
tree61289898991ef2cc2e204e1bbffe939f9d7e6639 /priv/templates/simplefsm.erl
parent2734f2bcc2ece0256467bf527c14bf4dab7a7e67 (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.erl55
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
+%% ------------------------------------------------------------------
+