YAML::Stream — for emitting many documents
[Source]
# File yaml/stream.rb, line 10 def initialize( opts = {} ) @options = opts @documents = [] end
# File yaml/stream.rb, line 15 def []( i ) @documents[ i ] end
# File yaml/stream.rb, line 19 def add( doc ) @documents << doc end
# File yaml/stream.rb, line 23 def edit( doc_num, doc ) @documents[ doc_num ] = doc end
# File yaml/stream.rb, line 27 def emit opts = @options.dup opts[:UseHeader] = true if @documents.length > 1 ct = 0 out = YAML::Syck::Emitter.new( opts ) @documents.each { |v| if ct > 0 out << "\n--- " end v.to_yaml( :Emitter => out ) ct += 1 } out.end_object end
[Validate]