Package: closer-mop

Generic Function compute-effective-method

Lambda List

compute-effective-method (generic-function combin applicable-methods)


The generic-function argument is a generic function metaobject.
The method-combination argument is a method combination metaobject.
The methods argument is a list of method metaobjects.

Return Value

This generic function returns two values. The first is an effective method, the second is a list of effective method options.


This generic function is called to determine the effective method from a sorted list of method metaobjects.

An effective method is a form that describes how the applicable methods are to be combined. Inside of effective method forms are call-method forms which indicate that a particular method is to be called. The arguments to the call-method form indicate exactly how the method function of the method should be called. (See make-method-lambda for more details about method functions.)

An effective method option has the same interpretation and syntax as either the :arguments or the {:generic-function option in the long form of define-method-combination.

More information about the form and interpretation of effective methods and effective method options can be found under the description of the define-method-combination macro in the CLOS specification.

This generic function can be called by the user or the implementation. It is called by discriminating functions whenever a sorted list of applicable methods must be converted to an effective method.


compute-effective-method ((generic-function standard-generic-function) method-combination methods)
This method computes the effective method according to the rules of the method combination type implemented by method-combination.

This method can be overridden.