読者です 読者をやめる 読者になる 読者になる

Ruby の class/module 定義式の戻り値

Ruby では classmodule 定義も式なので戻り値があります。
classmodule の定義式の戻り値は『最後に評価した式の結果』になります。

# 最後に評価式を返す
# この場合は最後に定義したメソッドの戻り値を返す
result = class X
    def method1
        
    end

    def method2
        
    end
end

p result
# => :method2


# module も同様
result = module M
    def method1
        
    end

    # 最後に式を記述することで任意の値を返すこともできる
    1 + 2
end

p result
# => 3