View Source mix finitomata.generate (Finitomata v0.29.0)
Mix task to generate the Finitomata instance scaffold.
By running mix finitomata.generate --module MyFSM one would be prompted
to enter the FSM declartion if ELIXIR_EDITOR environment variable is set,
in the same way as IEx.Helpers.open/0 does. THen the scaffold implementation
(and optionally the test for it) will be generated.
Allowed arguments
--module: :string[mandatory] the name of the module to generate, it will be prepended withOtpApp.Finitomata.--syntax: :string[optional, default::flowchart] the syntax to be used, might be:flowchart,:state_diagram, or a module name for custom implementation--timer: :integer[optional, default:false] whether to use recurrent calls in this FSM implementation--auto-terminate: :boolean[optional, default:false] whether the ending states should lead to auto-termination--listener: :string[optional, default:nil] the listener implementation--impl-for: :string[optional, default::all] what callbacks should be auto-implemented--generate-test: :boolean[optional, defaultfalse] whether the test should be generated as well
Example
mix finitomata.generate --module MyFSM --timer 1000 --auto-terminate true --generate-test true