るりまサーチ

最速Rubyリファレンスマニュアル検索!
155件ヒット [1-100件を表示] (0.044秒)
トップページ > クラス:Module[x] > クエリ:module[x] > クエリ:new[x] > クエリ:name[x]

別のキーワード

  1. module attr
  2. module new
  3. module constants
  4. module define_method
  5. module module_eval

ライブラリ

キーワード

検索結果

<< 1 2 > >>

Module.new -> Module (27271.0)

名前の付いていないモジュールを新しく生成して返します。

...ジュールのコンテキストでブロックを実行します。

//emlist[例][ruby]{
mod = Module.new
mod.module_eval {|m|
# ...
}
mod
//}

と同じです。
ブロックの実行は Module#initialize が行います。

ブロックを与えた場合も生成したモジュールを返し...
...れかです。

//emlist[例][ruby]{
m = Module.new
p m # => #<Module 0lx40198a54>
p m.name # => nil # まだ名前は未定
Foo = m
# m.name # ここで m.name を呼べば m の名前は "Foo" に確定する
Bar = m
m.name # "Foo" か "Bar" のどち...

Module.new {|mod| ... } -> Module (27271.0)

名前の付いていないモジュールを新しく生成して返します。

...ジュールのコンテキストでブロックを実行します。

//emlist[例][ruby]{
mod = Module.new
mod.module_eval {|m|
# ...
}
mod
//}

と同じです。
ブロックの実行は Module#initialize が行います。

ブロックを与えた場合も生成したモジュールを返し...
...れかです。

//emlist[例][ruby]{
m = Module.new
p m # => #<Module 0lx40198a54>
p m.name # => nil # まだ名前は未定
Foo = m
# m.name # ここで m.name を呼べば m の名前は "Foo" に確定する
Bar = m
m.name # "Foo" か "Bar" のどち...

Module#name -> String | nil (24198.0)

モジュールやクラスの名前を文字列で返します。

...ル / クラスに対しては、name は nil を、それ以外はオブジェクト ID の文字列を返します。

//emlist[例][ruby]{
module
A
module
B
end

p B.name #=> "A::B"

class C
end
end

p A.name #=> "A"
p A::B.name #=> "A::B"
p A::C.name #=> "A::C"

# 名前のない...
...モジュール / クラス
p Module.new.name #=> nil
p Class.new.name #=> nil
p Module.new.to_s #=> "#<Module:0x00007f90b09112c8>"
p Class.new.to_s #=> "#<Class:0x00007fa5c40b41b0>"
//}...

Module#module_eval(expr, fname = "(eval)", lineno = 1) -> object (12227.0)

モジュールのコンテキストで文字列 expr またはモジュール自身をブロックパラメータとするブロックを 評価してその結果を返します。

...ことです。
つまり、そのモジュールの定義式の中にあるかのように実行されます。

ただし、ローカル変数は module_eval/class_eval の外側のスコープと共有します。

文字列が与えられた場合には、定数とクラス変数のスコープ...
...のスコープはブロックの外側のスコープになります。


@param expr 評価される文字列。

@param fname 文字列を指定します。ファイル fname に文字列 expr が書かれているかのように実行されます。
スタックトレースの表示...
...などを差し替えることができます。

//emlist[例][ruby]{
class C
end
a = 1
C.class_eval %Q{
def m # メソッドを動的に定義できる。
return :m, #{a}
end
}

p C.new.m #=> [:m, 1]
//}

@see BasicObject#instance_eval, Module.new, Kernel.#eval...

Module#undef_method(*name) -> self (9160.0)

このモジュールのインスタンスメソッド name を未定義にします。

...このモジュールのインスタンスメソッド name を未定義にします。

@param name 0 個以上の String か Symbol を指定します。

@raise NameError 指定したインスタンスメソッドが定義されていない場合に発生します。

=== 「未定義にする...
...end
class B < A
def ok
puts 'B'
end
end

B.new.ok # => B

# undef_method の場合はスーパークラスに同名のメソッドがあっても
# その呼び出しはエラーになる
class B
undef_method :ok
end
B.new.ok # => NameError

# remove_method の場合はスーパーク...
...
# それが呼ばれる
class B
remove_method :ok
end
B.new.ok # => A
//}

また、undef 文と undef_method の違いは、
メソッド名を String または Symbol で与えられることです。

//emlist[例][ruby]{
module
M1
def foo
end
def self.moo
undef foo
end
end
M1...

絞り込み条件を変える

Module#instance_method(name) -> UnboundMethod (9136.0)

self のインスタンスメソッド name をオブジェクト化した UnboundMethod を返します。

...タンスメソッド name をオブジェクト化した UnboundMethod を返します。

@param name メソッド名を Symbol または String で指定します。

@raise NameError self に存在しないメソッドを指定した場合に発生します。

@see Module#public_instance_method...
...d(:do_a),
"d" => instance_method(:do_d),
"e" => instance_method(:do_e),
"v" => instance_method(:do_v)
}
def interpret(string)
string.each_char {|b| Dispatcher[b].bind(self).call }
end
end

interpreter = Interpreter.new
interpreter.interpret('dave')
# => Hello there, Dave!
//}...

Module#define_method(name) { ... } -> Symbol (9131.0)

インスタンスメソッド name を定義します。

...インスタンスメソッド name を定義します。

ブロックを与えた場合、定義したメソッドの実行時にブロックが
レシーバクラスのインスタンスの上で BasicObject#instance_eval されます。

@param name メソッド名を String または Symbol...
...

@raise TypeError method に同じクラス、サブクラス、モジュール以外のメソッ
ドを指定した場合に発生します。

//emlist[例][ruby]{
class Foo
def foo() p :foo end
define_method(:bar, instance_method(:foo))
end
Foo.new.bar # => :foo
//}...

Module#define_method(name, method) -> Symbol (9131.0)

インスタンスメソッド name を定義します。

...インスタンスメソッド name を定義します。

ブロックを与えた場合、定義したメソッドの実行時にブロックが
レシーバクラスのインスタンスの上で BasicObject#instance_eval されます。

@param name メソッド名を String または Symbol...
...

@raise TypeError method に同じクラス、サブクラス、モジュール以外のメソッ
ドを指定した場合に発生します。

//emlist[例][ruby]{
class Foo
def foo() p :foo end
define_method(:bar, instance_method(:foo))
end
Foo.new.bar # => :foo
//}...

Module#class_variable_set(name, val) -> object (9130.0)

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

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

@param name String または Symbol を指定します。

//emlist[例][ruby]{
class Fred
@@foo = 99
def foo
@@foo
end
end

def Fred.foo(val)
clas...
...s_variable_set(:@@foo, val)
end

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

Module#class_eval(expr, fname = "(eval)", lineno = 1) -> object (9127.0)

モジュールのコンテキストで文字列 expr またはモジュール自身をブロックパラメータとするブロックを 評価してその結果を返します。

...ことです。
つまり、そのモジュールの定義式の中にあるかのように実行されます。

ただし、ローカル変数は module_eval/class_eval の外側のスコープと共有します。

文字列が与えられた場合には、定数とクラス変数のスコープ...
...のスコープはブロックの外側のスコープになります。


@param expr 評価される文字列。

@param fname 文字列を指定します。ファイル fname に文字列 expr が書かれているかのように実行されます。
スタックトレースの表示...
...などを差し替えることができます。

//emlist[例][ruby]{
class C
end
a = 1
C.class_eval %Q{
def m # メソッドを動的に定義できる。
return :m, #{a}
end
}

p C.new.m #=> [:m, 1]
//}

@see BasicObject#instance_eval, Module.new, Kernel.#eval...

絞り込み条件を変える

<< 1 2 > >>