るりまサーチ

最速Rubyリファレンスマニュアル検索!
48件ヒット [1-48件を表示] (0.017秒)
トップページ > クエリ:TypeError[x] > クエリ:initialize_copy[x]

別のキーワード

  1. win32ole ole_activex_initialize
  2. object initialize_copy
  3. _builtin initialize_copy
  4. object initialize
  5. ri initialize

検索結果

Object#initialize_copy(obj) -> object (18149.0)

(拡張ライブラリによる) ユーザ定義クラスのオブジェクトコピーの初期化メソッド。

...、Object#clone の内部で Object#initialize_clone から、
また Object#dup の内部で Object#initialize_dup から呼ばれます。

initialize_copy
は、Ruby インタプリタが知り得ない情報をコピーするた
めに使用(定義)されます。例えば C 言語でクラス...
...

デフォルトの Object#initialize_copy は、 freeze チェックおよび型のチェックを行い self
を返すだけのメソッドです。

initialize_copy
という名前のメソッドは
自動的に private に設定されます。

@raise TypeError レシーバが freeze され...
...用しているかを示します。

obj.dup は、新たに生成したオブジェクトに対して
initialize_copy
を呼び

//emlist[][ruby]{
obj2 = obj.class.allocate
obj2.initialize_copy(obj)
//}

obj2 に対してさらに obj の汚染状態、インスタンス変数、ファイナライ...
...用しているかを示します。

obj.dup は、新たに生成したオブジェクトに対して
initialize_copy
を呼び

//emlist[][ruby]{
obj2 = obj.class.allocate
obj2.initialize_copy(obj)
//}

obj2 に対してさらに obj のインスタンス変数、ファイナライザを
コピ...

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への変更点(まとめ)/サポートプラットフォームの追加>))

...整除と剰余

=== NoMethodError

: ((<NoMethodError#args|NoMethodError/args>)) [new]

追加

=== Object

: ((<Object#initialize_copy|Object/initialize_copy>)) [change]

追加

このメソッドは initialize と同様、自動的に private method になります。

: ((<Object#...
...<Array#[]=|Array/[]=>)) [compat]

配列のインデックスとして Symbol を指定した場合、Symbol#to_int を呼ば
す、例外 ((<TypeError>)) が発生するようになりました。
((<ruby-list:37217>))

: ((<Array/Array.new>)) [compat]
: ((<Array#fill|Array/fill>))...
...由です(ENVが返す文字列を変更しても環境変数自体に影響がない)。

=> -:2:in `sub!': can't modify frozen string (TypeError)
from -:2
ruby 1.8.0 (2003-06-09) [i586-linux]

=== Hash

: ((<Hash#update|Hash/update>)) [compat]

ブロックを...

ruby 1.8.3 feature (18.0)

ruby 1.8.3 feature *((<ruby 1.8 feature>)) *((<ruby 1.8.2 feature>))

...$ ruby-1.8.2 -e 'p File.join(1, 2)'
"1/2"

$ ruby-1.8.3 -e 'p File.join(1, 2)'
-e:1:in `join': can't convert Fixnum into String (TypeError)
from -e:1

=== 2005-09-16
: File.extname [ruby] [compat]

与えられた pathname がピリオドで終る場合、ピリオド...
...製できなくなりました。((<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]
ディレクトリへのシンボリックリン...

クラス/メソッドの定義 (18.0)

クラス/メソッドの定義 * クラス/メソッドの定義: * class * singleton_class * module * method * operator * nest_method * eval_method * singleton_method * class_method * limit * 定義に関する操作: * alias * undef * defined

...定義を書くとク
ラスの定義の追加になります。
ただし、元のクラスと異なるスーパークラスを指定すると TypeError が発生します。

//emlist[][ruby]{
class Foo < Array
def foo
end
end

# 定義を追加(スーパークラス Array を明示的に指...
...def bar
end
end

# 間違ったスーパークラスを指定するとエラー
class Foo < String
end
# => superclass mismatch for class Foo (TypeError)
//}

クラス定義式の中は self がそのクラスであることと、
limitのデフォルトが異なること以外
にトップレ...
...lic、Module#private、
Module#protected を用いて変更できます。ただし Object#initialize という名前のメソッドと
Object#initialize_copy という名前のメソッド
は定義する場所に関係なく常に private になります。

//emlist[例][ruby]{
def foo...