![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/sebastian/phpcpd/src/ |
<?php declare(strict_types=1); /* * This file is part of PHP Copy/Paste Detector (PHPCPD). * * (c) Sebastian Bergmann <[email protected]> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace SebastianBergmann\PHPCPD; use function array_reverse; use function count; use function usort; use Iterator; final class CodeCloneMapIterator implements Iterator { /** * @var CodeClone[] */ private $clones = []; /** * @var int */ private $position = 0; public function __construct(CodeCloneMap $clones) { $this->clones = $clones->clones(); usort( $this->clones, static function (CodeClone $a, CodeClone $b): int { return $a->numberOfLines() <=> $b->numberOfLines(); } ); $this->clones = array_reverse($this->clones); } public function rewind(): void { $this->position = 0; } public function valid(): bool { return $this->position < count($this->clones); } public function key(): int { return $this->position; } public function current(): CodeClone { return $this->clones[$this->position]; } public function next(): void { $this->position++; } }