Psalm
Get started
Documentation
Paid support
Plugins
Blog
GitHub
<?php /** * Returns `never` when given a list to make sure it's not called unnecessarily * * @template T * @param iterable<mixed, T> $iterable * @return ($iterable is list ? never : list<T>) */ function iterableToList(iterable $iterable): array { return array_values(iterator_to_array($iterable)); } /** * @return iterable<int, string> */ function returnsIterable(): iterable { yield "foo"; } $list = iterableToList(returnsIterable());
Snippet created on July 14 2025 at 11:52 UTC
Settings
Get link