File: //proc/self/root/usr/lib/ruby/site_ruby/1.8/puppet/vendor/rgen/lib/rgen/util/model_dumper.rb
module RGen
module Util
module ModelDumper
def dump(obj=nil)
obj ||= self
if obj.is_a?(Array)
obj.collect {|o| dump(o)}.join("\n\n")
elsif obj.class.respond_to?(:ecore)
([obj.to_s] +
obj.class.ecore.eAllStructuralFeatures.select{|f| !f.many}.collect { |a|
" #{a} => #{obj.getGeneric(a.name)}"
} +
obj.class.ecore.eAllStructuralFeatures.select{|f| f.many}.collect { |a|
" #{a} => [ #{obj.getGeneric(a.name).join(', ')} ]"
}).join("\n")
else
obj.to_s
end
end
end
end
end