Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

「,=」と出ていたら、それは多重代入です。

Rubyにも多重代入があります。

a, b = [1, 2]
ap a
#=> 1
ap b
#=> 2

コーディング規則では大抵推奨されてない方法です。

ところがドッコイ、awesome_printのようなスゴイヤバイ級Rubyistが集うgemだとそうでもないようです。
たとえば、次のような記法が…

value ,= format[:html]

最初見た時は何事かと思いましたが…
試しにコンソールでやってみると

foo ,= [1,2,3]
foo
#=> 1

と、最初の値だけ代入する魔界記法のようです。

foo = [1,2,3][0]

と同じ意味なんでしょうが…この記法は怖いですね
速度が早いとかそういうメリットも一応ありそうではありますが…

参考もと