Method: (RUCKSACK-REMOVE-CLASS-INDEX STANDARD-RUCKSACK T)

Source

(defmethod rucksack-remove-class-index ((rucksack standard-rucksack) class
                                        &key (errorp nil))
  (unless (symbolp class)
    (setq class (class-name class)))
  (handler-bind ((btree-deletion-error
                  ;; Translate a btree error to something that makes more sense
                  ;; in this context.
                  (lambda (error)
                    (declare (ignore error))
                    (simple-rucksack-error "Class index for ~S doesn't exist in ~A."
                                           class
                                           rucksack))))
    (btree-delete-key (class-index-table rucksack) class
                      :if-does-not-exist (if errorp :error :ignore))))
Source Context