るりまサーチ

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

別のキーワード

  1. yaml/dbm select
  2. psych to_yaml
  3. yaml/store new
  4. yaml yaml
  5. yaml/dbm dbm

ライブラリ

モジュール

キーワード

検索結果

<< 1 2 3 ... > >>

yaml (38380.0)

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

...ある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 st...
...true
//}

//emlist[例2: 構造化されたハッシュ][ruby]{
require 'yaml'
require 'date'

str_l = <<~YAML_EOT
Tanaka Taro: {age: 35, birthday: 1970-01-01}
Suzuki Suneo: {
age: 13,
birthday: 1992-12-21
}
YAML
_EOT

str_r = {}
str_r["Tanaka Taro"] = {
"age" => 35,
"birthday" =>...
...-25 17:03:12 +0900
# target:YAML
# 例を加えた。
# アブストラクトを修正した。
#
//}

=== バックエンドの選択

yaml
ライブラリでは、以下のライブラリをバックエンドとして使用します。

* psych ライブラリ: YAML バージョン 1.1 を扱...

psych (38278.0)

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

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


=== 概要

Psych
を用いると YAML のパースと出力ができます。
これらの機能は libyaml http://pyyaml.org/wiki/LibYAML を用...
...ジェクトと YAML フォーマットの
データの間を相互に変換することができます。

=== 基本的な使いかた

//emlist[][ruby]{
require 'psych'
# YAML のテキストをパースする
Psych
.load("--- foo") # => "foo"

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

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


==== YAML のパース

Psych
YAML ドキュメントのパースができます。
ユーザの必要に応じ、高...

Psych::Nodes::Node#yaml(io=nil, options={}) -> String | IO (29130.0)

AST を YAML ドキュメントに変換します。

...AST を YAML ドキュメントに変換します。

io に IO オブジェクトを指定した場合は、その
オブジェクトに変換後のドキュメントが書き込まれます。
この場合は io を返り値として返します。

io を省略した(nil を指定した)場合...
...のドキュメントを
文字列で返します。

Psych
::Nodes::Stream 以外を変換しようとすると、AST として不正で
あるためエラーが発生します。

options には以下が指定できます。

: :version
YAML
document に付加するバージョンを [major, mino...

Psych.libyaml_version -> [Integer, Integer, Integer] (23106.0)

libyaml のバージョンを返します。

...libyaml のバージョンを返します。

[major, minor patch-level] という 3 つの整数からなる配列を返します。

@see Psych::LIBYAML_VERSION...

Psych::LIBYAML_VERSION -> String (23100.0)

libyaml のバージョン。

...libyaml のバージョン。...

絞り込み条件を変える

Object#psych_to_yaml(options = {}) -> String (20267.0)

オブジェクトを YAML document に変換します。

...オブジェクトを YAML document に変換します。

options でオプションを指定できます。
Psych
.dump と同じなので詳しくはそちらを参照してください。

syck に to_yaml メソッドがあるため、
psych
_to_yaml が別名として定義されています。...
...将来的に
syck が廃止された場合 psych_to_yaml は廃止
される予定であるため、特別の事情がない限り to_yaml を用いてください。

@param options 出力オプション
@see Psych.dump...

Module#psych_yaml_as(tag) -> () (20215.0)

クラスと tag の間を関連付けます。

...関連付けます。

これによって tag 付けされた YAML ドキュメントを Ruby のオブジェクトに
変換したりその逆をしたりすることができます。

この method は deprecated です。 Object.yaml_tag を
かわりに使ってください。

@param tag 対...

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

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

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

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

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

再帰的なデ...
...Date クラスを許可するには
以下のように書いてください:

//emlist[permitted_classes: に Date を渡した例][ruby]{
Psych
.safe_load(yaml, permitted_classes: [Date])
//}

すると上のクラス一覧に加えて Date クラスが読み込まれます。

エイリアスは...
...x
yaml = Psych.dump x
Psych
.safe_load yaml # => 例外発生
Psych
.safe_load yaml, aliases: true # => エイリアスが読み込まれる
//}

yaml
に許可されていないクラスが含まれていた場合は、
Psych
::DisallowedClass 例外が発生します。

yaml
がエ...

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

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

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

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

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

再帰的なデ...
...Date クラスを許可するには
以下のように書いてください:

//emlist[permitted_classes: に Date を渡した例][ruby]{
Psych
.safe_load(yaml, permitted_classes: [Date])
//}

すると上のクラス一覧に加えて Date クラスが読み込まれます。

エイリアスは...
...x
yaml = Psych.dump x
Psych
.safe_load yaml # => 例外発生
Psych
.safe_load yaml, aliases: true # => エイリアスが読み込まれる
//}

yaml
に許可されていないクラスが含まれていた場合は、
Psych
::DisallowedClass 例外が発生します。

yaml
がエ...

Psych.parse(yaml, filename = nil) -> Psych::Nodes::Document (17300.0)

YAML ドキュメントをパースし、YAML の AST を返します。

...YAML ドキュメントをパースし、YAML の AST を返します。

入力に複数のドキュメントが含まれている場合は、先頭のものを AST に変換して
返します。

filename はパース中に発生した例外のメッセージに用います。

AST について...
... Psych::Nodes を参照してください。

@param yaml YAML ドキュメント(文字列 or IO オブジェクト)
@param filename Psych::SyntaxError 発生時にファイル名として表示する文字列。
@raise Psych::SyntaxError YAMLドキュメントに文法エラーが発見され...
...たときに発生します
@see Psych.load

//emlist[例][ruby]{
Psych
.parse("---\n - a\n - b") # => #<Psych::Nodes::Document:...>

begin
Psych
.parse("--- `", "file.txt")
rescue Psych::SyntaxError => ex
p ex.file # => 'file.txt'
p ex.message # => "(file.txt): found character that cannot st...

絞り込み条件を変える

Psych.parse_stream(yaml) -> Psych::Nodes::Stream (17299.0)

YAML ドキュメントをパースします。 yaml が 複数の YAML ドキュメントを含む場合を取り扱うことができます。

...
YAML
ドキュメントをパースします。
yaml
が 複数の YAML ドキュメントを含む場合を取り扱うことができます。

ブロックなしの場合は YAML の AST (すべての YAML ドキュメントを
保持した Psych::Nodes::Stream オブジェクト)を返します...
...そのブロックに最初の YAML ドキュメント
Psych::Nodes::Document オブジェクトが渡されます。
この場合の返り値には意味がありません。


@see Psych::Nodes

//emlist[例][ruby]{
Psych
.parse_stream("---\n - a\n - b") # => #<Psych::Nodes::Stream:0x00>
//}...
<< 1 2 3 ... > >>