類別 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