sidfate/fsm

A simple finite state machine

Installs: 14

Dependents: 0

Suggesters: 0

Security: 0

Stars: 1

Watchers: 1

Forks: 0

Open Issues: 0

pkg:composer/sidfate/fsm

1.0.0 2017-06-26 08:28 UTC

This package is auto-updated.

Last update: 2025-10-26 18:48:30 UTC


README

A simple finite state machine

Install

composer require sidfate/fsm

Usage

$fsm = new Fsm([
    'init'=> 'green',
    'events'=> [
        ['name'=> 'warn', 'from'=> 'green', 'to'=> 'yellow'],
        ['name'=> 'stop', 'from'=> 'yellow', 'to'=> 'red'],
        ['name'=> 'go', 'from'=> 'red', 'to'=> 'green'],
    ]
]);

$fsm->onWarn(function () {
   echo 'I am warn';
});

echo $fsm->now();	// green
$fsm->warn();		// I am warn
echo $fsm->now();	// yellow

Document

Click me

License

MIT