種類
- 文書 (44)
- インスタンスメソッド (24)
ライブラリ
- ビルトイン (24)
クラス
- Module (24)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (12) -
NEWS for Ruby 2
. 5 . 0 (8) - Ruby用語集 (12)
- クラス/メソッドの定義 (12)
検索結果
先頭5件
-
Module
# undef _ method(*name) -> self (18137.0) -
このモジュールのインスタンスメソッド name を未定義にします。
...f 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
unde......f foo
end
end
M1.instance_methods false #=> ["foo"]
M1.moo
M1.instance_methods false #=> []
module M2
def foo
end
def self.moo
undef_method :foo
end
end
M2.instance_methods false #=> ["foo"]
M2.moo
M2.instance_methods false #=> []
//}... -
Module
# remove _ method(*name) -> self (18119.0) -
インスタンスメソッド name をモジュールから削除します。
...ring か Symbol を指定します。
@raise NameError 指定したメソッドが定義されていない場合に発生します。
//emlist[例][ruby]{
class C
def foo
end
remove_method :foo
remove_method :no_such_method # 例外 NameError が発生
end
//}
@see Module#undef_method... -
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (24.0) -
1.6.8から1.8.0への変更点(まとめ) * ((<1.6.8から1.8.0への変更点(まとめ)/インタプリタの変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたクラス/モジュール>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたメソッド>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加された定数>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張されたクラス/メソッド(互換性のある変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/文法の変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/正規表現>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Marshal>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Windows 対応>)) * ((<1.6.8から1.8.0への変更点(まとめ)/廃止された(される予定の)機能>)) * ((<1.6.8から1.8.0への変更点(まとめ)/ライブラリ>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張ライブラリAPI>)) * ((<1.6.8から1.8.0への変更点(まとめ)/バグ修正>)) * ((<1.6.8から1.8.0への変更点(まとめ)/サポートプラットフォームの追加>))
...がより意味のあるものになりました。
((<ruby-bugs-ja:PR#193>))
=== Module
: ((<Module#undef_method|Module/undef_method>)) [compat]
: ((<Module#remove_method|Module/remove_method>)) [compat]
一度に複数のメソッドを指定できるようになりました。((<RCR#146>))... -
クラス/メソッドの定義 (18.0)
-
クラス/メソッドの定義 * クラス/メソッドの定義: * class * singleton_class * module * method * operator * nest_method * eval_method * singleton_method * class_method * limit * 定義に関する操作: * alias * undef * defined
...し等の一切の評価は行われません。
メソッドの定義内で定義を取り消すにはModuleクラスのメソッ
ド Module#undef_method を利用して下
さい。
undef のより正確な動作は、メソッド名とメソッド定義との関係を取り除き、
そのメ......たとえスーパークラスに同名のメソッドがあっても例外 NameError を発生させます。
(一方、メソッド Module#remove_method は、関係を取り除くだけです。この違いは重要です)。
alias による別名定義と undef による定義取り消しに......れていれば式の種別
を表す文字列を返します。
定義されていないメソッド、undef されたメソッド、Module#remove_method
により削除されたメソッドのいずれに対しても defined? は nil を返します。
特別な用法として以下がありま... -
NEWS for Ruby 2
. 5 . 0 (12.0) -
NEWS for Ruby 2.5.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
...r, Module#attr_writer はパブリックメソッドになりました 14132
* Module#define_method, Module#alias_method, Module#undef_method, Module#remove_method はパブリックメソッドになりました 14133
* Numeric
* Numeric#step は > で0と比較できない引数が与... -
Ruby用語集 (12.0)
-
Ruby用語集 A B C D E F G I J M N O R S Y
...化(メソッドの)
メソッドの定義を取り消すこと。d:spec/def#undef 式もしくは
Module#undef_method メソッドによって行う。
Module#remove_method メソッドによるメソッドの削除とは
異なることに注意。
: メソッド
: method
クラス...