Minor Tweak

This commit is contained in:
oleibman
2025-04-19 10:07:27 -07:00
parent 19555d6d96
commit 455c259e41
2 changed files with 6 additions and 14 deletions
@@ -132,21 +132,11 @@ class ArrayArgumentHelper
return $this->columns[$argument] === 1;
}
public function rowCountMixed(mixed $argument): int
{
return is_int($argument) ? $this->rowCount($argument) : throw new Exception('arg should be int');
}
public function rowCount(int $argument): int
{
return $this->rows[$argument];
}
public function columnCountMixed(mixed $argument): int
{
return is_int($argument) ? $this->columnCount($argument) : throw new Exception('arg should be int');
}
public function columnCount(int $argument): int
{
return $this->columns[$argument];
@@ -70,14 +70,16 @@ class ArrayArgumentProcessor
/** @var mixed[][] $matrixValues1 */
$matrixValues1 = $arguments[$matrix1];
$rows = min(array_map(self::$arrayArgumentHelper->rowCountMixed(...), [$matrix1, $matrix2]));
$columns = min(array_map(self::$arrayArgumentHelper->columnCountMixed(...), [$matrix1, $matrix2]));
/** @var non-empty-array<int> */
$matrix12 = [$matrix1, $matrix2];
$rows = min(array_map(self::$arrayArgumentHelper->rowCount(...), $matrix12));
$columns = min(array_map(self::$arrayArgumentHelper->columnCount(...), $matrix12));
if ($rows === 1) {
$rows = max(array_map(self::$arrayArgumentHelper->rowCountMixed(...), [$matrix1, $matrix2]));
$rows = max(array_map(self::$arrayArgumentHelper->rowCount(...), $matrix12));
}
if ($columns === 1) {
$columns = max(array_map(self::$arrayArgumentHelper->columnCountMixed(...), [$matrix1, $matrix2]));
$columns = max(array_map(self::$arrayArgumentHelper->columnCount(...), $matrix12));
}
$result = [];