Skip to main content

remove-method

Generic Function REMOVE-METHOD

Syntax:

remove-method generic-function method => generic-function

Arguments and values:

generic-function -- A generic function metaobject.

method -- A method metaobject.

Description:

This generic function breaks the association between a generic function and one of its methods.

No error is signaled if the method is not among the methods of the generic function.

Breaking the association between the method and the generic function proceeds in four steps:

  1. remove method from the set returned bygeneric-function-methods and arrange for method-generic-function to return nil;
  2. call remove-direct-method for each of the method's specializers;
  3. call compute-discriminating-function and install its result with set-funcallable-instance-function; and
  4. update the dependents of the generic function.

The generic function remove-method can be called by the user or the implementation.

Methods:


remove-method (generic-function standard-generic-function) (method standard-method)