おさらい
freeze
コード中の文字列リテラルのうち、それ自体を破壊的に変更されたくない場合、freeze
メソッドを使って、immutableにすることができる。
マジックコメント frozon_string_literal
けれど、毎度毎度、そういった文字列リテラルにfrozon
を書くのは面倒。
そこでRuby 2.3から取り入れられたのが、frozon_string_literal
というマジックコメント。これを先頭行に以下のように追加することで、そのファイル中の文字列リテラルは全てfreeze
が呼ばれたのと同じ状態になる。
とにかくマジックコメントをぶっ込みまくる
ということで、とりあえず全部にぶっ込んでみた。
$ find ./lib -type f -name '*.rb' -exec sed -i '.back' -e '1i\
\# frozen_string_literal: true' -e '1G' {} \;
これで先頭行にマジックコメントが追加できた。
あとはゴミを始末する。
$ find ./lib -type f -n '*.back' -exec rm {} \;