nur-sery/nur_src/data/flow/IStateMachine.php

17 lines
424 B
PHP
Raw Normal View History

2023-12-18 05:52:35 +04:00
<?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;
}