るりまサーチ

最速Rubyリファレンスマニュアル検索!
28件ヒット [1-28件を表示] (0.014秒)
トップページ > クエリ:Array[x] > クエリ:freeze[x] > 種類:特異メソッド[x]

別のキーワード

  1. array fill
  2. array sample
  3. array []
  4. array fetch
  5. array new

ライブラリ

クラス

モジュール

キーワード

検索結果

Psych.safe_load(yaml, permitted_classes: [], permitted_symbols: [], aliases: false, filename: nil, fallback: nil, symbolize_names: false, freeze: false) -> object (144.0)

安全に YAML フォーマットの文書を読み込み Ruby のオブジェクトを生成して返します。

...ォルトでは以下のクラスのオブジェクトしか変換しません。

* TrueClass
* FalseClass
* NilClass
* Numeric
* String
* Array
* Hash

再帰的なデータ構造はデフォルトでは許可されていません。

任意のクラスを許可するにはキーワード...
..."bar"}
//}

キーワード引数 freeze に true を指定した場合は再帰的に
Object#freeze したオブジェクトを返します。

//emlist[freeze: true の例][ruby]{
require "psych"

data = <<~EOS
aaa:
bbb: [hoge]
EOS

yaml = Psych.load(data, freeze: true)
p yaml
# => {"aaa"=>{"bbb...
...true を指定した場合は変換します。デフォルトでは
文字列に変換されます。
@param freeze true を指定すると再帰的に freeze されたオブジェクトを返します。
デフォルトは false です。...

Psych.safe_load(yaml, legacy_permitted_classes=[], legacy_permitted_symbols=[], legacy_aliases=false, legacy_filename=nil) -> object (44.0)

安全に YAML フォーマットの文書を読み込み Ruby のオブジェクトを生成して返します。

...ォルトでは以下のクラスのオブジェクトしか変換しません。

* TrueClass
* FalseClass
* NilClass
* Numeric
* String
* Array
* Hash

再帰的なデータ構造はデフォルトでは許可されていません。

任意のクラスを許可するにはキーワード...
..."bar"}
//}

キーワード引数 freeze に true を指定した場合は再帰的に
Object#freeze したオブジェクトを返します。

//emlist[freeze: true の例][ruby]{
require "psych"

data = <<~EOS
aaa:
bbb: [hoge]
EOS

yaml = Psych.load(data, freeze: true)
p yaml
# => {"aaa"=>{"bbb...
...true を指定した場合は変換します。デフォルトでは
文字列に変換されます。
@param freeze true を指定すると再帰的に freeze されたオブジェクトを返します。
デフォルトは false です。...

Hash.new(ifnone = nil) -> Hash (19.0)

空の新しいハッシュを生成します。ifnone はキーに対 応する値が存在しない時のデフォルト値です。設定したデフォルト値はHash#defaultで参照できます。

...るには、破壊的でないメソッドで再代入する必要が有ります。
また、このようなミスを防ぐためにもifnoneは freeze して破壊的操作を禁止しておくのが無難です。


@param ifnone キーに対応する値が存在しない時のデフォルト値...
...#=> ["bar"]
p h[1] #=> ["bar"]

p h[2] #=> ["bar"]
p h[2].object_id #=> 6127150

p h #=> {}


h = Hash.new([].freeze)
h[0] += [0] #破壊的でないメソッドはOK
h[1] << 1
# エラー: can't modify frozen Array (RuntimeError)
//}...
...#=> ["bar"]
p h[1] #=> ["bar"]

p h[2] #=> ["bar"]
p h[2].object_id #=> 6127150

p h #=> {}


h = Hash.new([].freeze)
h[0] += [0] #破壊的でないメソッドはOK
h[1] << 1
# エラー: can't modify frozen Array (FrozenError)
//}...

Hash.new {|hash, key| ... } -> Hash (4.0)

空の新しいハッシュを生成します。ブロックの評価結果がデフォルト値になりま す。設定したデフォルト値はHash#default_procで参照できます。

空の新しいハッシュを生成します。ブロックの評価結果がデフォルト値になりま
す。設定したデフォルト値はHash#default_procで参照できます。

値が設定されていないハッシュ要素を参照するとその都度ブロックを
実行し、その結果を返します。
ブロックにはそのハッシュとハッシュを参照したときのキーが渡されます。

@raise ArgumentError ブロックと通常引数を同時に与えると発生します。

//emlist[例][ruby]{
# ブロックではないデフォルト値は全部同一のオブジェクトなので、
# 破壊的変更によって他のキーに対応する値も変更されます。
h = Hash.new...