kbrw / exfsm

Simple elixir library to define a static FSM.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ExFSM

Build Status

Simple elixir library to define composable FSM as function (not related at all with :gen_fsm, no state/process management).

  • define FSM with handler modules defining each transition as a simple function but using a macro deftrans which creates a function fsm returning the fsm transition map for this handler module.
  • deftrans has the same semantic as erlang in memory FSM gen_fsm
  • combine together multiple fsm handlers to create a "meta" FSM.
  • send event with the function event which simply find the right handler, execute the handler function.

Usage

See in in code documentation

CONTRIBUTING

Hi, and thank you for wanting to contribute. Please refer to the centralized informations available at: https://github.com/kbrw\#contributing

About

Simple elixir library to define a static FSM.

License:MIT License


Languages

Language:Elixir 100.0%