value = $value; } public function compare(SortableInterface $obj, int $order = SortOrder::ASC) : bool { return $order === SortOrder::ASC ? $this->value > $obj->value : $this->value < $obj->value; } public function getValue() { return $this->value; } public static function max(array $list) { $values = []; foreach ($list as $element) { $values[] = $element->value; } return \max($values); } public static function min(array $list) { $values = []; foreach ($list as $element) { $values[] = $element->value; } return \min($values); } }