cmucl support
Tue Apr 7 11:49:04 CEST 2009 Tobias Rautenkranz <tobias@rautenkranz.ch>
* cmucl support
diff -rN -u old-smoke/src/clos.lisp new-smoke/src/clos.lisp
--- old-smoke/src/clos.lisp 2014-10-01 12:22:10.000000000 +0200
+++ new-smoke/src/clos.lisp 2014-10-01 12:22:10.000000000 +0200
@@ -232,8 +232,8 @@
'(class &rest args)
'(object &rest args)))
-(defclass smoke-gf (standard-generic-function smoke-method)
- ()
+(defclass smoke-gf (standard-generic-function)
+ ((cxx-name :reader name :initarg :cxx-name))
(:metaclass closer-mop:funcallable-standard-class)
(:documentation "Smoke generic function"))
diff -rN -u old-smoke/src/method.lisp new-smoke/src/method.lisp
--- old-smoke/src/method.lisp 2014-10-01 12:22:10.000000000 +0200
+++ new-smoke/src/method.lisp 2014-10-01 12:22:10.000000000 +0200
@@ -74,16 +74,15 @@
hash-table)
list))
-(defun ensure-generic-methods (names-and-ids smoke)
- "Ensures the generic functions in NAMES-AND-IDS for the Smoke module SMOKE."
- (dolist (name-id names-and-ids)
- (ensure-generic-function (first name-id)
- :id (rest name-id)
- :smoke smoke
+(defun ensure-generic-methods (symbols-names)
+ "Ensures the generic functions for SYMBOLS-NAMES."
+ (dolist (symbol-name symbols-names)
+ (ensure-generic-function (first symbol-name)
+ :cxx-name (rest symbol-name)
:generic-function-class 'smoke-gf
:lambda-list '(object &rest args))
- (export (first name-id) :CXX)))
+ (export (first symbol-name) :CXX)))
(defmacro check-recompile (smoke)
"Raises an error when the fasl of the DEFINE-METHOS was not compiled against
@@ -123,7 +122,7 @@
(not (eql nil (name method)))
(string/= (name method) "tr")) ;; we have a custom qt:tr funciton
(setf (gethash (lispify (name method) "CXX") generics)
- (id method))
+ (name method))
(when (static-p method)
(let ((function-symbol (static-method-symbol method)))
(unless (nth-value 1 (gethash function-symbol function-symbols))
@@ -135,7 +134,7 @@
`(progn (check-recompile ,smoke)
,@functions
(eval-when (:load-toplevel)
- (ensure-generic-methods ',(hash-table-key-values generics) ,smoke)
+ (ensure-generic-methods ',(hash-table-key-values generics))
(make-smoke-classes ,smoke)
)
,@constants