SlotFlow API Documentation

GreedyFlowSolver
in package
implements ExecutionSolverInterface uses ResolvesFlowParameters

FinalYes

Executes movement flows directly with greedy semantics.

Tags
psalm-import-type

TSlotPattern from SlotSpace

Table of Contents

Interfaces

ExecutionSolverInterface
Executes one flow against one quantity state.

Methods

execute()  : MovementResult
Execute one resolved flow against one quantity state.
resolveStringParameter()  : string
Resolve a single parameterized string using the provided scalar params.
allocateEdges()  : array<int, AllocationDecision>
applyMove()  : MovementEvent
filterEdges()  : array<int, MovementEdge>
limitMovable()  : int|float
orderEdges()  : array<int, MovementEdge>
resolveMoveEdges()  : array<int, MovementEdge>
resolvePatternParameters()  : string|array<string|int, mixed>|null
resolveStringParams()  : array<string, string>

Methods

execute()

Execute one resolved flow against one quantity state.

public execute(QuantityState $state, SlotSpace $space, Flow $flow, int|float $quantity[, mixed $subject = null ][, array<string|int, mixed> $appContext = [] ][, array<string, scalar|null> $params = [] ]) : MovementResult
Parameters
$state : QuantityState
$space : SlotSpace
$flow : Flow
$quantity : int|float
$subject : mixed = null
$appContext : array<string|int, mixed> = []
$params : array<string, scalar|null> = []
Attributes
#[Override]
Return values
MovementResult

resolveStringParameter()

Resolve a single parameterized string using the provided scalar params.

protected resolveStringParameter(string $value, array<string, string> $params) : string
Parameters
$value : string
$params : array<string, string>
Return values
string

limitMovable()

private limitMovable(QuantityState $state, MovementEdge $edge, int|float $requested, int|float $quantity, FlowStep $step, mixed $subject, array<string|int, mixed> $context) : int|float
Parameters
$state : QuantityState
$edge : MovementEdge
$requested : int|float
$quantity : int|float
$step : FlowStep
$subject : mixed
$context : array<string|int, mixed>
Return values
int|float

resolvePatternParameters()

private resolvePatternParameters(Slot|string|array<string|int, mixed>|null $pattern, array<string|int, mixed> $context) : string|array<string|int, mixed>|null
Parameters
$pattern : Slot|string|array<string|int, mixed>|null
$context : array<string|int, mixed>
Tags
psalm-param

Slot|TSlotPattern $pattern

psalm-return

TSlotPattern

Return values
string|array<string|int, mixed>|null

resolveStringParams()

private resolveStringParams(array<string|int, mixed> $context) : array<string, string>
Parameters
$context : array<string|int, mixed>
Return values
array<string, string>

        
On this page

Search results