我试图利用
RubyMine快速文档和代码完成.我很高兴地发现它集成了YARD风格的评论:
# @param [Numeric] width # @param [Array<String>] values # @return [Widget] def foo(width,values)
…这些注释对参数,返回类型,甚至类型集合都很有用.但是我找不到任何类似的例子或局部变量的标签,我确定Ruby中没有类型转换(我提到我是新的吗?)
有没有什么方法可以将RubyMine引用到本地和/或实例变量的类型?
解决方法
根据Matt Connolly:
http://youtrack.jetbrains.com/issue/RUBY-9142#comment=27-787975引用的问题跟踪器最近发表的评论,似乎这是即将到来的
“局部变量可以用或不带变量名注释:”
# @type [String] my_var = magic_method # @type my_var [String] my_var = magic_method # @type [String] my_var my_var = magic_method # @type [String] my_var And some documentation is allowed my_var = magic_method
“还支持多重分配:”
# @type my_var [String] The first part # @type other_var [Range] The second part my_var,other_var = magic_method
“但是在多重分配的情况下,没有var名称的表单将无法正常工作(这是有争议的,但我倾向于可能会导致一些错误)
还可以注释块参数:“
method_with_block do # @type [String] param1 # @type [Range] param2 | param1,param2 | # some code... end
“要注意的是,类型注释将放在后面或{和块参数列表之前,以帮助避免可能的模糊性.在单线程的情况下,它看起来很麻烦,但我不知道他们是否会很大无论如何,任何建议都是非常受欢迎的.“