module YAMLRepro

Public Class Methods

dump(data_root, io=nil, options={}) click to toggle source
# File lib/xmigra.rb, line 148
def self.dump(data_root, io=nil, options={})
  real_io = io || StringIO.new(''.encode('utf-8'))
  visitor = YAMLTree.new(options, TreeBuilder.new)
  visitor << data_root
  ast = visitor.tree
  
  begin
    ast.yaml real_io
  rescue
    Psych::Visitors::Emitter.new(real_io).accept ast
  end
  
  io || real_io.string
end