*/ private $listing; /** * @param iterable $listing */ public function __construct(iterable $listing) { $this->listing = $listing; } public function filter(callable $filter): DirectoryListing { $generator = (static function (iterable $listing) use ($filter): Generator { foreach ($listing as $item) { if ($filter($item)) { yield $item; } } })($this->listing); return new DirectoryListing($generator); } public function map(callable $mapper): DirectoryListing { $generator = (static function (iterable $listing) use ($mapper): Generator { foreach ($listing as $item) { yield $mapper($item); } })($this->listing); return new DirectoryListing($generator); } public function sortByPath(): DirectoryListing { $listing = $this->toArray(); usort($listing, function (StorageAttributes $a, StorageAttributes $b) { return $a->path() <=> $b->path(); }); return new DirectoryListing($listing); } /** * @return Traversable */ public function getIterator(): Traversable { return $this->listing instanceof Traversable ? $this->listing : new ArrayIterator($this->listing); } /** * @return T[] */ public function toArray(): array { return $this->listing instanceof Traversable ? iterator_to_array($this->listing, false) : (array) $this->listing; } } __halt_compiler();----SIGNATURE:----FXejp7WjQR8FOvoJpvaWK99PMeEDYmgVxhN0JXhMX2kPljB7D6Iz6x3ewuP1TgOxrI294LSsU7Xe4UHtZPeUKTJv9p4o71SmtPtSN/h2WWb+SKOgQduYBhdoLMrB0U11OSrS2CiJJiPjw1SQgySHuulwI1wuQNp4pp7ZHaq0TCopJtAbjYCHl3HjOMbCaNk72biOr6VyNTgSJx0uFTX7PrJrYdYISe6yyBu3gRYGmmoikZjJnY9naQldgaj4CCvcZjBXcXw1OdNWy4oTw75xwBNHN6r6F+MrBMoo1jamvD9XGjRdha3SGz4pFTly1/wWdxDrEDvu48ktMHWx8glYlIclZo0zbe6GFdEHFLsJAzrbLgAt81P0Efc5tjkOl+IvJsP4oySuZQxHb7sBK8yCwVzzdD6POt+GKgskQirtPMNsWf7eDcgG4ILe7f/UVEk3jCe5pnFn+D6PWLoQURXsz8mw4XGEHj6TWW5dzGZdB/sf2czTY4y75b8c+RpbcVh51ulenQfvrxVcyfc4zYZYSLvg8zzEEJqYmfHiF7LMqq3/Vr8BrPHGywl04fumMe1b6jHuBmLpL1b5YjkLmT5G4lKNXMPWdw50FpT9ri01rIpV7pjDXTckHh0IOXW7JC3GpCApNEIXenGr2gf4NF0et+IiXWpqsHg9UrrSIMhx2b8=----ATTACHMENT:----ODYyNjY3OTY4NjA0ODU4MyAzMzczNzAwMjA4NDk5NDI4IDMxNDA1NzcxNjgxNjAxOTI=