Rubyで末尾に=が付くメソッドは「属性参照」と呼ぶらしい(英語だとAssignment Methods)

のコメントを書いたときに Ruby のリファレンスマニュアルを見直していました。Ruby 的にはどうやら「属性参照」と呼ぶらしいです(仮称のようにも感じますが)。ちなみに英語マニュアルだと Assignment Methods (代入メソッド)でした1

代入

例:

foo.bar = baz

文法:

式`.'識別子 '=' 式

(中略)

属性参照

式1 `.' 識別子 '=' 式2

式 1 を評価して得られるオブジェクトに対して、 識別子= というメソッドを、式 2 を引数にして呼び出します。

例:

class C
  def foo
    @foo
  end
  def foo=( v )
    @foo = v
  end
end
c = C.new
c.foo = 5   # c.foo=( 5 ) のように変換される
p c.foo     # => 5

属性は Module#attr を使って同じように定義できます。

例:

class C
  attr :foo, true
end
c = C.new
c.foo = 5   # c.foo=( 5 ) のように変換される
p c.foo     # => 5