 :Kernel.#p
:Kernel.#p![条件を削除 [x]](/images/drop-condition-icon.png) >
 >  :public_instance_method
:public_instance_method![条件を削除 [x]](/images/drop-condition-icon.png) >
 >  :method
:method![条件を削除 [x]](/images/drop-condition-icon.png) >
 >  :exception
:exception![条件を削除 [x]](/images/drop-condition-icon.png) >
 >  :include
:include![条件を削除 [x]](/images/drop-condition-icon.png) >
 >  :cpp_command
:cpp_command![条件を削除 [x]](/images/drop-condition-icon.png) >
 >  :print
:print![条件を削除 [x]](/images/drop-condition-icon.png) > クラス:Module
 > クラス:Module![条件を削除 [x]](/images/drop-condition-icon.png) 
  種類
- インスタンスメソッド (132)
- 特異メソッド (12)
ライブラリ
- ビルトイン (144)
キーワード
- ancestors (12)
- autoload (12)
- 
        class_ eval (24) 
- 
        const_ defined? (12) 
- constants (24)
- 
        module_ eval (24) 
- 
        remove_ const (12) 
検索結果
先頭5件
- 
      Module# public _ instance _ method(name) -> UnboundMethod (6137.0) 
- 
      
      
      self の public インスタンスメソッド name をオブジェクト化した UnboundMethod を返します。 ...elf の public インスタンスメソッド name をオブジェクト化した UnboundMethod を返します。
 @param name メソッド名を Symbol または String で指定します。
 @raise NameError 定義されていないメソッド名や、
 protected メソッド名、 private......として与えると発生します。
 //emlist[例][ruby]{
 Kernel.public_instance_method(:object_id) #=> #<UnboundMethod: Kernel#object_id>
 Kernel.public_instance_method(:p) # method `p' for module `Kernel' is private (NameError)
 //}
 @see Module#instance_method,Object#public_method...
- 
      Module# class _ eval(expr , fname = "(eval)" , lineno = 1) -> object (125.0) 
- 
      
      
      モジュールのコンテキストで文字列 expr またはモジュール自身をブロックパラメータとするブロックを 評価してその結果を返します。 ...モジュールのコンテキストで文字列 expr またはモジュール自身をブロックパラメータとするブロックを
 評価してその結果を返します。
 モジュールのコンテキストで評価するとは、実行中そのモジュールが self になるとい......ことです。
 つまり、そのモジュールの定義式の中にあるかのように実行されます。
 ただし、ローカル変数は module_eval/class_eval の外側のスコープと共有します。
 定数とクラス変数のスコープは、文字列が与えられた場合と......す。
 @param expr 評価される文字列。
 @param fname 文字列を指定します。ファイル fname に文字列 expr が書かれているかのように実行されます。
 スタックトレースの表示などを差し替えることができます。
 @param lineno...
- 
      Module# module _ eval(expr , fname = "(eval)" , lineno = 1) -> object (125.0) 
- 
      
      
      モジュールのコンテキストで文字列 expr またはモジュール自身をブロックパラメータとするブロックを 評価してその結果を返します。 ...モジュールのコンテキストで文字列 expr またはモジュール自身をブロックパラメータとするブロックを
 評価してその結果を返します。
 モジュールのコンテキストで評価するとは、実行中そのモジュールが self になるとい......ことです。
 つまり、そのモジュールの定義式の中にあるかのように実行されます。
 ただし、ローカル変数は module_eval/class_eval の外側のスコープと共有します。
 定数とクラス変数のスコープは、文字列が与えられた場合と......す。
 @param expr 評価される文字列。
 @param fname 文字列を指定します。ファイル fname に文字列 expr が書かれているかのように実行されます。
 スタックトレースの表示などを差し替えることができます。
 @param lineno...
- 
      Module# autoload(const _ name , feature) -> nil (47.0) 
- 
      
      
      定数 const_name を最初に参照した時に feature を Kernel.#require するように設定します。 ...定数 const_name を最初に参照した時に feature を Kernel.#require するように設定します。
 const_name が autoload 設定されていて、まだ定義されてない(ロードされていない)ときは、
 autoload する対象を置き換えます。
 const_name が(autoload......しません。
 @param const_name String または Symbol で指定します。
 なお、const_name には、"::" 演算子を含めることはできません。
 つまり、self の直下に定義された定数しか指定できません。
 @param feature Kernel.#require と同様......tmp/foo.rb ---------
 class Foo
 class Bar
 end
 end
 # ----- end of /tmp/foo.rb ----
 class Foo
 autoload :Bar, '/tmp/foo'
 end
 p Foo::Bar #=> Foo::Bar
 //}
 以下のようにモジュールを明示的にレシーバとして呼び出すこともできます。
 //emlist[例][ruby]{
 # ------- /tmp/...
- 
      Module# constants(inherit = true) -> [Symbol] (37.0) 
- 
      
      
      そのモジュール(またはクラス)で定義されている定数名の配列を返します。 ...ません。
 @param inherit true を指定するとスーパークラスや include したモジュールで
 定義された定数が対象にはなります。false を指定した場合 対象にはなりません。
 @see Module.constants, Kernel.#local_variables, Kernel.#global_variables......_variables, Module#class_variables
 //emlist[Module.constants と Module#constants の違い][ruby]{
 # 出力の簡略化のため起動時の定数一覧を取得して後で差し引く
 $clist = Module.constants
 class Foo
 FOO = 1
 end
 class Bar
 BAR = 1
 # Bar は BAR を含む
 p constants......ない
 p Module.constants - $clist # => [:BAR, :Bar, :Foo]
 class Baz
 # Baz は定数を含まない
 p constants # => []
 # ネストしたクラスでは、外側のクラスで定義した定数は
 # 参照可能なので、BAR は、Module.constant...
- 
      Module# ancestors -> [Class , Module] (31.0) 
- 
      
      
      クラス、モジュールのスーパークラスとインクルードしているモジュール を優先順位順に配列に格納して返します。 ...先順位順に配列に格納して返します。
 //emlist[例][ruby]{
 module Foo
 end
 class Bar
 include Foo
 end
 class Baz < Bar
 p ancestors
 p included_modules
 p superclass
 end
 # => [Baz, Bar, Foo, Object, Kernel, BasicObject]
 # => [Foo, Kernel]
 # => Bar
 //}
 @see Module#included_modules...
- 
      Module# const _ defined?(name , inherit = true) -> bool (31.0) 
- 
      
      
      モジュールに name で指定される名前の定数が定義されている時真 を返します。 ...クラスや include したモジュールで定義された定数を検索対象
 にするかどうかは第二引数で制御することができます。
 @param name String, Symbol で指定される定数名。
 @param inherit false を指定するとスーパークラスや include したモ......ist[例][ruby]{
 module Kernel
 FOO = 1
 end
 # Object は include したモジュールの定数に対しても
 # true を返す
 p Object.const_defined?(:FOO) # => true
 module Bar
 BAR = 1
 end
 class Object
 include Bar
 end
 # ユーザ定義のモジュールに対しても同様
 p Object.const_......defined?(:BAR) # => true
 class Baz
 include Bar
 end
 # Object 以外でも同様になった
 # 第二引数のデフォルト値が true であるため
 p Baz.const_defined?(:BAR) # => true
 # 第二引数を false にした場合
 p Baz.const_defined?(:BAR, false) # => false
 //}...
- 
      Module# class _ eval {|mod| . . . } -> object (25.0) 
- 
      
      
      モジュールのコンテキストで文字列 expr またはモジュール自身をブロックパラメータとするブロックを 評価してその結果を返します。 ...モジュールのコンテキストで文字列 expr またはモジュール自身をブロックパラメータとするブロックを
 評価してその結果を返します。
 モジュールのコンテキストで評価するとは、実行中そのモジュールが self になるとい......ことです。
 つまり、そのモジュールの定義式の中にあるかのように実行されます。
 ただし、ローカル変数は module_eval/class_eval の外側のスコープと共有します。
 定数とクラス変数のスコープは、文字列が与えられた場合と......す。
 @param expr 評価される文字列。
 @param fname 文字列を指定します。ファイル fname に文字列 expr が書かれているかのように実行されます。
 スタックトレースの表示などを差し替えることができます。
 @param lineno...
- 
      Module# include(*mod) -> self (25.0) 
- 
      
      
      モジュール mod をインクルードします。 ...ます。
 @param mod Module のインスタンス( Enumerable など)を指定します。
 @raise ArgumentError 継承関係が循環してしまうような include を行った場合に発生します。
 //emlist[例][ruby]{
 module M
 end
 module M2
 include M
 end
 module M
 include M2
 end
 //}......実行結果:
 -:3:in `append_features': cyclic include detected (ArgumentError)
 from -:3:in `include'
 from -:3
 インクルードとは、指定されたモジュールの定義
 (メソッド、定数) を引き継ぐことです。
 インクルードは多重継承の代わ......りに用いられており、 mix-in とも呼びます。
 //emlist[例][ruby]{
 class C
 include FileTest
 include Math
 end
 p C.ancestors
 # => [C, Math, FileTest, Object, Kernel]
 //}
 モジュールの機能追加は、クラスの継承関係の間にそのモジュールが挿入
 される...
