17 lines
424 B
PHP
17 lines
424 B
PHP
|
<?php
|
||
|
namespace nur\data\flow;
|
||
|
|
||
|
/**
|
||
|
* Interface IStateMachine: interface pour une machine à état
|
||
|
*/
|
||
|
interface IStateMachine {
|
||
|
/** obtenir l'état courant */
|
||
|
function get_current_state(): array;
|
||
|
|
||
|
/** obtenir la liste des actions possible à partir de l'état courant */
|
||
|
function get_next_actions(): array;
|
||
|
|
||
|
/** faire l'action spécifiée */
|
||
|
function perform_action(string $action, ?array $data=null): void;
|
||
|
}
|