種類
- インスタンスメソッド (9)
- 特異メソッド (8)
- クラス (5)
- 定数 (4)
クラス
-
Psych
:: Nodes :: Node (1) -
Psych
:: Parser (9) -
Psych
:: Parser :: Mark (3) -
Psych
:: ScalarScanner (1)
モジュール
- Psych (7)
検索結果
先頭5件
-
Psych
. parse(yaml , filename = nil) -> Psych :: Nodes :: Document (117793.0) -
YAML ドキュメントをパースし、YAML の AST を返します。
...用います。
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... -
Psych
. parser -> Psych :: Parser (81910.0) -
デフォルトで使われるのパーサを返します。
デフォルトで使われるのパーサを返します。 -
Psych
. parse _ stream(yaml) -> Psych :: Nodes :: Stream (81724.0) -
YAML ドキュメントをパースします。 yaml が 複数の YAML ドキュメントを含む場合を取り扱うことができます。
...した Psych::Nodes::Stream オブジェクト)を返します。
ブロック付きの場合は、そのブロックに最初の YAML ドキュメント
の Psych::Nodes::Document オブジェクトが渡されます。
この場合の返り値には意味がありません。
@see Psych::Nodes......//emlist[例][ruby]{
Psych.parse_stream("---\n - a\n - b") # => #<Psych::Nodes::Stream:0x00>
//}... -
Psych
. parse _ file(filename) -> Psych :: Nodes :: Document (81631.0) -
filename で指定したファイルをパースして YAML の AST を返します。
...filename で指定したファイルをパースして YAML の AST を返します。
@param filename パースするファイルの名前
@raise Psych::SyntaxError YAMLドキュメントに文法エラーが発見されたときに発生します... -
Psych
. parse _ stream(yaml) {|node| . . . } -> () (81424.0) -
YAML ドキュメントをパースします。 yaml が 複数の YAML ドキュメントを含む場合を取り扱うことができます。
...した Psych::Nodes::Stream オブジェクト)を返します。
ブロック付きの場合は、そのブロックに最初の YAML ドキュメント
の Psych::Nodes::Document オブジェクトが渡されます。
この場合の返り値には意味がありません。
@see Psych::Nodes......//emlist[例][ruby]{
Psych.parse_stream("---\n - a\n - b") # => #<Psych::Nodes::Stream:0x00>
//}... -
Psych
:: Parser # parse(yaml) -> self (72364.0) -
YAML ドキュメントをパースし、イベントハンドラに イベントを逐次通知します。
...YAML ドキュメントをパースし、イベントハンドラに
イベントを逐次通知します。
@see Psych::Parser.new, Psych::Handler, Psych::Parser#handler... -
Psych
. load(yaml , filename = nil , fallback: false , symbolize _ names: false) -> object (63187.0) -
YAML ドキュメントを Ruby のデータ構造(オブジェクト)に変換します。
...に発生した例外のメッセージに用います。
@param yaml YAML ドキュメント(文字列 or IO オブジェクト)
@param filename Psych::SyntaxError 発生時にファイル名として表示する文字列。
@param fallback 引数 yaml に空のYAMLを指定した場合の戻り......raise Psych::SyntaxError YAMLドキュメントに文法エラーが発見されたときに発生します
@see Psych.parse
//emlist[例][ruby]{
Psych.load("--- a") # => 'a'
Psych.load("---\n - a\n - b") # => ['a', 'b']
begin
Psych.load("--- `", filename: "file.txt")
rescue Psych::Syn......ード引数 symbolize_names に true を指定した場合はハッシュのキー
を Symbol に変換して返します。
//emlist[例][ruby]{
Psych.load("---\n foo: bar") # => {"foo"=>"bar"}
Psych.load("---\n foo: bar", symbolize_names: true) # => {:foo=>"bar"}
//}... -
Psych
. load(yaml , filename: nil , fallback: false , symbolize _ names: false) -> object (63187.0) -
YAML ドキュメントを Ruby のデータ構造(オブジェクト)に変換します。
...に発生した例外のメッセージに用います。
@param yaml YAML ドキュメント(文字列 or IO オブジェクト)
@param filename Psych::SyntaxError 発生時にファイル名として表示する文字列。
@param fallback 引数 yaml に空のYAMLを指定した場合の戻り......raise Psych::SyntaxError YAMLドキュメントに文法エラーが発見されたときに発生します
@see Psych.parse
//emlist[例][ruby]{
Psych.load("--- a") # => 'a'
Psych.load("---\n - a\n - b") # => ['a', 'b']
begin
Psych.load("--- `", filename: "file.txt")
rescue Psych::Syn......ード引数 symbolize_names に true を指定した場合はハッシュのキー
を Symbol に変換して返します。
//emlist[例][ruby]{
Psych.load("---\n foo: bar") # => {"foo"=>"bar"}
Psych.load("---\n foo: bar", symbolize_names: true) # => {:foo=>"bar"}
//}... -
Psych
:: ScalarScanner # parse _ time(string) -> Time (27310.0) -
文字列を Time オブジェクトに変換します。
文字列を Time オブジェクトに変換します。
@param string 変換文字列 -
Psych
:: Parser (27223.0) -
YAML のパーサ。
...ュメントを
別のフォーマット変換したりします。
Psych::Emitter を使うとパースしたドキュメントを元通りに出力
することもできます。
Psych::Parser が生成するイベントは Psych::Handler
を見てください。
以下の例では YAML ドキ......or detecting scalar values
class ScalarHandler < Psych::Handler
def scalar value, anchor, tag, plain, quoted, style
puts value
end
end
parser = Psych::Parser.new(ScalarHandler.new)
parser.parse(yaml_document)
次の例は Psych::Emitter にパースの結果を戻していま......力をパース→YAMLフォーマットで STDERR に出力
という流れになっています。
parser = Psych::Parser.new(Psych::Emitter.new($stderr))
parser.parse($stdin)
Psych::Parser と Psych::TreeBuilder を組み合わせると
YAML の AST を構築することができます。... -
Psych
:: Parser # mark -> Psych :: Parser :: Mark (18658.0) -
パーサが現在読み込んでいる入力上の位置を Psych::Parser::Mark オブジェクト で返します。
...パーサが現在読み込んでいる入力上の位置を Psych::Parser::Mark オブジェクト
で返します。... -
Psych
:: Parser . new(handler = Handler . new) -> Psych :: Parser (18628.0) -
新たなパーサオブジェクトを生成して返します。
...新たなパーサオブジェクトを生成して返します。
handler で YAML のイベントを処理するハンドラを指定します。
詳しくは Psych::Parser を参照してください。
@param handler YAML のイベントを処理するハンドラ... -
Psych
:: Parser # handler -> Psych :: Handler (18328.0) -
セットされているイベントハンドラを返します。
...セットされているイベントハンドラを返します。
@see Psych::Parser#handler=... -
Psych
:: Parser # handler=(val) (18025.0) -
イベントハンドラをセットします。
...イベントハンドラをセットします。
@param val セットするハンドラ
@see Psych::Parser#handler=... -
Psych
:: Parser :: UTF16BE -> Integer (18025.0) -
UTF-16BE エンコーディングを表します。
...UTF-16BE エンコーディングを表します。
@see Psych::Handler#start_stream... -
Psych
:: Parser :: UTF16LE -> Integer (18025.0) -
UTF-16LE エンコーディングを表します。
...UTF-16LE エンコーディングを表します。
@see Psych::Handler#start_stream... -
Psych
:: Parser :: UTF8 -> Integer (18025.0) -
UTF-8 エンコーディングを表します。
...UTF-8 エンコーディングを表します。
@see Psych::Handler#start_stream... -
Psych
:: Parser :: ANY -> Integer (18007.0) -
「任意の」エンコーディングを意味します。
「任意の」エンコーディングを意味します。 -
Psych
:: Parser :: Mark (18007.0) -
YAML document の位置を表現するクラスです。
YAML document の位置を表現するクラスです。 -
Psych
:: Parser :: Mark # column -> Integer (18007.0) -
行の先頭からの文字数。
行の先頭からの文字数。 -
Psych
:: Parser :: Mark # index -> Integer (18007.0) -
先頭からの文字数。
先頭からの文字数。 -
Psych
:: Parser :: Mark # line -> Integer (18007.0) -
先頭からの行数。
先頭からの行数。 -
Psych
:: Emitter (9271.0) -
Psych::Parser でパースし、生じたイベントから YAML ドキュメントを再構築するようなハンドラです。
...Psych::Parser でパースし、生じたイベントから
YAML ドキュメントを再構築するようなハンドラです。
以下の例では STDIN から YAML ドキュメントを入力し、
再構築した YAML ドキュメントを STDERR に出力します。
parser = Psych::Pars......w(Psych::Emitter.new($stderr))
parser.parse($stdin)
また、以下のようにイベントを手動で発生させることで
YAML ドキュメントを構築させることもできます。
各メソッドの意味については Psych::Handler を参照してください。
require 'psych'......put = StringIO.new
emitter = Psych::Emitter.new(output)
emitter.start_stream(Psych::Parser::UTF8)
emitter.start_document([1, 1], [], false)
emitter.start_mapping(nil, nil, false, Psych::Nodes::Mapping::BLOCK)
emitter.scalar("a", nil, nil, true, false, Psych::Nodes::Scalar::PLAIN)
emit... -
Psych
:: Nodes :: Mapping (9133.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
:: TreeBuilder (9115.0) -
YAML AST を構築するためのクラスです。
...す。
Psych::Parser.new に渡して YAML ドキュメントを YAML AST に変換する
ことができます。
また、Psych::Visitors::YAMLTree.new に渡して Ruby オブジェクト
を YAML AST に変換することもできます。
=== Example
parser = Psych::Parser.new Psych::Tree......Builder.new
parser.parse('--- foo')
parser.handler.root # => #<Psych::Nodes::Stream:0x00000001400000 ... >... -
Psych
:: Nodes :: Node # tag -> String | nil (9043.0) -
ノードに付加されたタグを返します。
...ノードに付加されたタグを返します。
タグが付加されていない場合は nil を返します。
ast = Psych.parse(<<EOS)
---
- !!str a
- b
EOS
p ast.root.children[0].value # => "a"
p ast.root.children[0].tag # => "tag:yaml.org,2002:str"
p ast.root.ch...