Static methods do not depend on an object instance, but instead
operate on a class. You can create a static method by using
the subclass
specializer with cl-defmethod
:
(cl-defmethod make-instance ((class (subclass mychild)) &rest args) (let ((new (cl-call-next-method))) (push new all-my-children) new))
The argument of a static method will be a class rather than an object.
Use the functions oref-default
or oset-default
which
will work on a class.
A class’s make-instance
method is defined as a static
method.
Note: The subclass
specializer is unique to EIEIO.