# frozen_string_literal: true
''.tap do |s|
s << 'a' if a
s << 'b' if b
s << 'c' if c
end
みたいなことをして
can't modify frozen String: ""
って怒られて
(+'').tap do |s|
で逃げようとしたんですが、複製されるようなので
String.new.tap do |s|
の方がいいだろってことになった。こういう細かいことにつまずいているから時間が溶ける。
String#+@ (Ruby 3.3 リファレンスマニュアル)
self が freeze されている文字列の場合、元の文字列の複製を返します。 freeze されていない場合は self を返します。