# File lib/dm-core/types/discriminator.rb, line 9
      def self.bind(property)
        model = property.model

        model.class_eval "def self.descendants\n(@descendants ||= []).uniq!\n@descendants\nend\n\nafter_class_method :inherited, :add_scope_for_discriminator\n\ndef self.add_scope_for_discriminator(retval, target)\ntarget.descendants << target\ntarget.default_scope.update(\#{property.name.inspect} => target.descendants)\npropagate_descendants(target)\nend\n\ndef self.propagate_descendants(target)\ndescendants << target\nsuperclass.propagate_descendants(target) if superclass.respond_to?(:propagate_descendants)\nend\n", __FILE__, __LINE__
      end