Islands in the byte stream

Technical notes by a software engineer

RubyMineでローカル変数やブロック引数にYARD型アノテーションをつける

RubyMine 2017.1 Help :: Using Annotations にあるとおりなんですが、

local variables:

# @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 Add some documentation here
my_var = magic_method

block parameters:

method_with_block do
# @type [String] param1
# @type [Range] param2
| param1, param2 |
# some code...
end

ということです。

これでローカル変数でもコード補完がうごく!!

f:id:gfx:20170614142942p:plain

とはいえプロダクションコードに残すかどうかは微妙です。開発中の助けにはなりますが、真面目に指定するとさすがに煩雑すぎるので。

メソッドの引数や戻り値はYARDの型アノテーションを指定する価値があると思いますけどね。