X-Git-Url: http://git.kpe.io/?p=clsql.git;a=blobdiff_plain;f=sql%2Fmetaclasses.lisp;h=6ee6d4d062062c536035f297e5a1d337e4b194e3;hp=530c674c55f6f7da589180bc618d731b0aa283bb;hb=6bee16be3f891067ae8fe1a67e13b39e8ee72598;hpb=7b96c12a4e3f3d005d4b01f0a543578333e71ecb diff --git a/sql/metaclasses.lisp b/sql/metaclasses.lisp index 530c674..6ee6d4d 100644 --- a/sql/metaclasses.lisp +++ b/sql/metaclasses.lisp @@ -314,7 +314,13 @@ column definition in the database.") :accessor specified-type :initarg specified-type :initform nil - :documentation "Internal slot storing the :type specified by user."))) + :documentation "Internal slot storing the :type specified by user.") + (autoincrement-sequence + :accessor view-class-slot-autoincrement-sequence + :initarg :autoincrement-sequence + :initform nil + :documentation "A string naming the (possibly automatically generated) sequence +for a slot with an :auto-increment constraint."))) (defparameter *db-info-lambda-list* '(&key join-class @@ -526,6 +532,14 @@ implementations." (setf (specified-type esd) (delistify-dsd (specified-type dsd))) + ;; In older SBCL's the type-check-function is computed at + ;; defclass expansion, which is too early for the CLSQL type + ;; conversion to take place. This gets rid of it. It's ugly + ;; but it's better than nothing -wcp10/4/10. + #+(and sbcl #.(cl:if (cl:and (cl:find-package :sb-pcl) + (cl:find-symbol "%TYPE-CHECK-FUNCTION" :sb-pcl)) + '(cl:and) '(cl:or))) + (setf (slot-value esd 'sb-pcl::%type-check-function) nil) ) ;; all other slots