记录(phpdoc)生成器的最佳方式(产生的方法)
对于phpdocumentor2来说,记录作为生成器的方法的最佳方式是什么 我不认为记录(phpdoc)生成器的最佳方式(产生的方法),php,generator,phpdoc,php-5.5,Php,Generator,Phpdoc,Php 5.5,对于phpdocumentor2来说,记录作为生成器的方法的最佳方式是什么 我不认为@return对收益率有效,但我似乎找不到任何合适的替代方案 这只是等待phpdoc赶上的问题吗?: 第一次调用生成器函数时 返回内部生成器类 严格地说,@return Generator是正确的,尽管它不能超级描述您在遍历该生成器时期望得到的结果 我使用了@returngenerator | SomeObject[],其中SomeObject是正在生成的东西 PhpStorm也能很好地处理这个问题,因为它现在通
@return
对收益率
有效,但我似乎找不到任何合适的替代方案
这只是等待phpdoc赶上的问题吗?:
第一次调用生成器函数时
返回内部生成器类
严格地说,
@return Generator
是正确的,尽管它不能超级描述您在遍历该生成器时期望得到的结果 我使用了@returngenerator | SomeObject[]
,其中SomeObject
是正在生成的东西
PhpStorm也能很好地处理这个问题,因为它现在通常提示Generator
方法,并且在迭代时提示SomeObject
方法
(尽管如此,我还是更喜欢原生的
@yield
)IMHO@return
是合适的,因为它表示您从生成器中得到了什么。到目前为止,还没有规范的方法可以做到这一点。你是正确的,@return
肯定是错误的。最有可能的语法是@yield V
或@return Generator
,可能还可以指定K、S和R。另请参见@NikiC您的回复应该作为答案发布。编辑器提示:Netbeans只需在@return
中添加SomeObject
(或\SomeObject
)即可提示SomeObject的方法。PhpStorm需要在类型(SomeObject[]
)的末尾添加额外的[]
)。所以我认为最好的选择是像@robert writed:@return Generator |\SomeObject[]
那样编写它。那么从PHP7开始的Generator->getReturn()
呢?这将更难提示。你有什么建议?这是一个非常聪明的解决方案!这应该是正确的答案。真的很有帮助。非常感谢。