libSmalldb
v2.0.2
|
Smalldb State Machine Definition – a non-deterministic persistent finite automaton.
The state machine consists of states, actions and transitions. A transition has one source state and many target states. Actions group transitions of the same name; an action name is an input symbol of the machine.
Public Member Functions | |
__construct (string $machineType, int $mtime, array $states, array $actions, array $transitions, array $properties, array $errors, ?string $referenceClass=null, ?string $transitionsClass=null, ?string $repositoryClass=null, array $extensions=[]) | |
StateMachineDefinition constructor. More... | |
getMachineType () | |
getMTime () | |
getStates () | |
getState (string $name) | |
getActions () | |
getAction (string $name) | |
getTransitions () | |
getTransition ($action, $sourceState) | |
getProperties () | |
getProperty (string $name) | |
getGraph () | |
hasErrors () | |
getErrors () | |
getReferenceClass () | |
getTransitionsClass () | |
getRepositoryClass () | |
findReachableStates (StateDefinition $initialState=null) | |
jsonSerialize () | |
hasExtension (string $extensionClassName) | |
Return true if an extension of given type is defined for this element. More... | |
getExtension (string $extensionClassName) | |
Get an extension of given type. More... | |
findExtension (string $extensionClassName) | |
Get an extension of given type. More... | |
getExtensionClassNames () | |
Get a list of existing extensions. More... | |
__construct | ( | string | $machineType, |
int | $mtime, | ||
array | $states, | ||
array | $actions, | ||
array | $transitions, | ||
array | $properties, | ||
array | $errors, | ||
?string | $referenceClass = null , |
||
?string | $transitionsClass = null , |
||
?string | $repositoryClass = null , |
||
array | $extensions = [] |
||
) |
StateMachineDefinition constructor.
string | $machineType | |
int | $mtime | |
StateDefinition[] | $states | |
ActionDefinition[] | $actions | |
TransitionDefinition[] | $transitions | |
array | $properties | |
DefinitionErrorInterface[] | $errors | |
string | null | $referenceClass | |
string | null | $transitionsClass | |
string | null | $repositoryClass | |
ExtensionInterface[] | $extensions |
getMachineType | ( | ) |
getMTime | ( | ) |
getStates | ( | ) |
getState | ( | string | $name | ) |
getActions | ( | ) |
getAction | ( | string | $name | ) |
getTransitions | ( | ) |
getTransition | ( | $action, | |
$sourceState | |||
) |
string | ActionDefinition | $action | |
string | StateDefinition | $sourceState |
getProperties | ( | ) |
getProperty | ( | string | $name | ) |
getGraph | ( | ) |
hasErrors | ( | ) |
getErrors | ( | ) |
getReferenceClass | ( | ) |
getTransitionsClass | ( | ) |
getRepositoryClass | ( | ) |
findReachableStates | ( | StateDefinition | $initialState = null | ) |
jsonSerialize | ( | ) |
|
inherited |
Return true if an extension of given type is defined for this element.
|
inherited |
Get an extension of given type.
Throws UndefinedExtensionException if the extension is not found.
It would be nice to write getExtension<T>(): T ...
class-string<ExtensionInterface> | $extensionClassName |
|
inherited |
Get an extension of given type.
Just like getExtension(), but returns null if the extension is not found.
It would be nice to write getExtension<T>(): T ...
class-string<ExtensionInterface> | $extensionClassName |
|
inherited |
Get a list of existing extensions.