I was trying to make a custom module class, which would have provided its own :DEFAULT-COMPONENT-CLASS via :DEFAULT-INITARGS, but
(setf (module-default-component-class ret) (or default-component-class (and (typep parent 'module) (module-default-component-class parent))))
means that does work as I hoped it would. The closest I can get is by overriding ASDF::MODULE-DEFAULT-COMPONENT-CLASS method, but that seems fairly icky.
Is there a better way?
Cheers,
-- Nikodemus
On Mon, May 7, 2012 at 12:22 AM, Nikodemus Siivola nikodemus@random-state.net wrote:
I was trying to make a custom module class, which would have provided its own :DEFAULT-COMPONENT-CLASS via :DEFAULT-INITARGS, but
(setf (module-default-component-class ret) (or default-component-class (and (typep parent 'module) (module-default-component-class parent))))
means that does work as I hoped it would. The closest I can get is by overriding ASDF::MODULE-DEFAULT-COMPONENT-CLASS method, but that seems fairly icky.
Is there a better way?
ASDF has been using the more traditional method (however arguably less flexible) of specifying default values via initform.
So, in your module class's defclass, use (default-component-class :initform 'my-component-class)
Does that do what you want?
—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org Don't ask me to fix your computer. I'm a software engineer; I break computers. — Mark Pauley