X-Git-Url: http://christophe.rhodes.io/gitweb/?p=specializable.git;a=blobdiff_plain;f=cons-specializer.lisp;h=0c834f20958bd1f8af5899bb924b0d7c6b79dfd7;hp=70529d4ae4d4709df38d020a6b17183588d9787e;hb=82c321875745956a207997994b4916614b22616e;hpb=e1e0b8430d014241bdd7658b9795fae56c20b49a diff --git a/cons-specializer.lisp b/cons-specializer.lisp index 70529d4..0c834f2 100644 --- a/cons-specializer.lisp +++ b/cons-specializer.lisp @@ -1,3 +1,5 @@ +(in-package "SPECIALIZABLE") + ;;;; CONS-SPECIALIZER example (defclass cons-specializer (extended-specializer) ((car :initarg :car :reader %car))) @@ -35,7 +37,8 @@ (eql (car obj) (%car specializer)))) ;;; but this one does: it doesn't look like it here, but at issue is ;;; who is responsible for the SPECIALIZER< method for two distinct -;;; user-defined specializers. +;;; user-defined specializers. Also consider a symbol generalizer +;;; being used to compare two class specializers. (defmethod specializer< ((s1 cons-specializer) (s2 cons-specializer) generalizer) (declare (ignore generalizer)) (if (eql (%car s1) (%car s2))