doctree
doctree copied to clipboard
Hash#shiftのハッシュが空かつデフォルト値が設定されている場合の説明とサンプルコードの実行結果が古かったのを修正
Hash#shiftのハッシュが空かつデフォルト値が設定されている場合の説明とサンプルコードの実行結果がruby-3.3.0の内容になっていなかったため修正しました。
$ docker run -it --rm rubylang/all-ruby ./all-ruby -e 'h1 = Hash.new("default value"); p h1; p h1.shift'
...
ruby-1.4.6 {}
nil
ruby-1.6.0 {}
"default value"
...
ruby-3.1.4 {}
"default value"
ruby-3.2.0-preview1 {}
nil
...
ruby-3.3.0 {}
nil
$ docker run -it --rm rubylang/all-ruby ./all-ruby -e 'h2 = Hash.new {|*arg| arg}; p h2; p h2.shift'
...
ruby-1.6.8 {}
nil
ruby-1.8.0 {}
[{}, nil]
...
ruby-3.1.4 {}
[{}, nil]
ruby-3.2.0-preview1 {}
nil
...
ruby-3.3.0 {}
nil
3.2以前と以降で説明を分けました。 改めてご確認の程よろしくお願いいたします。
#@until
を使って分岐するように変更しました