From: Marcus Pearce Date: Fri, 16 Jul 2004 14:51:39 +0000 (+0000) Subject: r9797: * sql/oodml.lisp: on Lispworks, use weak valued hash tables for X-Git-Tag: v3.8.6~271 X-Git-Url: http://git.kpe.io/?p=clsql.git;a=commitdiff_plain;h=c4e1422d93b72c1ab1be5c913c48860b1f4e39e2 r9797: * sql/oodml.lisp: on Lispworks, use weak valued hash tables for object caching. * sql/expressions.lisp: Fix SQL generation for the symbol NIL. --- diff --git a/ChangeLog b/ChangeLog index fe3f1d2..933a542 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +16 Jul 2004 Marcus Pearce + * sql/oodml.lisp: on Lispworks, use weak valued hash tables for + object caching. + * sql/expressions.lisp: Fix SQL generation for the symbol NIL. + 16 Jul 2004 Marcus Pearce * sql/expressions.lisp: reactivate caching of generated SQL strings. Move methods for DATABASE-OUTPUT-SQL, OUTPUT-SQL and SQL-HASH-KEY diff --git a/sql/expressions.lisp b/sql/expressions.lisp index 2f40e33..7f0ad1f 100644 --- a/sql/expressions.lisp +++ b/sql/expressions.lisp @@ -859,11 +859,13 @@ uninclusive, and the args from that keyword to the end." (let ((keyword-package (symbol-package :foo))) (defmethod database-output-sql ((sym symbol) database) - (convert-to-db-default-case - (if (equal (symbol-package sym) keyword-package) - (concatenate 'string "'" (string sym) "'") - (symbol-name sym)) - database))) + (if (null sym) + +null-string+ + (convert-to-db-default-case + (if (equal (symbol-package sym) keyword-package) + (concatenate 'string "'" (string sym) "'") + (symbol-name sym)) + database)))) (defmethod database-output-sql ((tee (eql t)) database) (declare (ignore database)) diff --git a/sql/oodml.lisp b/sql/oodml.lisp index 78fd886..174b35a 100644 --- a/sql/oodml.lisp +++ b/sql/oodml.lisp @@ -1097,7 +1097,8 @@ as elements of a list." (unless (record-caches database) (setf (record-caches database) (make-hash-table :test 'equal - #+allegro :values #+allegro :weak))) + #+allegro :values #+allegro :weak + #+lispworks :weak-kind #+lispworks :value))) (setf (gethash (compute-records-cache-key targets qualifiers) (record-caches database)) results) results)