種類
- 文書 (48)
- インスタンスメソッド (24)
- クラス (12)
ライブラリ
- ビルトイン (36)
クラス
- Method (12)
- UnboundMethod (12)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (12) -
original
_ name (24) -
ruby 1
. 6 feature (12) -
ruby 1
. 8 . 4 feature (12) -
ruby 1
. 9 feature (12)
検索結果
先頭5件
-
UnboundMethod (38024.0)
-
レシーバを持たないメソッドを表すクラスです。 呼び出すためにはレシーバにバインドする必要があります。
...nce_method や
Method#unbind により生成し、後で
UnboundMethod#bind によりレシーバを
割り当てた Method オブジェクトを作ることができます。
//emlist[例: Method クラスの冒頭にある例を UnboundMethod で書くと以下のようになります。][ruby]{......# => "bar"
p methods[3].bind(Foo.new).call # => "baz"
//}
//emlist[例: 以下はメソッドの再定義を UnboundMethod を使って行う方法です。普通は alias や super を使います。][ruby]{
class Foo
def foo
p :foo
end
@@orig_foo = instance_method :foo
def f... -
UnboundMethod
# original _ name -> Symbol (21006.0) -
オリジナルのメソッド名を返します。
...オリジナルのメソッド名を返します。
//emlist[例][ruby]{
class C
def foo; end
alias bar foo
end
C.instance_method(:bar).original_name # => :foo
//}
@see Method#original_name... -
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (66.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への変更点(まとめ)/サポートプラットフォームの追加>))
...include するように
なりました。((<ruby-dev:20964>))
: ((<UnboundMethod>)) [compat]
UnboundMethod クラスは Method クラスのサブクラスではなくなりました。
UnboundMethod#call, UnboundMethod#unbind はなくなりました。
((<ruby-core:00927>))
: ((<NameE......(OSがサポートしている場合に限る)
p Time.at(-1)
=> Thu Jan 01 08:59:59 JST 1970
=== UnboundMethod
: ((<UnboundMethod#bind|UnboundMethod/bind>)) [compat]
UnboundMethod オブジェクトをそれが定義されたクラスのサブクラスへ
bind しても良いことに......nexpected return
: [parser] [compat]
ネストしたメソッド定義が許されるようになりました。
メソッド定義中での alias, undef も許可されました。
メソッド定義の外での super の呼び出しはコンパイル時でなく実行時に
エラー... -
ruby 1
. 8 . 4 feature (60.0) -
ruby 1.8.4 feature ruby 1.8.4 での ruby 1.8.3 からの変更点です。
...現 [bug]>))
* ((<ruby 1.8.4 feature/シグナル [bug]>))
* ((<ruby 1.8.4 feature/組み込みライブラリ>))
* ((<ruby 1.8.4 feature/UnboundMethod#bind [bug]>))
* ((<ruby 1.8.4 feature/set_trace_func [bug]>))
* ((<ruby 1.8.4 feature/set_trace_func [change]>))
* ((<ruby 1.8.4 feature/p......y-dev:27478>))
1) alias :"foo" :"bar"
def bar; p "bar"; end
alias :"foo" :"bar"
foo
# => ruby 1.8.4 (2005-12-22) [i686-linux]
-:2: syntax error, unexpected tSTRING_CONTENT
alias :"foo" :"bar"......<nobu@ruby-lang.org>
#
# * eval.c (umethod_bind): adjust invoking class for module method.
# [ruby-dev:27964]
: UnboundMethod#bind [bug]
UnboundMethod#bindされたモジュールのインスタンスメソッド中で
superを使えなかったバグを修正しました... -
ruby 1
. 6 feature (18.0) -
ruby 1.6 feature ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン になります。
...1-06-04) [i586-linux]
["foo/bar", "foo/bar"]
=> ruby 1.6.4 (2001-08-26) [i586-linux]
["foo/bar"]
: ((<UnboundMethod>))#bind
モジュールの UnboundMethod オブジェクトを bind することができませんでした。
((<rubyist:0728>))
module Foo
def foo......# => ruby 1.6.3 (2001-03-19) [i586-linux]
[[1], [2], [3]]
# => ruby 1.6.4 (2001-06-04) [i586-linux]
[1, 2, 3]
: $SAFE / alias
$SAFE = 4 のときグローバル変数のエイリアスを許さないようにしました。
((<ruby-dev:13287>))
: ((<open3/Open3.pope... -
Method
# original _ name -> Symbol (12.0) -
オリジナルのメソッド名を返します。
...オリジナルのメソッド名を返します。
//emlist[例][ruby]{
class C
def foo; end
alias bar foo
end
C.new.method(:bar).original_name # => :foo
//}
@see UnboundMethod#original_name... -
ruby 1
. 9 feature (12.0) -
ruby 1.9 feature ruby version 1.9.0 は開発版です。 以下にあげる機能は将来削除されたり互換性のない仕様変更がなされるかもしれません。 1.9.1 以降は安定版です。 バグ修正がメインになります。
...査を行うようになりました
: メソッド呼出し時のセキュリティ検査の対象がひろがりました
: メソッドを alias した場合、メソッドの定義時の $SAFE に加えて現在の $SAFE も加味されるようになりました
: Bignum#pow で結果が......グが修正されました ((<ruby-core:07928>))
: エラー表示で、true/false/nil が self の場合の表示が変わりました
: UnboundMethod#bind で生成したものでも Method#inspect でちゃんとなるようになりました ((<ruby-dev:28636>))
: 丸めエラー修正 ((...