type=class
superclass=Psych=Handler
included=
extended=
dynamically_included=
dynamically_extended=
library=psych
aliases=
aliasof=

[[c:Psych::Parser]] でパースし、生じたイベントから 
YAML ドキュメントを再構築するようなハンドラです。

以下の例では STDIN から YAML ドキュメントを入力し、
再構築した YAML ドキュメントを STDERR に出力します。

  parser = Psych::Parser.new(Psych::Emitter.new($stderr))
  parser.parse($stdin)

また、以下のようにイベントを手動で発生させることで
YAML ドキュメントを構築させることもできます。
各メソッドの意味については [[c:Psych::Handler]] を参照してください。
  require 'psych'
  require 'stringio'
  
  output = 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)
  emitter.scalar("12", nil, nil, true, false, Psych::Nodes::Scalar::PLAIN)
  emitter.scalar("xyz", nil, nil, true, false, Psych::Nodes::Scalar::PLAIN)
  emitter.scalar("23", nil, nil, false, true, Psych::Nodes::Scalar::SINGLE_QUOTED)
  emitter.end_mapping
  emitter.end_document(false)
  emitter.end_stream
  
  puts output.string
  # =>
  # %YAML 1.1
  # ---
  # a: 12
  # xyz: '23'
  # ...
