Module StateMachine
This module contains the STATEMACHINE class.
This development is based on a state machine implementation made by Conroy Kyle.
The state machine can be found here: https://github.com/kyleconroy/lua-state-machine
I've taken the development and enhanced it to make the state machine hierarchical... It is a fantastic development, this module.
1) Workflow#STATEMACHINE class, extends Base#BASE
1.1) Add or remove objects from the STATEMACHINE
Global(s)
| STATEMACHINE | |
| STATEMACHINE_PROCESS | |
| STATEMACHINE_TASK |
Type STATEMACHINE
Type STATEMACHINE_PROCESS
| STATEMACHINE_PROCESS.ClassName | |
| STATEMACHINE_PROCESS:New(Process, options) |
Creates a new STATEMACHINE_PROCESS object. |
| STATEMACHINE_PROCESS.Process | |
| STATEMACHINE_PROCESS:_call_handler(handler, params) |
Type STATEMACHINE_TASK
| STATEMACHINE_TASK.ClassName | |
| STATEMACHINE_TASK:New(Task, options) |
Creates a new STATEMACHINE_TASK object. |
| STATEMACHINE_TASK.Task | |
| STATEMACHINE_TASK:_call_handler(handler, params) |
Global(s)
Type StateMachine
Type STATEMACHINE
STATEMACHINE class
Field(s)
- #string STATEMACHINE.ClassName
- STATEMACHINE:New(options)
-
Creates a new STATEMACHINE object.
Parameter
-
options:
Return value
-
- STATEMACHINE:_add_to_map(map, event)
-
Parameters
-
map: -
event:
-
- STATEMACHINE:_call_handler(handler, params)
-
Parameters
-
handler: -
params:
-
- STATEMACHINE:_create_transition(name)
-
Parameter
-
name:
-
- STATEMACHINE:_gosub(parentstate, parentevent)
-
Parameters
-
parentstate: -
parentevent:
-
- STATEMACHINE:_isendstate(state)
-
Parameter
-
state:
-
- STATEMACHINE:_submap(subs, sub, name)
-
Parameters
-
subs: -
sub: -
name:
-
- STATEMACHINE:can(e)
-
Parameter
-
e:
-
- STATEMACHINE:cannot(e)
-
Parameter
-
e:
-
- STATEMACHINE:is(state)
-
Parameter
-
state:
-
- STATEMACHINE:todot(filename)
-
Parameter
-
filename:
-
Type STATEMACHINE_PROCESS
STATEMACHINE_PROCESS class
Field(s)
- #string STATEMACHINE_PROCESS.ClassName
- STATEMACHINE_PROCESS:New(Process, options)
-
Creates a new STATEMACHINE_PROCESS object.
Parameters
-
Process: -
options:
Return value
-
- STATEMACHINE_PROCESS:_call_handler(handler, params)
-
Parameters
-
handler: -
params:
-
Type STATEMACHINE_TASK
STATEMACHINE_TASK class
Field(s)
- #string STATEMACHINE_TASK.ClassName
- STATEMACHINE_TASK:New(Task, options)
-
Creates a new STATEMACHINE_TASK object.
Parameters
-
Task: -
options:
Return value
-
- STATEMACHINE_TASK:_call_handler(handler, params)
-
Parameters
-
handler: -
params:
-