2 declare(strict_types = 1);
55 foreach ($this->targets as $target) {
57 throw new \LogicException(
'Expected DataSet', 1578045577);
59 $target = $target->withMergedVariables($this->variables);
63 }
catch (SkipException $exception) {
73 foreach ($applicables as $index => $applicable) {
82 foreach ($candidate->filter(VariablesContext::class) as $variableContext) {
87 } elseif ($candidate instanceof VariablesContext) {
90 if ($candidate->matchesRequiredApplicables(...$targetApplicables)) {
94 throw new SkipException(
'skip', 1578162207);
121 return array_combine($keys, $values);
126 $target = clone $this;
133 $target = clone $this;
134 $target->applicableSets[] = $applicables;
140 $applicableItems = array_values($applicableItems);
141 $applicableItems = array_merge($applicableItems, $applicables);
155 $targetApplicables = $applicables;
157 if (!in_array($targetApplicable, $targetApplicables,
true)) {
158 $targetApplicables[] = $targetApplicable;
161 return $targetApplicables;