るりまサーチ

最速Rubyリファレンスマニュアル検索!
404件ヒット [201-300件を表示] (0.012秒)

別のキーワード

  1. psych dump
  2. _builtin marshal_dump
  3. _builtin dump
  4. json dump
  5. marshal dump

検索結果

<< < 1 2 3 4 5 > >>

Marshal フォーマット (624.0)

Marshal フォーマット フォーマットバージョン 4.8 を元に記述しています。

...なります。

//emlist[][ruby]{
p Marshal.dump(nil).unpack1("x2 a*") # => "0"
p Marshal.dump(true).unpack1("x2 a*") # => "T"
p Marshal.dump(false).unpack1("x2 a*") # => "F"
//}

Ruby 2.1 以前では、インスタンス変数を設定しても dump されません。
Ruby 2.2 以降は freeze...
...形式 2 との区別のためです。

//emlist[例][ruby]{
p Marshal.dump(-1).unpack1("x2 a*") # => "i\xFA"
p Marshal.dump(0).unpack1("x2 a*") # => "i\x00"
p Marshal.dump(1).unpack1("x2 a*") # => "i\x06"
p Marshal.dump(2).unpack1("x2 a*") # => "i\a" ("i\x07")
//}

形式 1 の範囲を超...
.../emlist[例][ruby]{
class Foo
end
p Marshal.dump(Foo.new).unpack("x2 a a c a*")
# => ["o", ":", 8, "Foo\x00"]
//}

=== 'u'

_dump、_load を定義していれば 'u' になります。
インスタンス変数は dump されなくなるので、_dump/_load で対応する必要があります。

/...

ruby 1.6 feature (144.0)

ruby 1.6 feature ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン になります。

...l
nil
nil
nil

: 2002-03-14 拡張ライブラリの autoload

拡張ライブラリに対して autoload が効いていませんでした。((<ruby-dev:16379>))

autoload :Fcntl, "fcntl"
require "fcntl"

=> -:2:in `require': uninitialized constant Fcn...
...6) [i586-linux]
5

: 2002-03-03 ((<Marshal/Marshal.load>))

Marshal.load が 1.7 のメソッド Proc#yield を呼んでいました。
((<ruby-dev:16178>))

Marshal.load(Marshal.dump('foo'), proc {|o| p o})
=> -:1:in `load': undefined method `yield' for #<Proc:0x401b1b30> (NameEr...
...ntation fault

=> ruby 1.6.5 (2001-10-15) [i586-linux]
MatchData
NotImplementedError
FloatDomainError
Load
Error
Float
Binding
SignalException
Module
-:6:in `method_missing': stack level too dee...

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

...t_value>)) [new]
: ((<LocalJumpError#reason|LocalJumpError/reason>)) [new]

追加

=== Marshal

: ((<Marshal/Object#marshal_load>)) [new]
: ((<Marshal/Object#marshal_dump>)) [new]

追加 ((<ruby-dev:21016>))

=== MatchData

: ((<MatchData#captures|MatchData/captures>)) [new]

追加。((<R...
...=== Module

: ((<組み込み関数/autoload>)) [change]
: ((<組み込み関数/autoload?>)) [new]
: ((<Module#autoload|Module/autoload>)) [new]
: ((<Module#autoload?|Module/autoload>)) [new]

ネストしたクラス/モジュールに対する autoload 指定が可能になりました。...
...定した load でロード
されるスクリプトのもとではモジュールの機能を self に
((<Object/extend>)) するように変更されました。

: ((<Module#include|Module/include>)) [change], [experimental]

wrapper モジュールで評価される file (load(file, true)...

yaml (54.0)

構造化されたデータを表現するフォーマットであるYAML (YAML Ain't Markup Language) を扱うためのライブラリです。

...イブラリです。

//emlist[例1: 構造化された配列][ruby]{
require 'yaml'

data = ["Taro san", "Jiro san", "Saburo san"]
str_r = YAML.dump(data)

str_l = <<~YAML_EOT
---
- Taro san
- Jiro san
- Saburo san
YAML_EOT

p str_r == str_l # => true
//}

//emlist[例2: 構造化され...
...e" => 35,
"birthday" => Date.new(1970, 1, 1)
}
str_r["Suzuki Suneo"] = {
"age" => 13,
"birthday" => Date.new(1992, 12, 21)
}

p str_r == YAML.load(str_l) # => true
//}

//emlist[例3: 構造化されたログ][ruby]{
require 'yaml'
require 'stringio'

strio_r = StringIO.new(<<~YAML_EOT)
---...
...正した。
---
time: 2008-02-24 17:00:35 +09:00
target: YAML
version: 3
log: |
アブストラクトを書いた。

YAML_EOT

YAML.load_stream(strio_r).sort_by{ |a| a["version"] }.each do |obj|
puts "version %d\ntime %s\ntarget:%s\n%s\n" % obj.values_at("version", "time", "target"...

psych (36.0)

yaml のバックエンドライブラリです。libyaml ベースで作成されてお り、YAML バージョン 1.1 を扱う事ができます。

...ストをパースする
Psych.load("--- foo") # => "foo"

# YAML のデータを出力
Psych.dump("foo") # => "--- foo\n...\n"
{ :a => 'b'}.to_yaml # => "---\n:a: b\n"
//}

基本的な使い方はこれだけです。簡単な用事は
Psych.load、Psych.dump で片付きます。


==== YAML...
...準 パース API

YAML ドキュメントをパースして Ruby のオブジェクトに変換することができます。
詳しくは Psych.load を見てください。


==== YAML ドキュメントの出力

Psych は YAML ドキュメントを出力する機能があります。
高・中...
...
Psych::Nodes、Psych::Nodes::Node、Psych::TreeBuilder
を参照してください。

===== 高水準出力 API

高水準 API を使うと Ruby のデータ構造(オブジェクト)を YAML のドキュメントに
変換できます。
詳しくは Psych.dump を参照してください。...

絞り込み条件を変える

Marshal::MAJOR_VERSION -> Integer (28.0)

Marshal.#dump が出力するデータフォーマットのバージョン番号です。

...Marshal.#dump が出力するデータフォーマットのバージョン番号です。

Marshal.#load は、メジャーバージョンが異なるか、バージョンの大きな
マーシャルデータを読み込んだとき例外 TypeError を発生させます。

マイナーバージョ...
...のときには警告メッセージが出力されます

マーシャルされたデータのバージョン番号は以下のようにして取得するこ
とができます。

//emlist[例][ruby]{
obj = Object.new
major, minor = Marshal.dump(obj).unpack("cc")
p [major, minor]
# => [4, 8]
//}...

Marshal::MINOR_VERSION -> Integer (28.0)

Marshal.#dump が出力するデータフォーマットのバージョン番号です。

...Marshal.#dump が出力するデータフォーマットのバージョン番号です。

Marshal.#load は、メジャーバージョンが異なるか、バージョンの大きな
マーシャルデータを読み込んだとき例外 TypeError を発生させます。

マイナーバージョ...
...のときには警告メッセージが出力されます

マーシャルされたデータのバージョン番号は以下のようにして取得するこ
とができます。

//emlist[例][ruby]{
obj = Object.new
major, minor = Marshal.dump(obj).unpack("cc")
p [major, minor]
# => [4, 8]
//}...

Object#clone(freeze: nil) -> object (24.0)

オブジェクトの複製を作成して返します。

...low copy)といいます。

深い(deep)コピーが必要な場合には、
Marshalモジュールを利用して
//emlist[][ruby]{
Marshal.load(Marshal.dump(obj))
//}
このように複製を作成する方法があります。ただしMarshal出来ないオブジェクトが
含まれている...
...には使えません。

//emlist[][ruby]{
obj = ["a","b","c"]

obj_d = obj.dup
obj_d[0] << "PLUS"

p obj #=> ["aPLUS", "b", "c"]
p obj_d #=> ["aPLUS", "b", "c"]

obj_m = Marshal.load(Marshal.dump(obj))
obj_m[1] << "PLUS"

p obj #=> ["aPLUS", "b", "c"]
p obj_m #=> ["aPLUS", "bPLUS", "c"]
//}...

Object#dup -> object (24.0)

オブジェクトの複製を作成して返します。

...low copy)といいます。

深い(deep)コピーが必要な場合には、
Marshalモジュールを利用して
//emlist[][ruby]{
Marshal.load(Marshal.dump(obj))
//}
このように複製を作成する方法があります。ただしMarshal出来ないオブジェクトが
含まれている...
...には使えません。

//emlist[][ruby]{
obj = ["a","b","c"]

obj_d = obj.dup
obj_d[0] << "PLUS"

p obj #=> ["aPLUS", "b", "c"]
p obj_d #=> ["aPLUS", "b", "c"]

obj_m = Marshal.load(Marshal.dump(obj))
obj_m[1] << "PLUS"

p obj #=> ["aPLUS", "b", "c"]
p obj_m #=> ["aPLUS", "bPLUS", "c"]
//}...
<< < 1 2 3 4 5 > >>