What is the best way to document, for phpdocumentor2, a method that is a generator.
I don't think @return
really works for yield
, but I can't seem to find any proper alternative.
Is it just a matter of waiting for phpdoc to catch up?
I went with @return Generator|SomeObject[]
, where SomeObject
is the thing being yielded.
PhpStorm handles this well too, as it now normally hints Generator
methods and when iterated it hints SomeObject
methods.
(Still, I would prefer a native @yield
.)
From the PHP Manual:
When a generator function is called for the first time, an object of the internal Generator class is returned.
So strictly speaking, @return Generator
would be correct, although not super descriptive of what you can expect to get back when you iterate over the generator.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With