类 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