Ruby 2.5.0 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > Moduleクラス > class_variable_set

instance method Module#class_variable_set

class_variable_set(name, val) -> object[permalink][rdoc]

クラス/モジュールにクラス変数 name を定義して、その値として val をセットします。val を返します。

[PARAM] name:
String または Symbol を指定します。


class Fred
  @@foo = 99
  def foo
    @@foo
  end
end

def Fred.foo(val)
  class_variable_set(:@@foo, val)
end

p Fred.foo(101)   # => 101
p Fred.new.foo    # => 101