るりまサーチ (Ruby 2.3.0)

最速Rubyリファレンスマニュアル検索!
4件ヒット [1-4件を表示] (0.041秒)
トップページ > バージョン:2.3.0[x] > クエリ:Method[x] > クエリ:def_method[x]

別のキーワード

  1. _builtin define_method
  2. irb/input-method new
  3. irb/input-method gets
  4. irb/input-method encoding
  5. irb/input-method readable_atfer_eof?

ライブラリ

クラス

キーワード

検索結果

ERB#def_method(mod, methodname, fname='(ERB)') -> nil (72943.0)

変換した Ruby スクリプトをメソッドとして定義します。

変換した Ruby スクリプトをメソッドとして定義します。

定義先のモジュールは mod で指定し、メソッド名は methodname で指定します。
fname はスクリプトを定義する際のファイル名です。主にエラー時に活躍します。

@param mod メソッドを定義するモジュール(またはクラス)

@param methodname メソッド名

@param fname スクリプトを定義する際のファイル名

例:

require 'erb'
erb = ERB.new(script)
erb.def_method(MyClass, 'foo(bar)', 'foo.e...

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

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

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

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

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

=== 「未定義にする」とは
このモジュールのインスタンスに対して name という
メソッドを呼び出すことを禁止するということです。
スーパークラスの定義が継承されるかどうかという点において、
「未定義」は「メソッドの削除」とは区別されます。
以下のコード例を参照してください。

//emlist[例][ruby]{
class A
...

static VALUE rb_mod_undef_method(VALUE mod, VALUE name) (36601.0)

void rb_undef_method(VALUE klass, const char *name) (36601.0)

クラス klass のインスタンスメソッド name を undef します。

クラス klass のインスタンスメソッド name を undef します。