# File lib/rgen/util/model_comparator_base.rb, line 78
        def compareElements(a, b)
                result = []
                if a.class != b.class
                        result << "Class: #{a.class} -> #{b.class}"
                else
                        a.class.ecore.eAllStructuralFeatures.reject{|f| f.derived || compareSpec(a).andand.ignore_features.andand.include?(f.name.to_sym)}.each do |f|
                                va, vb = a.getGeneric(f.name), b.getGeneric(f.name)
                                if f.is_a?(RGen::ECore::EAttribute)
                                        r = compareValues(f.name, va, vb)
                                        result << r if r
                                else
                                        va, vb = [va].compact, [vb].compact unless f.many
                                        r = compare(va, vb, f.containment || compareSpec(a).andand.recurse.andand.include?(f.name.to_sym))
                                        if r.size > 0
                                                result << "[#{f.name}]"
                                                result += r.collect{|l| INDENT+l}
                                        end
                                end 
                        end
                end
                result
        end