compare($pivot, $order)) { ++$lo; } while ($list[$hi]->compare($pivot, $order)) { --$hi; } if ($lo >= $hi) { return $hi; } $old = $list[$lo]; $list[$lo] = $list[$hi]; $list[$hi] = $old; ++$lo; --$hi; } } }