種類
- クラス (4)
- インスタンスメソッド (3)
- 特異メソッド (3)
- モジュール (1)
クラス
-
Psych
:: Handler (1) -
Psych
:: Nodes :: Alias (3)
モジュール
- Psych (2)
検索結果
先頭5件
-
Psych
:: Nodes :: Alias (54121.0) -
YAML の alias http://yaml.org/spec/1.1/#alias を表すクラス。
YAML の alias http://yaml.org/spec/1.1/#alias を表すクラス。
anchor で別の YAML の要素を指します。
alias は YAML の AST の葉のノードであり、子ノードを持ちません。 -
Psych
:: Handler # alias(anchor) -> () (18412.0) -
anchor という名前の alias を見付けたときに呼び出されます。
anchor という名前の alias を見付けたときに呼び出されます。
必要に応じてこのメソッドを override してください。
@param anchor aliasのアンカー文字列
=== 例
以下の YAMLドキュメントは自分自身への参照を持つ配列を表しています。
--- &ponies
- first element
- *ponies
この &ponies が anchor で *ponies が alias です。この場合、
alias メソッドは "poines" という引数で呼び出されます。 -
Psych
:: BadAlias (18055.0) -
YAML の alias が不正である(本体が見つからない)というエラーを表す例外です。
YAML の alias が不正である(本体が見つからない)というエラーを表す例外です。 -
Psych
:: Nodes :: Alias . new(anchor) -> Psych :: Nodes :: Alias (9358.0) -
新たな Alias オブジェクトを生成します。
新たな Alias オブジェクトを生成します。
anchor で指す先の anchor を指定します。
@param anchor 指す先の anchor -
Psych
:: Nodes :: Alias # anchor -> String (9091.0) -
alias が指す先の anchor を返します。
...alias が指す先の anchor を返します。
@see Psych::Nodes::Alias#anchor=,
Psych::Nodes::Alias.new... -
Psych
:: Nodes :: Alias # anchor=(val) (9091.0) -
alias が指す先の anchor を変更します。
...alias が指す先の anchor を変更します。
@param val 設定する anchor
@see Psych::Nodes::Alias#anchor,
Psych::Nodes::Alias.new... -
Psych
. safe _ load(yaml , legacy _ permitted _ classes=[] , legacy _ permitted _ symbols=[] , legacy _ aliases=false , legacy _ filename=nil) -> object (307.0) -
安全に YAML フォーマットの文書を読み込み Ruby のオブジェクトを生成して返します。
...えば Date クラスを許可するには
以下のように書いてください:
//emlist[permitted_classes: に Date を渡した例][ruby]{
Psych.safe_load(yaml, permitted_classes: [Date])
//}
すると上のクラス一覧に加えて Date クラスが読み込まれます。
エイリア......の例][ruby]{
x = []
x << x
yaml = Psych.dump x
Psych.safe_load yaml # => 例外発生
Psych.safe_load yaml, aliases: true # => エイリアスが読み込まれる
//}
yaml に許可されていないクラスが含まれていた場合は、
Psych::DisallowedClass 例外が発生......します。
yaml がエイリアスを含んでいてキーワード引数 aliases が false の時、
Psych::BadAlias 例外が発生します。
filename はパース中に発生した例外のメッセージに用います。
キーワード引数 symbolize_names に true を指定した場... -
Psych
. safe _ load(yaml , permitted _ classes: [] , permitted _ symbols: [] , aliases: false , filename: nil , fallback: nil , symbolize _ names: false) -> object (307.0) -
安全に YAML フォーマットの文書を読み込み Ruby のオブジェクトを生成して返します。
...えば Date クラスを許可するには
以下のように書いてください:
//emlist[permitted_classes: に Date を渡した例][ruby]{
Psych.safe_load(yaml, permitted_classes: [Date])
//}
すると上のクラス一覧に加えて Date クラスが読み込まれます。
エイリア......の例][ruby]{
x = []
x << x
yaml = Psych.dump x
Psych.safe_load yaml # => 例外発生
Psych.safe_load yaml, aliases: true # => エイリアスが読み込まれる
//}
yaml に許可されていないクラスが含まれていた場合は、
Psych::DisallowedClass 例外が発生......します。
yaml がエイリアスを含んでいてキーワード引数 aliases が false の時、
Psych::BadAlias 例外が発生します。
filename はパース中に発生した例外のメッセージに用います。
キーワード引数 symbolize_names に true を指定した場... -
Psych
:: Nodes (43.0) -
Psych が中間データとして利用している AST (Abstract Syntax Tree) に 関するモジュール。
...Psych が中間データとして利用している AST (Abstract Syntax Tree) に
関するモジュール。
Psych.load によって YAML ドキュメントを Ruby オブジェクトに変換
するときには、一度中間的な AST に変換され、その AST が Ruby の
オブジェクト......。
逆向き、つまり Psych.dump で Ruby のオブジェクトを
YAML ドキュメントに変換するときには、中間的な AST に変換してから
それを YAML ドキュメントに変換します。
YAML AST の各ノードのクラスはすべて Psych::Nodes の下にありま......を1つ持つリストの AST を構築しています。
# Create our nodes
stream = Psych::Nodes::Stream.new
doc = Psych::Nodes::Document.new
seq = Psych::Nodes::Sequence.new
scalar = Psych::Nodes::Scalar.new('foo')
# Build up our tree
stream.children << doc
doc.children... -
Psych
:: Nodes :: Mapping (25.0) -
YAML の mapping http://yaml.org/spec/1.1/#mapping を表すクラスです。
...す。
Psych::Nodes::Mapping は 0 個以上の子ノードを持つことができます。
子ノードの個数は偶数でなければなりません。
子ノードは以下のいずれかクラスのインスタンスでなければなりません。
* Psych::Nodes::Sequence
* Psych::Node......s::Mapping
* Psych::Nodes::Scalar
* Psych::Nodes::Alias
子ノードは mapping のキーと値が交互に並んでいます。
ast = Psych.parse(<<EOS)
%YAML 1.1
---
x: y
u: v
EOS
p ast.root.children.map{|v| v.value } # => ["x", "y", "u", "v"]... -
Psych
:: Nodes :: Sequence (25.0) -
YAML sequence http://yaml.org/spec/1.1/#sequence/syntax を表すクラスです。
...を付加することができます。
この例では Psych::Nodes::Sequence#anchor は "A" を返します。
%YAML 1.1
---
&A [
"This sequence",
"has an anchor"
]
tag を付けることもできます。この例では
Psych::Nodes::Sequence#tag は "tag:yaml.org,2002:seq"
(!s......s a tag"
]
Psych::Nodes::Sequence は 0 個以上の子ノードを持つことができます。
子ノードは以下のいずれかクラスのインスタンスでなければなりません。
* Psych::Nodes::Sequence
* Psych::Nodes::Mapping
* Psych::Nodes::Scalar
* Psych::Nodes::Ali...