class Psych::Stream

Psych::Stream 是一个流式 YAML 发射器。它不会缓冲您的 YAML,而是直接发送到 IO

以下是一个使用示例

stream = Psych::Stream.new($stdout)
stream.start
stream.push({:foo => 'bar'})
stream.finish

YAML 将会立即发送到 $stdout,没有缓冲。

Psych::Stream#start 将接受一个块,并确保调用 Psych::Stream#finish,因此您可以这样做:

stream = Psych::Stream.new($stdout)
stream.start do |em|
  em.push(:foo => 'bar')
end