# File lib/dm-core/collection.rb, line 911
    def destroy!
      repository = self.repository
      deleted    = repository.delete(self)

      if loaded?
        unless deleted == size
          return false
        end

        each do |resource|
          resource.persisted_state = Resource::State::Immutable.new(resource)
        end

        clear
      else
        mark_loaded
      end

      true
    end