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;
 | 
						|
}
 |