モージュール

モジュールとは

機能をまとめたものです。 モジュールで定義した関数を使用したい場合は、module_functionを使います。 モジュール名::関数名またはモジュール名.関数名で呼び出すことができます。

module Hoge
    def hoge
        "hogehoge"
    end
    module_function :hoge
end

Hoge.hoge #=> "hogehoge"
Hoge::hoge #=> "hogehoge"

名前空間

同じメソッド名でもモジュールを使うことで名前を区別できます。

module Hoge
    def comment
        "hogehoge"
    end
    module_function :comment
end

module Foo
    def comment
        "fooooooo"
    end
    module_function :comment
end

Hoge.comment #=> "hogehoge"
Foo.comment #=> "fooooooo"

モジュールのインクルード

モジュールをインクルードすると、関数名だけで呼び出すことができます。

module Hoge
    def hello
        "hogehoge"
    end
    module_function :hello
end

include Hoge

hello #=> "hogehoge"

定数の参照

定数はモジュール名::定数名で参照できます。

module Hoge
    A = "hogehoge"
end

Hoge::A #=> "hogehoge"

正当なCSSです!