MOP Generic Functions¶
The MOP is itself implemented using generic functions and the class slot from each instance.
Initialization¶
- generic object/initialize inst initargs¶
Initialize the instance inst from initargs.
initialize
is called from make-instance.The following methods are defined:
(<method> <top>)
(<generic> <top>)
(<class> <top>)
(<object> <top>)
Instance Structure¶
- generic object/allocate-instance cl¶
Allocate space for an instance of class cl.
allocate-instance
is called from make-instance.The following methods are defined:
(<entity-class>)
(<class>)
- generic object/compute-getter-and-setter cl slot allocator¶
Compute the getter and setter information for slot slot in class cl using allocator allocator.
The following method is defined:
(<class> <top> <top>)
Class Initialization¶
- generic object/compute-cpl cl¶
Determine the class precedence list from the super-classes.
The following method is defined:
(<class>)
- generic object/compute-slots cl¶
Determine the actual class slots from the direct and inherited slots.
The following method is defined:
(<class>)
Generic Invocation¶
- generic object/compute-apply-generic gf¶
Return a function to be used as the instance proc for generic gf.
The function takes any number of arguments and calls compute-methods and compute-apply-methods.
The following method is defined:
(<generic>)
- generic object/compute-methods gf¶
Return a function to be used to calculate the sorted list of methods given the generic function’s arguments.
The function calls compute-method-more-specific?.
The following method is defined:
(<generic>)
- generic object/compute-method-more-specific? gf¶
Return a function to be used to sort methods by their specializers.
The following method is defined:
(<generic>)
- generic object/compute-apply-methods gf¶
Return a function to be used to call the method-procedure for the sorted list of applicable methods determined previously.
The function takes a list of methods and the generic function’s arguments.
The following method is defined:
(<generic>)
Last built at 2024-12-21T07:10:36Z+0000 from 62cca4c (dev) for Idio 0.3.b.6