Port changes of generalization of old mysql-specific autoincrement support.
[clsql.git] / sql / metaclasses.lisp
index 331e35a01966221026571780190544bc492431db..20645de7dd7865dc8406dd68fae2e72ec76958e6 100644 (file)
@@ -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,11 +532,12 @@ implementations."
 
          (setf (specified-type esd)
                (delistify-dsd (specified-type dsd)))
-        ;; 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.
-        #+sbcl (setf (slot-value esd 'sb-pcl::%type-check-function) nil)
+         ;; 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:find-symbol "%TYPE-CHECK-FUNCTION" :sb-pcl) '(and) '(or)))
+         (setf (slot-value esd 'sb-pcl::%type-check-function) nil)
 
          )
         ;; all other slots