MovementEngine
in package
FinalYes
Executes flows against quantity state via a pluggable solver.
Table of Contents
Properties
Methods
- __construct() : mixed
- Create one movement engine around the provided execution solver.
- execute() : MovementResult
- Execute one flow for one subject.
Properties
$solver read-only
private
ExecutionSolverInterface
$solver
= new GreedyFlowSolver()
Methods
__construct()
Create one movement engine around the provided execution solver.
public
__construct([ExecutionSolverInterface $solver = new GreedyFlowSolver() ]) : mixed
Parameters
- $solver : ExecutionSolverInterface = new GreedyFlowSolver()
execute()
Execute one flow for one subject.
public
execute(QuantityState $inventory, SlotSpace $space, string|Flow $cascade, int|float $quantity[, mixed $subject = null ][, array<string|int, mixed> $appContext = [] ][, array<string, scalar|null> $params = [] ]) : MovementResult
Parameters
- $inventory : QuantityState
- $space : SlotSpace
- $cascade : string|Flow
- $quantity : int|float
- $subject : mixed = null
- $appContext : array<string|int, mixed> = []
- $params : array<string, scalar|null> = []