種類
- 文書 (84)
- インスタンスメソッド (22)
- 特異メソッド (3)
クラス
- Object (11)
モジュール
- Singleton (11)
オブジェクト
- ENV (3)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (11) -
NEWS for Ruby 2
. 0 . 0 (11) -
NEWS for Ruby 2
. 5 . 0 (7) -
initialize
_ copy (11) -
ruby 1
. 6 feature (11) -
ruby 1
. 8 . 2 feature (11) -
ruby 1
. 8 . 3 feature (11) -
ruby 1
. 9 feature (11) - クラス/メソッドの定義 (11)
検索結果
先頭5件
-
ENV
. dup -> () (18117.0) -
TypeErrorを発生させます。
...TypeErrorを発生させます。
3.0 以前では Object.new と同様の ENV とは無関係の有用ではないオブジェクトを返していたため、3.1 からは例外が発生するようになりました。
詳細はENV.cloneを参照してください。
@see ENV.clone... -
Singleton
# dup (18117.0) -
@raise TypeError このメソッドを呼び出した場合に発生します。
...@raise TypeError このメソッドを呼び出した場合に発生します。... -
ruby 1
. 6 feature (102.0) -
ruby 1.6 feature ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン になります。
...となる文字列を dup & freeze していませんでした。
a = "key"
h = Hash[a,"val"]
h.keys[0].upcase!
p a
=> ruby 1.6.7 (2002-03-01) [i586-linux]
"KEY"
=> -:3:in `upcase!': can't modify frozen string (TypeError)
fr......規則を
使用するようになりました。
p sprintf("%d", nil)
=> -:1:in `sprintf': no implicit conversion from nil (TypeError)
from -:1
ruby 1.6.7 (2002-03-01) [i586-linux]
=> ruby 1.6.7 (2002-07-30) [i586-linux]
"0"
: 2002......プの dup を close_write するとエラーになっていました。
((<ruby-dev:17155>))
open("|-","r+") {|f|
if f
f.dup.close_write
else
sleep 1
end
}
=> ruby 1.6.7 (2002-03-01) [i586-linux]
-:3:in `close_write': closing non-duplex IO f... -
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への変更点(まとめ)/サポートプラットフォームの追加>))
.../to_int>)) [new]
追加。
=== Hash
: ((<Hash#merge|Hash/merge>)) [new]
: ((<Hash#merge!|Hash/merge!>)) [new]
追加。Hash#merge は、hash.dup.update と同じ。
Hash#merge! は、Hash#update の別名 ((<ruby-talk:59777>)), ((<ruby-dev:19463>))
: ((<Hash#default_proc|Hash/default_proc......<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]
ブロックを... -
Object
# initialize _ copy(obj) -> object (42.0) -
(拡張ライブラリによる) ユーザ定義クラスのオブジェクトコピーの初期化メソッド。
...obj の内容で置き換えます。ただ
し、self のインスタンス変数や特異メソッドは変化しません。
Object#clone, Object#dupの内部で使われています。
initialize_copy は、Ruby インタプリタが知り得ない情報をコピーするた
めに使用(定義......保持させない場合がありますが、そういった内部情
報を initialize_copy でコピーするよう定義しておくことで、dup や clone
を再定義する必要がなくなります。
デフォルトの Object#initialize_copy は、 freeze チェックおよび型のチェ......se TypeError レシーバが freeze されているか、obj のクラスがレシーバ
のクラスと異なる場合に発生します。
@see Object#clone,Object#dup
以下に例として、dup や clone がこのメソッドをどのように利用しているかを示します。
obj.dup... -
ruby 1
. 8 . 2 feature (24.0) -
ruby 1.8.2 feature ruby 1.8.2 での ruby 1.8.1 からの変更点です。
...1 -e 'p [nil].pack("L")'
"\000\000\000\000"
$ ruby-1.8.2 -e 'p [nil].pack("L")'
-e:1:in `pack': cannot convert nil into Integer (TypeError)
from -e:1
$ ruby-1.8.2 -e 'p [nil].pack("P")'
"\000\000\000\000"
=== 2004-10-27
: CGI [lib] [bug]
無限ループに陥......tore#transaction(true) を呼
び出しても例外 Errno::ENOENT が発生しなくなりました。((<ruby-dev:24561>))
=== 2004-10-20
: Proc#dup [new]
追加 ((<ruby-talk:116915>))
=== 2004-10-19
: ARGF [change]
コマンドライン引数に与えたファイルを読んだ後には......ラスを再定義した時 TypeError を投げるようになりました。
((<ruby-list:39567>))
$ ruby-1.8.2 -e '
class Foo
Bar = 1
end
class Foo < String
Baz = 2
end
'
-e:6: superclass mismatch for class Foo (TypeError)
=== 2004-04-19
: Hash#==... -
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のデフォルトが異なること以外
にトップレ......オブジェクトに対してだけ有効になります。
Object#clone で生成したオブジェクトには引き継がれますが,
Object#dup で生成したオブジェクトには引き継がれません.
rescue/ensure 節を指定し、例外処理ができます。
例外処理に... -
NEWS for Ruby 2
. 0 . 0 (12.0) -
NEWS for Ruby 2.0.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
...otected method now returns false
unless the second argument is true.
* Object#respond_to_missing?, Object#initialize_clone, Object#initialize_dup
* private になりました
* Thread#join, Thread#value
* 上を参照
* Mutex#lock, Mutex#unlock, Mutex#try_lock, Mutex#synchronize......s_from
* openssl
* Consistently raise an error when trying to encode nil values. All instances
of OpenSSL::ASN1::Primitive now raise TypeError when calling to_der on an
instance whose value is nil. All instances of OpenSSL::ASN1::Constructive
raise NoMethodError in the same... -
NEWS for Ruby 2
. 5 . 0 (12.0) -
NEWS for Ruby 2.5.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
...(Ruby 2.1以降の "literal".freeze と同じです) 13295
* String#casecmp, String#casecmp? に文字列でない引数を与えた場合、TypeErrorを発生させずにnilを返すようにしました
13312
* String#start_with? は正規表現を受け取れるようになりま......Decimal::VERSION を追加
* 非推奨(1.4.0で削除予定)
* BigDecimal.new
* BigDecimal.ver
* BigDecimal#clone と BigDecimal#dup は新しいインスタンスを作らなくなりました。selfを返します。
* coverage
* ブランチカバレッジとメソッ... -
ruby 1
. 9 feature (12.0) -
ruby 1.9 feature ruby version 1.9.0 は開発版です。 以下にあげる機能は将来削除されたり互換性のない仕様変更がなされるかもしれません。 1.9.1 以降は安定版です。 バグ修正がメインになります。
...ッドを呼び出せなくなりました。
=== 2005-06-09
: ENV.[]= [change]
ENV[key] = nil で要素を削除する機能は失われ、TypeError になるようになりました。
((<ruby-list:40865>))
=== 2005-06-08
: Array#nitems [compat]
Array#nitems にブロックを渡せる......に入れ換えるようになりました。
((<zw-kdoo(2004-10-24)|URL:http://yowaken.dip.jp/tdiary/20041024.html#c02>))
=== 2004-10-20
: Proc#dup [new]
追加 ((<ruby-talk:116915>))
: require [change]
feature が $" に追加されるタイミングが load された後に変わりま...