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

      if loaded?
        unless deleted == size
          return false
        end

        each do |resource|
          resource.persistence_state = Resource::PersistenceState::Immutable.new(resource)
        end

        clear
      else
        mark_loaded
      end

      true
    end