36件ヒット
[1-36件を表示]
(0.016秒)
別のキーワード
種類
- 文書 (24)
- インスタンスメソッド (12)
ライブラリ
- ビルトイン (12)
クラス
- Object (12)
キーワード
-
ruby 1
. 8 . 3 feature (12) - クラス/メソッドの定義 (12)
検索結果
-
Object
# initialize _ copy(obj) -> object (18167.0) -
(拡張ライブラリによる) ユーザ定義クラスのオブジェクトコピーの初期化メソッド。
...、Object#clone の内部で Object#initialize_clone から、
また Object#dup の内部で Object#initialize_dup から呼ばれます。
initialize_copy は、Ruby インタプリタが知り得ない情報をコピーするた
めに使用(定義)されます。例えば C 言語でクラス......one
を再定義する必要がなくなります。
デフォルトの Object#initialize_copy は、 freeze チェックおよび型のチェックを行い self
を返すだけのメソッドです。
initialize_copy という名前のメソッドは
自動的に private に設定されます。......ck(obj)
puts "instance variables: #{obj.inspect}"
puts "tainted?: #{obj.tainted?}"
print "singleton methods: "
begin
p obj.bar
rescue NameError
p $!
end
end
obj.foo = 1
obj.taint
check Object.new.send(:initialize_copy, obj)
#=> instance variables: #<Object:0x4019c9d4>......:bar
end
end
def check(obj)
puts "instance variables: #{obj.inspect}"
print "singleton methods: "
begin
p obj.bar
rescue NameError
p $!
end
end
obj.foo = 1
check Object.new.send(:initialize_copy, obj)
#=> instance variables: #<Object:0x4019c9d4>
# singleton m... -
ruby 1
. 8 . 3 feature (24.0) -
ruby 1.8.3 feature *((<ruby 1.8 feature>)) *((<ruby 1.8.2 feature>))
...特異クラスは複製できなくなりました。((<ruby-talk:142749>))
$ ruby-1.8.3 -e 'class << "str"; self end.dup'
-e:1:in `initialize_copy': can't copy singleton class (TypeError)
from -e:1
=== 2005-05-15
: Pathname#unlink [lib] [compat]
ディレクトリへのシ......rror を投げます。
$ ruby-1.8.2 -se 'puts global_variables.grep(/foo/)' -- --foo-bar
$-foo-bar
$ ruby-1.8.3 -se 'puts global_variables.grep(/foo/)' -- --foo-bar
$_foo_bar
$ ruby-1.8.3 -se 'puts global_variables.grep(/foo/)' -- --foo\@bar
-e: invalid name for glob... -
クラス/メソッドの定義 (12.0)
-
クラス/メソッドの定義 * クラス/メソッドの定義: * class * singleton_class * module * method * operator * nest_method * eval_method * singleton_method * class_method * limit * 定義に関する操作: * alias * undef * defined
...lic、Module#private、
Module#protected を用いて変更できます。ただし Object#initialize という名前のメソッドと
Object#initialize_copy という名前のメソッド
は定義する場所に関係なく常に private になります。
//emlist[例][ruby]{
def foo......には別名を付けることができません。
また、インタプリタに対して重要な意味のあるグローバル変数
(d:spec/variables#builtin_variable を参照)を再定義すると動作に
支障を来す場合があります。
alias 式は nil を返します。
====[a:u...